programmer's documentation
cs_mesh_deform.h
Go to the documentation of this file.
1 #ifndef __CS_MESH_DEFORM_H__
2 #define __CS_MESH_DEFORM_H__
3 
4 /*============================================================================
5  * Mesh deformation.
6  *============================================================================*/
7 
8 /*
9  This file is part of Code_Saturne, a general-purpose CFD tool.
10 
11  Copyright (C) 1998-2018 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 #include "cs_defs.h"
31 
32 /*----------------------------------------------------------------------------
33  * Standard C library headers
34  *----------------------------------------------------------------------------*/
35 
36 /*----------------------------------------------------------------------------
37  * Local headers
38  *----------------------------------------------------------------------------*/
39 
40 #include "cs_domain.h"
41 #include "cs_mesh.h"
42 
43 /*----------------------------------------------------------------------------*/
44 
46 
47 /*=============================================================================
48  * Macro definitions
49  *============================================================================*/
50 
51 /*============================================================================
52  * Type definitions
53  *============================================================================*/
54 
55 /*============================================================================
56  * Public function prototypes
57  *============================================================================*/
58 
59 /*----------------------------------------------------------------------------*/
65 /*----------------------------------------------------------------------------*/
66 
67 bool
69 
70 /*----------------------------------------------------------------------------*/
74 /*----------------------------------------------------------------------------*/
75 
76 void
78 
79 /*----------------------------------------------------------------------------*/
91 /*----------------------------------------------------------------------------*/
92 
93 void
95  const int boundary_zone_ids[]);
96 
97 /*----------------------------------------------------------------------------*/
103 /*----------------------------------------------------------------------------*/
104 
105 void
107 
108 /*----------------------------------------------------------------------------*/
123 /*----------------------------------------------------------------------------*/
124 
125 void
127  const cs_lnum_t vertex_ids[],
128  const cs_real_3_t displacement[]);
129 
130 /*----------------------------------------------------------------------------*/
136 /*----------------------------------------------------------------------------*/
137 
138 void
140 
141 /*----------------------------------------------------------------------------*/
147 /*----------------------------------------------------------------------------*/
148 
149 const cs_real_3_t *
151 
152 /*----------------------------------------------------------------------------*/
156 /*----------------------------------------------------------------------------*/
157 
158 void
160 
161 /*----------------------------------------------------------------------------*/
162 
164 
165 #endif /* __CS_MESH_DEFORM_H__ */
const cs_real_3_t * cs_mesh_deform_get_displacement(void)
Return pointer to current mesh displacement vector.
Definition: cs_mesh_deform.c:403
#define BEGIN_C_DECLS
Definition: cs_defs.h:461
void cs_mesh_deform_setup(cs_domain_t *domain)
Setup the equations related to mesh deformation.
Definition: cs_mesh_deform.c:258
void cs_mesh_deform_activate(void)
Activate the future mesh deformation.
Definition: cs_mesh_deform.c:190
void cs_mesh_deform_define_dirichlet_bc_zones(cs_lnum_t n_boundary_zones, const int boundary_zone_ids[])
Define the boundary zones on which mesh deformation is prescribed.
Definition: cs_mesh_deform.c:239
void cs_mesh_deform_finalize(void)
Free structures used fo mesh deformation.
Definition: cs_mesh_deform.c:415
void cs_mesh_deform_prescribe_displacement(cs_lnum_t n_vertices, const cs_lnum_t vertex_ids[], const cs_real_3_t displacement[])
Prescribe the displacement vector for a set of vertices.
Definition: cs_mesh_deform.c:307
Definition: cs_domain.h:97
cs_real_t cs_real_3_t[3]
vector of 3 floating-point values
Definition: cs_defs.h:309
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:293
#define END_C_DECLS
Definition: cs_defs.h:462
void cs_mesh_deform_solve_displacement(cs_domain_t *domain)
Compute displacement for mesh deformation.
Definition: cs_mesh_deform.c:350
bool cs_mesh_deform_is_activated(void)
Test if mesh deformation is activated.
Definition: cs_mesh_deform.c:175