My Project
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-2019 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 /*----------------------------------------------------------------------------*/
127 /*----------------------------------------------------------------------------*/
128 
129 void
131  const cs_lnum_t vertex_ids[],
132  const cs_real_3_t displacement[]);
133 
134 /*----------------------------------------------------------------------------*/
153 /*----------------------------------------------------------------------------*/
154 
155 void
157  const cs_lnum_t vertex_ids[],
158  const cs_real_3_t displacement[]);
159 
160 /*----------------------------------------------------------------------------*/
166 /*----------------------------------------------------------------------------*/
167 
168 void
170 
171 /*----------------------------------------------------------------------------*/
177 /*----------------------------------------------------------------------------*/
178 
179 const cs_real_3_t *
181 
182 /*----------------------------------------------------------------------------*/
186 /*----------------------------------------------------------------------------*/
187 
188 void
190 
191 /*----------------------------------------------------------------------------*/
192 
194 
195 #endif /* __CS_MESH_DEFORM_H__ */
cs_mesh_deform_get_displacement
const cs_real_3_t * cs_mesh_deform_get_displacement(void)
Return pointer to current mesh displacement vector.
Definition: cs_mesh_deform.c:493
cs_defs.h
cs_domain_t
Structure storing the main features of the computational domain and pointers to the main geometrical ...
Definition: cs_domain.h:87
cs_domain.h
cs_real_3_t
cs_real_t cs_real_3_t[3]
vector of 3 floating-point values
Definition: cs_defs.h:315
cs_mesh_deform_is_activated
bool cs_mesh_deform_is_activated(void)
Test if mesh deformation is activated.
Definition: cs_mesh_deform.c:180
END_C_DECLS
#define END_C_DECLS
Definition: cs_defs.h:468
cs_mesh_deform_activate
void cs_mesh_deform_activate(void)
Activate the future mesh deformation.
Definition: cs_mesh_deform.c:195
BEGIN_C_DECLS
#define BEGIN_C_DECLS
Definition: cs_defs.h:467
cs_mesh_deform_prescribe_displacement
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:336
cs_mesh_deform_define_dirichlet_bc_zones
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:244
cs_mesh.h
cs_mesh_deform_setup
void cs_mesh_deform_setup(cs_domain_t *domain)
Setup the equations related to mesh deformation.
Definition: cs_mesh_deform.c:263
cs_mesh_deform_finalize
void cs_mesh_deform_finalize(void)
Free structures used fo mesh deformation.
Definition: cs_mesh_deform.c:505
cs_lnum_t
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:298
cs_mesh_deform_force_displacements
void cs_mesh_deform_force_displacements(cs_lnum_t n_vertices, const cs_lnum_t vertex_ids[], const cs_real_3_t displacement[])
Define a fixed displacement vector for given vertices.
Definition: cs_mesh_deform.c:392
cs_mesh_deform_solve_displacement
void cs_mesh_deform_solve_displacement(cs_domain_t *domain)
Compute displacement for mesh deformation.
Definition: cs_mesh_deform.c:438