7.0
general documentation
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-2021 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  * Local headers
36  *----------------------------------------------------------------------------*/
37 
38 #include "cs_base.h"
39 
40 /*----------------------------------------------------------------------------*/
41 
43 
44 /*=============================================================================
45  * Local Macro Definitions
46  *============================================================================*/
47 
48 /*============================================================================
49  * Structure definition
50  *============================================================================*/
51 
52 typedef struct _cs_ast_coupling_t cs_ast_coupling_t;
53 
54 /*============================================================================
55  * Global variable definitions
56  *============================================================================*/
57 
58 /*============================================================================
59  * Public function prototypes for Fortran API
60  *============================================================================*/
61 
62 /*----------------------------------------------------------------------------
63  * Send nodes coordinates and structure numbering of coupled mesh.
64  *
65  * Fortran Interface:
66  *
67  * SUBROUTINE ASTGEO
68  * *****************
69  *
70  *----------------------------------------------------------------------------*/
71 
72 void CS_PROCF(astgeo, ASTGEO)
73 (
75  cs_lnum_t *lstfac,
76  cs_lnum_t *idfast,
77  cs_lnum_t *idnast,
79 );
80 
81 /*----------------------------------------------------------------------------
82  * Send stresses acting on the fluid/structure interface.
83  *
84  * Fortran Interface:
85  *
86  * SUBROUTINE ASTFOR
87  * *****************
88  *
89  *----------------------------------------------------------------------------*/
90 
91 void CS_PROCF(astfor, ASTFOR)
92 (
94  cs_real_t *forast
95 );
96 
97 /*----------------------------------------------------------------------------
98  * Receive displacement values of the fluid/structure interface
99  *
100  * Fortran Interface:
101  *
102  * SUBROUTINE ASTCIN
103  * *****************
104  *
105  *----------------------------------------------------------------------------*/
106 
107 void CS_PROCF(astcin, ASTCIN)
108 (
109  cs_real_3_t *disale
110 );
111 
112 /*----------------------------------------------------------------------------
113  * Exchange time step
114  *
115  * Fortran Interface:
116  *
117  * SUBROUTINE ASTPDT
118  * *****************
119  *
120  *----------------------------------------------------------------------------*/
121 
122 void CS_PROCF(astpdt, ASTPDT)
123 (
124  cs_real_t *dttab
125 );
126 
127 /*============================================================================
128  * Public function prototypes
129  *============================================================================*/
130 
131 /*----------------------------------------------------------------------------*/
140 /*----------------------------------------------------------------------------*/
141 
142 void
144  cs_real_t epalim);
145 
146 /*----------------------------------------------------------------------------*/
150 /*----------------------------------------------------------------------------*/
151 
152 void
154 
155 /*----------------------------------------------------------------------------*/
162 /*----------------------------------------------------------------------------*/
163 
164 int
166 
167 /*----------------------------------------------------------------------------*/
173 /*----------------------------------------------------------------------------*/
174 
175 void
176 cs_ast_coupling_send_cvg(int icved);
177 
178 /*----------------------------------------------------------------------------*/
179 
181 
182 #endif /* __CS_AST_COUPLING_H__ */
void astcin(cs_real_3_t *disale)
Definition: cs_ast_coupling.c:850
void astpdt(cs_real_t *dttab)
Definition: cs_ast_coupling.c:936
void astgeo(cs_lnum_t *nbfast, cs_lnum_t *lstfac, cs_lnum_t *idfast, cs_lnum_t *idnast, cs_real_t *almax)
Definition: cs_ast_coupling.c:450
void cs_ast_coupling_send_cvg(int icved)
Send global convergence value of FSI calculations.
Definition: cs_ast_coupling.c:1239
integer, save nbfast
Definition: alaste.f90:47
#define BEGIN_C_DECLS
Definition: cs_defs.h:495
double precision, save epalim
relative precision of implicitation of the structure displacement
Definition: albase.f90:51
int cs_ast_coupling_get_ext_cvg(void)
Receive convergence value of code_saturne/code_aster coupling.
Definition: cs_ast_coupling.c:1216
void cs_ast_coupling_initialize(int nalimx, cs_real_t epalim)
Initial exchange with code_aster.
Definition: cs_ast_coupling.c:1048
double cs_real_t
Floating-point value.
Definition: cs_defs.h:307
cs_real_t cs_real_3_t[3]
vector of 3 floating-point values
Definition: cs_defs.h:320
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:301
integer, save nalimx
maximum number of implicitation iterations of the structure displacement
Definition: albase.f90:49
#define END_C_DECLS
Definition: cs_defs.h:496
void cs_ast_coupling_finalize(void)
Finalize exchange with code_aster.
Definition: cs_ast_coupling.c:1177
#define CS_PROCF(x, y)
Definition: cs_defs.h:509
void astfor(cs_lnum_t *nbfast, cs_real_t *forast)
Definition: cs_ast_coupling.c:721
real(c_double), pointer, save almax
is a characteristic macroscopic length of the domain, used for the initialization of the turbulence a...
Definition: cstphy.f90:597
struct _cs_ast_coupling_t cs_ast_coupling_t
Definition: cs_ast_coupling.h:52