Code_Saturne
CFD tool
cs_ast_coupling.h
Go to the documentation of this file.
1 #ifndef __CS_AST_COUPLING_H__
2 #define __CS_AST_COUPLING_H__
3 
4 /*============================================================================
5  * Code_Aster coupling
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  * BFT library headers
36  *----------------------------------------------------------------------------*/
37 
38 /*----------------------------------------------------------------------------
39  * FVM library headers
40  *----------------------------------------------------------------------------*/
41 
42 /*----------------------------------------------------------------------------
43  * Local headers
44  *----------------------------------------------------------------------------*/
45 
46 #include "cs_base.h"
47 
48 /*----------------------------------------------------------------------------*/
49 
51 
52 /*=============================================================================
53  * Local Macro Definitions
54  *============================================================================*/
55 
56 /*============================================================================
57  * Structure definition
58  *============================================================================*/
59 
61 
62 /*============================================================================
63  * Global variables definition
64  *============================================================================*/
65 
66 /*============================================================================
67  * Public function prototypes for Fortran API
68  *============================================================================*/
69 
70 /*----------------------------------------------------------------------------
71  * Send nodes coordinates and structure numbering of coupled mesh.
72  *
73  * Fortran Interface:
74  *
75  * SUBROUTINE ASTGEO
76  * *****************
77  *
78  *----------------------------------------------------------------------------*/
79 
80 void CS_PROCF(astgeo, ASTGEO)
81 (
84  cs_int_t *lstfac,
85  cs_int_t *idfast,
86  cs_int_t *idnast,
88 );
89 
90 /*----------------------------------------------------------------------------
91  * Send stresses acting on the fluid/structure interface.
92  *
93  * Fortran Interface:
94  *
95  * SUBROUTINE ASTFOR
96  * *****************
97  *
98  *----------------------------------------------------------------------------*/
99 
100 void CS_PROCF(astfor, ASTFOR)
101 (
102  cs_int_t *ntcast,
103  cs_int_t *nbfast,
104  cs_real_t *forast
105 );
106 
107 /*----------------------------------------------------------------------------
108  * Receive displacement values of the fluid/structure interface
109  *
110  * Fortran Interface:
111  *
112  * SUBROUTINE ASTCIN
113  * *****************
114  *
115  *----------------------------------------------------------------------------*/
116 
117 void CS_PROCF(astcin, ASTCIN)
118 (
119  cs_int_t *ntcast,
120  cs_int_t *nbfast,
121  cs_int_t *lstfac,
123 );
124 
125 /*----------------------------------------------------------------------------
126  * Receive coupling parameters
127  *
128  * Fortran Interface:
129  *
130  * SUBROUTINE ASTPAR
131  * *****************
132  *
133  *----------------------------------------------------------------------------*/
134 
135 void CS_PROCF(astpar, ASTPAR)
136 (
137  cs_int_t *nbpdt,
138  cs_int_t *nbsspdt,
139  cs_real_t *delta,
140  cs_real_t *tt,
141  cs_real_t *dt
142 );
143 
144 /*----------------------------------------------------------------------------
145  * Exchange time step
146  *
147  * Fortran Interface:
148  *
149  * SUBROUTINE ASTPDT
150  * *****************
151  *
152  *----------------------------------------------------------------------------*/
153 
154 void CS_PROCF(astpdt, ASTPDT)
155 (
156  cs_real_t *dttab,
157  cs_int_t *ncelet,
158  cs_int_t *nbpdt
159 );
160 
161 /*----------------------------------------------------------------------------
162  * Receive convergence value of Code_Saturne/Code_Aster coupling
163  *
164  * Fortran Interface:
165  *
166  * SUBROUTINE ASTCV1
167  * *****************
168  *
169  *----------------------------------------------------------------------------*/
170 
171 void CS_PROCF(astcv1, ASTCV1)
172 (
173  cs_int_t *ntcast,
174  cs_int_t *icv
175 );
176 
177 /*-----------------------------------------------------------------------------
178  * Send global convergence value of IFS calculations
179  * (Internal and external structures)
180  *
181  * Fortran Interface:
182  *
183  * SUBROUTINE ASTCV2
184  * *****************
185  *
186  *----------------------------------------------------------------------------*/
187 
188 void CS_PROCF(astcv2, ASTCV2)
189 (
190  cs_int_t *ntcast,
191  cs_int_t *icv
192 );
193 
194 /*----------------------------------------------------------------------------*/
195 
197 
198 #endif /* __CS_SYR_COUPLING_H__ */
void astcin(cs_int_t *ntcast, cs_int_t *nbfast, cs_int_t *lstfac, cs_real_t *depale)
Definition: cs_ast_coupling.c:311
integer, save nbnast
Definition: alaste.f90:44
void astcv2(cs_int_t *ntcast, cs_int_t *icv)
Definition: cs_ast_coupling.c:623
integer, save ntcast
Definition: alaste.f90:43
integer, save nbfast
Definition: alaste.f90:44
#define BEGIN_C_DECLS
Definition: cs_defs.h:365
integer, save icv
Definition: ppincl.f90:187
void astpdt(cs_real_t *dttab, cs_int_t *ncelet, cs_int_t *nbpdt)
Definition: cs_ast_coupling.c:519
double precision, save almax
Definition: cstphy.f90:141
int cs_int_t
Definition: cs_defs.h:263
void astpar(cs_int_t *nbpdt, cs_int_t *nbsspdt, cs_real_t *delta, cs_real_t *tt, cs_real_t *dt)
Definition: cs_ast_coupling.c:419
void astgeo(cs_int_t *nbfast, cs_int_t *nbnast, cs_int_t *lstfac, cs_int_t *idfast, cs_int_t *idnast, cs_real_t *almax)
Definition: cs_ast_coupling.c:125
double precision, dimension(ncharm), save delta
Definition: cpincl.f90:105
typedefBEGIN_C_DECLS struct _cs_ast_coupling_t cs_ast_coupling_t
Definition: cs_ast_coupling.h:60
integer, save ncelet
Definition: mesh.f90:42
#define END_C_DECLS
Definition: cs_defs.h:366
double cs_real_t
Definition: cs_defs.h:264
#define CS_PROCF(x, y)
Definition: cs_defs.h:379
void astfor(cs_int_t *ntcast, cs_int_t *nbfast, cs_real_t *forast)
Definition: cs_ast_coupling.c:253
double precision, dimension(:,:), allocatable depale
Definition: albase.f90:58
void astcv1(cs_int_t *ntcast, cs_int_t *icv)
Definition: cs_ast_coupling.c:593
Definition: cs_ast_coupling.c:81