Code_Saturne
CFD tool
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
cs_ctwr.h
Go to the documentation of this file.
1 #ifndef __CS_CTWR_H__
2 #define __CS_CTWR_H__
3 
4 /*============================================================================
5  * Main for cooling towers related functions
6  *============================================================================*/
7 
8 /*
9  This file is part of Code_Saturne, a general-purpose CFD tool.
10 
11  Copyright (C) 1998-2012 EDF S.A.
12 
13  This program is free software; you can redistribute it and/or modify it under
14  the terms of the GNU General Public License as published by the Free Software
15  Foundation; either version 2 of the License, or (at your option) any later
16  version.
17 
18  This program is distributed in the hope that it will be useful, but WITHOUT
19  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
20  FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
21  details.
22 
23  You should have received a copy of the GNU General Public License along with
24  this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
25  Street, Fifth Floor, Boston, MA 02110-1301, USA.
26 */
27 
28 /*----------------------------------------------------------------------------*/
29 
30 /*----------------------------------------------------------------------------
31  * FVM library headers
32  *----------------------------------------------------------------------------*/
33 
34 #include <fvm_nodal.h>
35 
36 /*----------------------------------------------------------------------------
37  * PLE library headers
38  *----------------------------------------------------------------------------*/
39 
40 #include <ple_locator.h>
41 
42 /*----------------------------------------------------------------------------
43  * Local headers
44  *----------------------------------------------------------------------------*/
45 
46 #include "cs_base.h"
47 #include "cs_halo.h"
48 #include "cs_mesh.h"
49 #include "cs_mesh_quantities.h"
50 
51 /*----------------------------------------------------------------------------*/
52 
54 
55 /*============================================================================
56  * Local Macro definitions
57  *============================================================================*/
58 
59 /*============================================================================
60  * Type definitions
61  *============================================================================*/
62 
64 
65 
66 /* Cooling tower exchange zone structure definition */
67 /*--------------------------------------------------*/
68 
70 
71  int idimct; /* Problem dimension (2 or 3) */
72  int num; /* Exchange zone number */
73  char *ze_name; /* Exchange zone elements name */
74  int imctch; /* 0: None; 1: Poppe's model; 2: Merkel's model */
75  int ntypct; /* 1: Counter currents; 2: Crossed-currents;
76  3: Rain zone */
77  int nelect; /* Number of nodes on each vertical mesh for
78  the water mesh */
79 
80  cs_real_t hmin; /* Minimum vertical height of exchange zone */
81  cs_real_t hmax; /* Maximum height of exchange zone */
82  cs_real_t deltat; /* Temperature delta required for exchange zone */
83 
84  cs_real_t cl_teau; /* Water entry temperature */
85  cs_real_t cl_fem; /* Water flow */
86 
87  cs_real_t xap; /* Exchange law lambda coefficient */
88  cs_real_t xnp; /* Exchange law n exponent */
89 
90  cs_real_t surface_in; /* Water inlet surface */
91  cs_real_t surface_out; /* Water outlet surface */
92  cs_real_t surface; /* Total surface */
93 
94  cs_int_t nnpsct; /* Number of points on top face */
95 
96  cs_int_t nbfac_sct; /* Number of top "interior faces" */
97  cs_int_t nbfac_ict; /* Number of bottom "interior faces" */
98  cs_int_t nbfac_lct; /* Number of lateral "interior faces" */
99  cs_int_t nbfac_ct; /* Number of inside "interior faces" */
100  cs_int_t nbfbr_sct; /* Number of top "boundary faces" */
101  cs_int_t nbfbr_ict; /* Number of bottom "boundary faces" */
102  cs_int_t nbfbr_lct; /* Number of lateral "boundary faces" */
103 
104  cs_int_t nbevct; /* Number of air cells belonging to the zone */
105 
106  cs_int_t id_amont; /* Number of upstream exchange zone (if any) */
107 
108  fvm_nodal_t *face_sup_mesh; /* Nodal Mesh of the zone's top faces */
109  fvm_nodal_t *face_inf_mesh; /* Nodal mesh of the zone's bottom faces */
110  fvm_nodal_t *face_lat_mesh; /* Nodal mesh of the zone's lateral faces */
111  fvm_nodal_t *cell_mesh; /* Nodal mesh of cells in the zone */
112  fvm_nodal_t *fac_mesh; /* Nodal mesh of internal faces in the zone */
113 
114  fvm_nodal_t *water_mesh; /* Nodal mesh of water in the exchange area */
115 
116  cs_int_t *ze_cell_list; /* List of cells of ct criteria */
117  cs_int_t *voiseau; /* List of water neighbors of air cells */
118  cs_int_t *pvoiseau; /* Positions in the list of water neighbors */
119  cs_int_t *voisair; /* List of air neighbors of water points */
120  cs_int_t *pvoisair; /* Positions in the list of air neighbors */
121  cs_int_t *mark_ze; /* Cell marker for ct */
122 
123  cs_int_t *fac_sup_connect_idx; /* Top faces point connectivity index */
124  cs_int_t *fac_sup_connect_lst; /* Top faces point connectivity */
125 
126  cs_real_t *surf_fac_sup; /* Top faces surfaces */
127 
128  cs_real_t *coefeau; /* Water -> air interpolation coefficients */
129  cs_real_t *coefair; /* Air -> water interpolation coefficients */
130 
131  cs_real_t *teau; /* Water temperature field */
132  cs_real_t *fem; /* Water flow field */
133  cs_real_t *vgoutte; /* Water drop velocity field (rain zones) */
134 
135  cs_real_t fem_e; /* Water entry flow */
136  cs_real_t fem_s; /* Water exit flow */
137  cs_real_t teau_e; /* Mean water entry temperature */
138  cs_real_t teau_s; /* Mean water exit temperature */
139  cs_real_t heau_e; /* Mean water entry enthalpy */
140  cs_real_t heau_s; /* Mean water exit enthalpy */
141  cs_real_t tair_e; /* Mean air entry temperature */
142  cs_real_t tair_s; /* Mean air exit temperature */
143  cs_real_t xair_e; /* Mean air entry humidity */
144  cs_real_t xair_s; /* Mean air exit humidity */
145  cs_real_t hair_e; /* Mean air entry enthalpy */
146  cs_real_t hair_s; /* Mean air exit enthalpy */
147  cs_real_t debit_e; /* Air entry flow */
148  cs_real_t debit_s; /* Air exit flow */
149 
150  cs_real_t dgout; /* Drop diameter for rain zones */
151 
152  ple_locator_t *locat_air_water; /* Locator water -> air interpolation */
153  ple_locator_t *locat_water_air; /* Locator for air -> water interpolation */
154  ple_locator_t * *locat_cell_ct_upwind;
155 
156  cs_int_t post_mesh_id; /* 0 if post-processing is not active,
157  mesh_id if post-processing is active */
158 
159  /* Parallelism and/or periodic features */
160 
161  cs_halo_type_t halo_type; /* Halo type */
162 
163  cs_int_t *cs_array_rank; /* Array of process ranks which
164  have an exchange area */
165  cs_int_t nnpsct_with_ghosts; /* Total number of water nodes
166  (nnpsct + n_ghost_wcells) */
167 
168  cs_halo_t *water_halo; /* Structure used to manage ghost cells */
169 
170 };
171 
172 /*============================================================================
173  * Static global variables
174  *============================================================================*/
175 
176 /* array of exchanges area */
177 
178 
180 extern cs_int_t cs_glob_ct_nbr;
182 
183 /* array containing the stacking of the exchange area*/
184 extern cs_int_t * cs_stack_ct;
185 
186 /* array containing the treatment order of the exchanges areas */
187 extern cs_int_t * cs_chain_ct;
188 
189 /*============================================================================
190  * Public function prototypes for Fortran API
191  *============================================================================*/
192 
193 /*----------------------------------------------------------------------------
194  * Define an exchange zone
195  *
196  * Fortran interface:
197  *
198  * SUBROUTINE DEFCT1
199  * *****************
200  *
201  * INTEGER IDIMCT : --> : problem dimension (2 or 3)
202  * INTEGER IMCTCH : --> : 1: Poppe's Model; 2: Merkel's model
203  * INTEGER NTYPCT : --> : 1: Counter-currents
204  * : : 2: Crossed-currents
205  * : : 3: Rain zones
206  * INTEGER NELECT : --> : number of nodes on each water line
207  * : : (i.e. vertical resolution)
208  * DOUBLE PRECISION DELTAT : --> : imposed water infow/outflow
209  * : --> : temperature delta
210  * DOUBLE PRECISION TEAU : --> : water inlet mean temperature
211  * DOUBLE PRECISION FEM : --> : water inlet flow
212  * DOUBLE PRECISION XAP : --> : exchange law lambda coeffcient
213  * DOUBLE PRECISION XNP : --> : exchange law n exponent
214  * DOUBLE PRECISION DGOUT : --> : drop diameter for rain zones
215  *----------------------------------------------------------------------------*/
216 
217 void CS_PROCF (defct1, DEFCT1)
218 (
219  const cs_int_t *idimct,
220  const char *zecrit,
221  cs_int_t *ze_n_len,
222  const cs_int_t *imctch,
223  const cs_int_t *ntypct,
224  const cs_int_t *nelect,
225  const cs_real_t *deltat,
226  const cs_real_t *teau,
227  const cs_real_t *fem,
228  const cs_real_t *xap,
229  const cs_real_t *xnp,
230  const cs_real_t *surface,
231  const cs_real_t *dgout
232 );
233 
234 /*----------------------------------------------------------------------------
235  * Get number of cooling tower exchange zones.
236  *
237  * Fortran interface:
238  *
239  * SUBROUTINE NBZECT
240  * *****************
241  *
242  * INTEGER NBRCTZ : --> : number of exchange zones
243  *----------------------------------------------------------------------------*/
244 
245 void CS_PROCF (nbzect, NBZECT)
246 (
247  cs_int_t *nbrctz
248 );
249 
250 /*----------------------------------------------------------------------------
251  * Indicate if the cooling tower model used is that of Poppe or Merkel.
252  *
253  * Fortran interface:
254  *
255  * SUBROUTINE AEMODE
256  * *****************
257  *
258  * INTEGER IMCTCH : --> : model type (1: Poppe; 2: Merkel)
259  *----------------------------------------------------------------------------*/
260 
261 void CS_PROCF (aemode, AEMODE)
262 (
263  cs_int_t *imctch
264 );
265 
266 /*----------------------------------------------------------------------------
267  * Add a constant to the temperature vector for all exchange zones.
268  *
269  * Fortran interface:
270  *
271  * SUBROUTINE AEPROT
272  * *****************
273  *
274  * DOUBLE PRECISION DELTA : --> : type de ct (Poppe ou Merkel)
275  *----------------------------------------------------------------------------*/
276 
277 void CS_PROCF (aeprot, AEPROT)
278 (
279  cs_real_t *delta
280 );
281 
282 /*----------------------------------------------------------------------------
283  * Resolution of water variables
284  *
285  * Fortran interface:
286  *
287  * SUBROUTINE AETEAU ( )
288  *
289  * DOUBLE PRECISION TEMP(*) : --> : air temperature
290  * DOUBLE PRECISION XA(*) : --> : air humidity
291  * DOUBLE PRECISION RHO(*) : --> : air density
292  * DOUBLE PRECISION VITX(*) : --> : air velocity component (x)
293  * DOUBLE PRECISION VITY(*) : --> : air velocity component (y)
294  * DOUBLE PRECISION VITZ(*) : --> : air velocity component (z)
295  * DOUBLE PRECISION GX : --> : gravity component x
296  * DOUBLE PRECISION GY : --> : gravity component y
297  * DOUBLE PRECISION GZ : --> : gravity component z
298  *----------------------------------------------------------------------------*/
299 
300 void CS_PROCF (aeteau, AETEAU)
301 (
302  cs_real_t temp[],
303  cs_real_t xa[],
304  cs_real_t rho[],
305  cs_real_t vitx[],
306  cs_real_t vity[],
307  cs_real_t vitz[]
308 );
309 
310 /*----------------------------------------------------------------------------
311  * Calculation of source terms for air equations
312  *
313  * Fortran interface:
314  *
315  * SUBROUTINE AETSSC
316  * *****************
317  *
318  * INTEGER ISCAL : : scalar number
319  * DOUBLE PRECISION TEMP : : air temperature
320  * DOUBLE PRECISION XA : : air humidity
321  * DOUBLE PRECISION RHO : : air density
322  * DOUBLE PRECISION UTSIM : : implicite source term
323  * DOUBLE PRECISION UTSEX : : explicite source term
324  * DOUBLE PRECISION VITX : : air velocity along x
325  * DOUBLE PRECISION VITY : : air velocity along y
326  * DOUBLE PRECISION VITZ : : air velocity along z
327  * DOUBLE PRECISION GX : : x component of the gravity vector
328  * DOUBLE PRECISION GY : : y component of the gravity vector
329  * DOUBLE PRECISION GZ : : z component of the gravity vector
330  *----------------------------------------------------------------------------*/
331 
332 void CS_PROCF (aetssc, AETSSC)
333 (
334  const cs_int_t *iscal,
335  cs_real_t temp[],
336  cs_real_t xa[],
337  cs_real_t rho[],
338  cs_real_t utsim[],
339  cs_real_t utsex[],
340  cs_real_t vitx[],
341  cs_real_t vity[],
342  cs_real_t vitz[]
343 );
344 
345 /*----------------------------------------------------------------------------
346  * Calculation of induced head loss in rain zones
347  *
348  * Fortran interface:
349  *
350  * SUBROUTINE AETSVI
351  * *****************
352  *----------------------------------------------------------------------------*/
353 
354 void CS_PROCF (aetsvi, AETSVI)
355 (
356  const cs_int_t *const idim,
357  const cs_real_t rho[], /* masse volumique air */
358  const cs_real_t vitx[], /* vitesse air suivant x */
359  const cs_real_t vity[], /* vitesse air suivant y */
360  const cs_real_t vitz[], /* vitesse air suivant z */
361  const cs_real_t xair[], /* humidite de l'air */
362  cs_real_t utsex[] /* terme source explicite */
363 );
364 
365 /*----------------------------------------------------------------------------
366  * Bilan dans les ct
367  *
368  * Fortran interface:
369  *
370  * Interface Fortran :
371  *
372  * SUBROUTINE BILANct ( )
373  *----------------------------------------------------------------------------*/
374 
375 void CS_PROCF (bilanct, BILANCT)
376 (
377  const cs_real_t *const time,
378  cs_real_t fem_entree[], /* debit eau entree */
379  cs_real_t fem_sortie[], /* debit eau sortie */
380  cs_real_t teau_entree[], /* temperature eau entree */
381  cs_real_t teau_sortie[], /* temperature eau sortie */
382  cs_real_t heau_entree[], /* enthalpie eau entree */
383  cs_real_t heau_sortie[], /* enthalpie eau sortie */
384  cs_real_t tair_entree[], /* temperature air entree */
385  cs_real_t tair_sortie[], /* temperature air sortie */
386  cs_real_t xair_entree[], /* */
387  cs_real_t xair_sortie[], /* */
388  cs_real_t hair_entree[], /* */
389  cs_real_t hair_sortie[], /* */
390  cs_real_t debit_entree[], /* */
391  cs_real_t debit_sortie[], /* */
392 
393  const cs_real_t temp[], /* Temperature air */
394  const cs_real_t xa[], /* humidite air */
395  const cs_real_t flux_masse_fac[], /* vitesse verticale air */
396  const cs_real_t flux_masse_fbr[], /* vitesse horizontale air */
397  const cs_real_t vitx[], /* vitesse air suivant x */
398  const cs_real_t vity[], /* vitesse air suivant y */
399  const cs_real_t vitz[] /* vitesse air suivant z */
400 );
401 
402 /*----------------------------------------------------------------------------
403  * Initialize post processing.
404  *
405  * Fortran interface:
406  *
407  * Fortran Interface:
408  *
409  * SUBROUTINE PSTICT
410  * *****************
411  *----------------------------------------------------------------------------*/
412 
413 void CS_PROCF(pstict, PSTICT)
414 (
415  void
416 );
417 
418 /*----------------------------------------------------------------------------
419  * Write the restart file of the cooling tower module
420  *
421  * Fortran interface:
422  *
423  * SUBROUTINE LECT1D
424  * *****************
425  *
426  * CHARACTER NOMSUI : <-- : Name of the restart file
427  * INTEGER LNGNOM : <-- : Name length
428  *----------------------------------------------------------------------------*/
429 
430 void CS_PROCF (ecrctw, ECRCTW)
431 (
432  const char *const nomsui,
433  const cs_int_t *const lngnom
434 );
435 
436 /*----------------------------------------------------------------------------
437  * Read the restart file of the cooling tower module
438  *
439  * Fortran interface:
440  *
441  * SUBROUTINE LECT1D
442  * *****************
443  *
444  * CHARACTER NOMSUI : <-- : Name of the restart file
445  * INTEGER LNGNOM : <-- : Name length
446  *----------------------------------------------------------------------------*/
447 
448 void CS_PROCF (lecctw, LECCTW)
449 (
450  const char *const nomsui,
451  const cs_int_t *const lngnom
452 );
453 
454 /*============================================================================
455  * Public function definitions
456  *============================================================================*/
457 
458 /*----------------------------------------------------------------------------
459  * Definition d'une zone d'echange (qui est ajoute a celles deja definies)
460  *----------------------------------------------------------------------------*/
461 
462 void cs_ctwr_definit
463 (
464  const cs_int_t idimct, /* Dimemsion du probleme 2:2D 3:3D */
465  const char *ze_crit, /* Critere de selection */
466  const cs_int_t imctch, /* 1: Modele de Poppe
467  2: Merkel
468  0: Rien */
469  const cs_int_t ntypct, /* 1: Contre courant
470  2: Courant croises
471  3: Zone de pluie */
472  const cs_int_t nelect, /* Nombre d'elements sur chaque ligne
473  du maillage eau pour la zone de
474  noeuds par segment eau */
475  const cs_real_t deltat, /* Ecart de temperature impose en entree
476  de la zone d'echange */
477  const cs_real_t teau_cl, /* Teau en entree de la zone d'echange */
478  const cs_real_t fem_cl, /* debit en entree de la zone d'echange */
479  const cs_real_t xap, /* coefficient lambda de la loi d'echange */
480  const cs_real_t xnp, /* exposant n de la loi d'echange */
481 
482  const cs_real_t surface, /* Surface arrivee d eau de la ct */
483 
484  const cs_real_t dgout /* Diametre de goutte pour les zones
485  de pluie */
486 );
487 
488 /*----------------------------------------------------------------------------
489  * Destruction des structures associees aux ventilateurs
490  *----------------------------------------------------------------------------*/
491 
492 void
493 cs_ctwr_all_destroy(void);
494 
495 /*----------------------------------------------------------------------------
496  * Resolution des variables eau
497  *----------------------------------------------------------------------------*/
498 
499 void cs_ctwr_aeteau
500 (
501  cs_real_t temp[], /* Temperature air */
502  cs_real_t xa[], /* humidite air */
503  cs_real_t rho[], /* masse volumique air */
504  cs_real_t vitx[], /* vitesse air suivant x */
505  cs_real_t vity[], /* vitesse air suivant y */
506  cs_real_t vitz[] /* vitesse air suivant z */
507 );
508 
509 /*----------------------------------------------------------------------------
510  * Calcul des termes source pour l'air
511  *----------------------------------------------------------------------------*/
512 
513 void cs_ctwr_aetssc
514 (
515  const cs_int_t iscal, /* */
516 
517  cs_real_t temp[], /* Temperature air */
518  cs_real_t xa[], /* humidite air */
519  cs_real_t rho[], /* masse volumique air */
520  cs_real_t utsim[], /* vitesse verticale air */
521  cs_real_t utsex[], /* vitesse horizontale air */
522  cs_real_t vitx[], /* vitesse air suivant x */
523  cs_real_t vity[], /* vitesse air suivant y */
524  cs_real_t vitz[] /* vitesse air suivant z */
525 );
526 
527 /*----------------------------------------------------------------------------
528  * Calcul des PdC induites dans les zones de pluie
529  *----------------------------------------------------------------------------*/
530 
531 void cs_ctwr_aetsvi
532 (
533  const cs_int_t idim,
534  const cs_real_t rho[], /* masse volumique air */
535  const cs_real_t vitx[], /* vitesse air suivant x */
536  const cs_real_t vity[], /* vitesse air suivant y */
537  const cs_real_t vitz[], /* vitesse air suivant z */
538  const cs_real_t xair[], /* humidite de l'air */
539  cs_real_t utsex[] /* terme source explicite */
540 );
541 
542 /*----------------------------------------------------------------------------
543  * Bilan dans les ct
544  *----------------------------------------------------------------------------*/
545 
546 void cs_ctwr_bilanct
547 (
548  const cs_real_t time, /* */
549  cs_real_t fem_entree[], /* debit eau entree */
550  cs_real_t fem_sortie[], /* debit eau sortie */
551  cs_real_t teau_entree[], /* temperature eau entree */
552  cs_real_t teau_sortie[], /* temperature eau sortie */
553  cs_real_t heau_entree[], /* enthalpie eau entree */
554  cs_real_t heau_sortie[], /* enthalpie eau sortie */
555  cs_real_t tair_entree[], /* temperature air entree */
556  cs_real_t tair_sortie[], /* temperature air sortie */
557  cs_real_t xair_entree[], /* */
558  cs_real_t xair_sortie[], /* */
559  cs_real_t hair_entree[], /* */
560  cs_real_t hair_sortie[], /* */
561  cs_real_t debit_entree[], /* */
562  cs_real_t debit_sortie[], /* */
563 
564  const cs_real_t temp[], /* Temperature air */
565  const cs_real_t xa[], /* humidite air */
566  const cs_real_t flux_masse_fac[], /* vitesse verticale air */
567  const cs_real_t flux_masse_fbr[], /* vitesse horizontale air */
568  const cs_real_t vitx[], /* vitesse air suivant x */
569  const cs_real_t vity[], /* vitesse air suivant y */
570  const cs_real_t vitz[], /* vitesse air suivant z */
571  const cs_mesh_t *mesh, /* <-- structure maillage associee */
572  const cs_mesh_quantities_t *mesh_quantities /* <-- grandeurs du maillage */
573 );
574 
575 /*----------------------------------------------------------------------------
576  * Initialict post-processing
577  *
578  * parameters:
579  * ct_id --> Id of exchange area
580  * writer_id --> Id of associated writer
581  *----------------------------------------------------------------------------*/
582 
583 void
585  cs_int_t writer_id);
586 
587 /*----------------------------------------------------------------------------
588  * Get pointer to exchange area.
589  *
590  * parameters:
591  * ct_id <-- Id (0 to n-1) of exchange area
592  *
593  * returns:
594  * pointer to exchange area structure
595  *----------------------------------------------------------------------------*/
596 
598 cs_ctwr_by_id(cs_int_t ct_id);
599 
600 /*----------------------------------------------------------------------------*/
601 
603 
604 #endif /* __CS_CTWR_H__ */
cs_ctwr_zone_t * cs_ctwr_by_id(cs_int_t ct_id)
Definition: cs_ctwr.c:2656
cs_int_t nbfac_sct
Definition: cs_ctwr.h:96
cs_real_t * fem
Definition: cs_ctwr.h:132
cs_int_t cs_glob_ct_nbr
Definition: cs_ctwr.c:109
cs_int_t * pvoisair
Definition: cs_ctwr.h:120
void aetssc(const cs_int_t *iscal, cs_real_t temp[], cs_real_t xa[], cs_real_t rho[], cs_real_t utsim[], cs_real_t utsex[], cs_real_t vitx[], cs_real_t vity[], cs_real_t vitz[])
Definition: cs_ctwr.c:322
void cs_ctwr_bilanct(const cs_real_t time, cs_real_t fem_entree[], cs_real_t fem_sortie[], cs_real_t teau_entree[], cs_real_t teau_sortie[], cs_real_t heau_entree[], cs_real_t heau_sortie[], cs_real_t tair_entree[], cs_real_t tair_sortie[], cs_real_t xair_entree[], cs_real_t xair_sortie[], cs_real_t hair_entree[], cs_real_t hair_sortie[], cs_real_t debit_entree[], cs_real_t debit_sortie[], const cs_real_t temp[], const cs_real_t xa[], const cs_real_t flux_masse_fac[], const cs_real_t flux_masse_fbr[], const cs_real_t vitx[], const cs_real_t vity[], const cs_real_t vitz[], const cs_mesh_t *mesh, const cs_mesh_quantities_t *mesh_quantities)
Definition: cs_ctwr.c:2287
cs_int_t cs_glob_ct_nbr_max
Definition: cs_ctwr.c:107
cs_real_t tair_e
Definition: cs_ctwr.h:141
cs_int_t nbfbr_sct
Definition: cs_ctwr.h:100
cs_real_t xnp
Definition: cs_ctwr.h:88
int imctch
Definition: cs_ctwr.h:74
cs_real_t hair_e
Definition: cs_ctwr.h:145
cs_real_t surface_in
Definition: cs_ctwr.h:90
cs_int_t nnpsct_with_ghosts
Definition: cs_ctwr.h:165
void bilanct(const cs_real_t *const time, cs_real_t fem_entree[], cs_real_t fem_sortie[], cs_real_t teau_entree[], cs_real_t teau_sortie[], cs_real_t heau_entree[], cs_real_t heau_sortie[], cs_real_t tair_entree[], cs_real_t tair_sortie[], cs_real_t xair_entree[], cs_real_t xair_sortie[], cs_real_t hair_entree[], cs_real_t hair_sortie[], cs_real_t debit_entree[], cs_real_t debit_sortie[], const cs_real_t temp[], const cs_real_t xa[], const cs_real_t flux_masse_fac[], const cs_real_t flux_masse_fbr[], const cs_real_t vitx[], const cs_real_t vity[], const cs_real_t vitz[])
Definition: cs_ctwr.c:376
cs_real_t heau_e
Definition: cs_ctwr.h:139
cs_real_t hmin
Definition: cs_ctwr.h:80
Definition: fvm_nodal_priv.h:152
char * ze_name
Definition: cs_ctwr.h:73
#define BEGIN_C_DECLS
Definition: cs_defs.h:365
cs_real_t fem_e
Definition: cs_ctwr.h:135
cs_ctwr_zone_t ** cs_glob_ct_tab
Definition: cs_ctwr.c:110
cs_int_t nbfbr_ict
Definition: cs_ctwr.h:101
cs_real_t surface
Definition: cs_ctwr.h:92
int num
Definition: cs_ctwr.h:72
cs_int_t * voiseau
Definition: cs_ctwr.h:117
cs_int_t nnpsct
Definition: cs_ctwr.h:94
int ntypct
Definition: cs_ctwr.h:75
cs_halo_t * water_halo
Definition: cs_ctwr.h:168
fvm_nodal_t * water_mesh
Definition: cs_ctwr.h:114
void defct1(const cs_int_t *idimct, const char *zecrit, cs_int_t *ze_n_len, const cs_int_t *imctch, const cs_int_t *ntypct, const cs_int_t *nelect, const cs_real_t *deltat, const cs_real_t *teau, const cs_real_t *fem, const cs_real_t *xap, const cs_real_t *xnp, const cs_real_t *surface, const cs_real_t *dgout)
Definition: cs_ctwr.c:179
Definition: cs_halo.h:75
void cs_ctwr_aetssc(const cs_int_t iscal, cs_real_t temp[], cs_real_t xa[], cs_real_t rho[], cs_real_t utsim[], cs_real_t utsex[], cs_real_t vitx[], cs_real_t vity[], cs_real_t vitz[])
Definition: cs_ctwr.c:1704
void cs_ctwr_all_destroy(void)
Definition: cs_ctwr.c:1150
cs_real_t * teau
Definition: cs_ctwr.h:131
int idimct
Definition: cs_ctwr.h:71
cs_real_t hair_s
Definition: cs_ctwr.h:146
int cs_int_t
Definition: cs_defs.h:263
void nbzect(cs_int_t *nbrctz)
Definition: cs_ctwr.c:228
cs_int_t nbfac_ict
Definition: cs_ctwr.h:97
int nelect
Definition: cs_ctwr.h:77
cs_int_t id_amont
Definition: cs_ctwr.h:106
cs_real_t tair_s
Definition: cs_ctwr.h:142
fvm_nodal_t * fac_mesh
Definition: cs_ctwr.h:112
cs_real_t * coefair
Definition: cs_ctwr.h:129
void cs_ctwr_aeteau(cs_real_t temp[], cs_real_t xa[], cs_real_t rho[], cs_real_t vitx[], cs_real_t vity[], cs_real_t vitz[])
Definition: cs_ctwr.c:1177
Definition: cs_ctwr.h:69
Definition: cs_mesh.h:62
cs_real_t debit_e
Definition: cs_ctwr.h:147
cs_real_t heau_s
Definition: cs_ctwr.h:140
cs_real_t cl_teau
Definition: cs_ctwr.h:84
Definition: mesh.f90:25
cs_int_t * voisair
Definition: cs_ctwr.h:119
cs_real_t xap
Definition: cs_ctwr.h:87
cs_int_t * cs_chain_ct
Definition: cs_ctwr.c:121
cs_real_t deltat
Definition: cs_ctwr.h:82
void aetsvi(const cs_int_t *const idim, const cs_real_t rho[], const cs_real_t vitx[], const cs_real_t vity[], const cs_real_t vitz[], const cs_real_t xair[], cs_real_t utsex[])
Definition: cs_ctwr.c:350
cs_real_t xair_s
Definition: cs_ctwr.h:144
ple_locator_t ** locat_cell_ct_upwind
Definition: cs_ctwr.h:154
cs_int_t nbevct
Definition: cs_ctwr.h:104
cs_int_t nbfac_ct
Definition: cs_ctwr.h:99
cs_real_t debit_s
Definition: cs_ctwr.h:148
cs_real_t fem_s
Definition: cs_ctwr.h:136
Definition: cs_mesh_quantities.h:51
cs_real_t teau_s
Definition: cs_ctwr.h:138
cs_halo_type_t
Definition: cs_halo.h:49
cs_int_t * fac_sup_connect_lst
Definition: cs_ctwr.h:124
typedefBEGIN_C_DECLS struct _cs_ctwr_zone_t cs_ctwr_zone_t
Definition: cs_ctwr.h:63
cs_real_t teau_e
Definition: cs_ctwr.h:137
ple_locator_t * locat_air_water
Definition: cs_ctwr.h:152
cs_real_t * vgoutte
Definition: cs_ctwr.h:133
void cs_ctwr_definit(const cs_int_t idimct, const char *ze_crit, const cs_int_t imctch, const cs_int_t ntypct, const cs_int_t nelect, const cs_real_t deltat, const cs_real_t teau_cl, const cs_real_t fem_cl, const cs_real_t xap, const cs_real_t xnp, const cs_real_t surface, const cs_real_t dgout)
Definition: cs_ctwr.c:992
void aemode(cs_int_t *imctch)
Definition: cs_ctwr.c:247
cs_int_t post_mesh_id
Definition: cs_ctwr.h:156
cs_int_t * pvoiseau
Definition: cs_ctwr.h:118
cs_real_t dgout
Definition: cs_ctwr.h:150
fvm_nodal_t * face_sup_mesh
Definition: cs_ctwr.h:108
cs_real_t hmax
Definition: cs_ctwr.h:81
void pstict(void)
Definition: cs_ctwr.c:421
fvm_nodal_t * cell_mesh
Definition: cs_ctwr.h:111
#define END_C_DECLS
Definition: cs_defs.h:366
double cs_real_t
Definition: cs_defs.h:264
fvm_nodal_t * face_inf_mesh
Definition: cs_ctwr.h:109
void ecrctw(const char *const nomsui, const cs_int_t *const lngnom)
Definition: cs_ctwr.c:445
cs_int_t * cs_stack_ct
Definition: cs_ctwr.c:118
fvm_nodal_t * face_lat_mesh
Definition: cs_ctwr.h:110
cs_real_t * surf_fac_sup
Definition: cs_ctwr.h:126
void aeteau(cs_real_t temp[], cs_real_t xa[], cs_real_t rho[], cs_real_t vitx[], cs_real_t vity[], cs_real_t vitz[])
Definition: cs_ctwr.c:299
#define CS_PROCF(x, y)
Definition: cs_defs.h:379
cs_int_t * fac_sup_connect_idx
Definition: cs_ctwr.h:123
cs_int_t * cs_array_rank
Definition: cs_ctwr.h:163
void cs_ctwr_aetsvi(const cs_int_t idim, const cs_real_t rho[], const cs_real_t vitx[], const cs_real_t vity[], const cs_real_t vitz[], const cs_real_t xair[], cs_real_t utsex[])
Definition: cs_ctwr.c:2175
cs_int_t * ze_cell_list
Definition: cs_ctwr.h:116
cs_int_t * mark_ze
Definition: cs_ctwr.h:121
cs_real_t xair_e
Definition: cs_ctwr.h:143
cs_real_t * coefeau
Definition: cs_ctwr.h:128
void lecctw(const char *const nomsui, const cs_int_t *const lngnom)
Definition: cs_ctwr.c:623
cs_real_t surface_out
Definition: cs_ctwr.h:91
cs_halo_type_t halo_type
Definition: cs_ctwr.h:161
ple_locator_t * locat_water_air
Definition: cs_ctwr.h:153
cs_int_t nbfbr_lct
Definition: cs_ctwr.h:102
void cs_ctwr_post_init(cs_int_t ct_id, cs_int_t writer_id)
Definition: cs_ctwr.c:2602
void aeprot(cs_real_t *delta)
Definition: cs_ctwr.c:269
cs_int_t nbfac_lct
Definition: cs_ctwr.h:98
cs_real_t cl_fem
Definition: cs_ctwr.h:85