Code_Saturne
CFD tool
cs_preprocessor_data.h
Go to the documentation of this file.
1 #ifndef __CS_PRE_PROCESSOR_DATA_H__
2 #define __CS_PRE_PROCESSOR_DATA_H__
3 
4 /*============================================================================
5  * Exchange of data between Code_Saturne Kernel and Preprocessor
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  * Standard C library headers
32  *----------------------------------------------------------------------------*/
33 
34 /*----------------------------------------------------------------------------
35  * FVM library headers
36  *----------------------------------------------------------------------------*/
37 
38 #include "fvm_io_num.h"
39 
40 /*----------------------------------------------------------------------------
41  * Local headers
42  *----------------------------------------------------------------------------*/
43 
44 #include "cs_base.h"
45 #include "cs_mesh.h"
46 
47 /*----------------------------------------------------------------------------*/
48 
50 
51 /*============================================================================
52  * Public function prototypes for Fortran API
53  *============================================================================*/
54 
55 /*----------------------------------------------------------------------------
56  * Pass information relative to mesh metadata to the Fortran API
57  *
58  * Fortran Interface:
59  *
60  * subroutine ledevi(nfml nprfml, iperio, iperot)
61  * *****************
62  *
63  * integer nfml : <-- : Number of families
64  * integer nprfml : <-- : Number of properties per family
65  * integer iperio : <-- : Periodicity indicator
66  * integer iperot : <-- : Number of rotation periodicities
67  *----------------------------------------------------------------------------*/
68 
69 void
70 CS_PROCF(ledevi, LEDEVI)(cs_int_t *nfml,
73  cs_int_t *iperot);
74 
75 /*============================================================================
76  * Public function prototypes
77  *============================================================================*/
78 
79 /*----------------------------------------------------------------------------
80  * Define input mesh file to read.
81  *
82  * If this function is never called, the default file is read.
83  * The first time this function is called, this default is overriden by the
84  * defined file, and all subsequent calls define additional meshes to read.
85  *
86  * parameters:
87  * file_name <-- name of file to read
88  * n_group_renames <-- number of groups to rename
89  * group_rename <-- old (group_rename[i*2]) to new (group_rename[i*2 + 1])
90  * group names array (size: n_group_renames*2)
91  * transf_matrix <-- coordinate transformation matrix (or NULL)
92  *----------------------------------------------------------------------------*/
93 
94 void
95 cs_preprocessor_data_add_file(const char *file_name,
96  size_t n_group_renames,
97  const char **group_rename,
98  const double transf_matrix[3][4]);
99 
100 /*----------------------------------------------------------------------------
101  * Read mesh meta-data.
102  *
103  * parameters:
104  * mesh <-- pointer to mesh structure
105  * mesh_builder <-- pointer to mesh builder structure
106  *----------------------------------------------------------------------------*/
107 
108 void
110  cs_mesh_builder_t *mesh_builder);
111 
112 /*----------------------------------------------------------------------------
113  * Read pre-processor mesh data and finalize input.
114  *
115  * At this stage, ghost cells are not generated yet, so the interior
116  * face connectivity is not complete near parallel domain or periodic
117  * boundaries. Also, isolated faces, if present, are considered to be
118  * boundary faces, as they may participate in future mesh joining
119  * operations. Their matching cell number will be set to -1.
120  * Remaining isolated faces should be removed before completing
121  * the mesh structure.
122  *
123  * parameters:
124  * mesh <-- pointer to mesh structure
125  * mesh_builder <-- pointer to mesh builder structure
126  *----------------------------------------------------------------------------*/
127 
128 void
130  cs_mesh_builder_t *mesh_builder);
131 
132 /*----------------------------------------------------------------------------*/
133 
135 
136 #endif /* __CS_PRE_PROCESSOR_DATA_H__ */
137 
void cs_preprocessor_data_read_headers(cs_mesh_t *mesh, cs_mesh_builder_t *mesh_builder)
Definition: cs_preprocessor_data.c:2073
Definition: cs_mesh_builder.h:56
#define BEGIN_C_DECLS
Definition: cs_defs.h:365
BEGIN_C_DECLS void ledevi(cs_int_t *nfml, cs_int_t *nprfml, cs_int_t *iperio, cs_int_t *iperot)
Definition: cs_preprocessor_data.c:1928
int cs_int_t
Definition: cs_defs.h:263
integer, save iperio
Definition: period.f90:38
Definition: cs_mesh.h:62
void cs_preprocessor_data_read_mesh(cs_mesh_t *mesh, cs_mesh_builder_t *mesh_builder)
Definition: cs_preprocessor_data.c:2133
integer, save nprfml
Definition: mesh.f90:56
integer, save nfml
Definition: mesh.f90:56
void cs_preprocessor_data_add_file(const char *file_name, size_t n_group_renames, const char **group_rename, const double transf_matrix[3][4])
Definition: cs_preprocessor_data.c:1966
integer, save iperot
Definition: period.f90:38
#define END_C_DECLS
Definition: cs_defs.h:366
#define CS_PROCF(x, y)
Definition: cs_defs.h:379
Definition: mesh.f90:25