9.2
general documentation
fvm_nodal_extrude.h
Go to the documentation of this file.
1
#ifndef FVM_NODAL_EXTRUDE_H
2
#define FVM_NODAL_EXTRUDE_H
3
4
/*============================================================================
5
* Extrusion of a nodal representation associated with a mesh
6
*============================================================================*/
7
8
/*
9
This file is part of code_saturne, a general-purpose CFD tool.
10
11
Copyright (C) 1998-2026 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 "
base/cs_defs.h
"
31
32
/*----------------------------------------------------------------------------
33
* Local headers
34
*----------------------------------------------------------------------------*/
35
36
#include "
fvm/fvm_defs.h
"
37
#include "
fvm/fvm_nodal.h
"
38
39
/*=============================================================================
40
* Public function prototypes
41
*============================================================================*/
42
43
/*----------------------------------------------------------------------------
44
* Extrude nodal mesh.
45
*
46
* Vertex and element parent numbering is removed if present.
47
48
* Note: layout of new elements in memory is such that the definitions
49
* of all elements extruded from a same ancestor are contiguous.
50
* that is, {e_1, e_2, ..., e_n} leads to
51
* {e_1_layer_1, ..., e_1_layer_m, e_2_layer_1, ... e_n_layer_m}
52
*
53
* parameters:
54
* this_nodal <-> pointer to structure that should be extruded
55
* n_layers <-> number of extruded layers
56
* extrusion_vectors <-> length and direction of extrusion for each vertex;
57
* size: mesh_spatial_dim . n_vertices
58
* distribution <-> optional distribution of resulting vertices
59
* along each extrusion vector (size: n_layers + 1)
60
* with values ranging from 0 to 1, or NULL for
61
* a regular distribution.
62
*----------------------------------------------------------------------------*/
63
64
void
65
fvm_nodal_extrude
(fvm_nodal_t *this_nodal,
66
const
cs_lnum_t
n_layers,
67
const
cs_coord_t
extrusion_vectors[],
68
const
cs_coord_t
distribution[]);
69
70
/*----------------------------------------------------------------------------*/
71
72
#endif
/* FVM_NODAL_EXTRUDE_H */
cs_defs.h
cs_coord_t
double cs_coord_t
Definition:
cs_defs.h:330
cs_lnum_t
int cs_lnum_t
local mesh entity id
Definition:
cs_defs.h:325
fvm_defs.h
fvm_nodal.h
fvm_nodal_extrude
void fvm_nodal_extrude(fvm_nodal_t *this_nodal, const cs_lnum_t n_layers, const cs_coord_t extrusion_vectors[], const cs_coord_t distribution[])
Definition:
fvm_nodal_extrude.cpp:216
src
fvm
fvm_nodal_extrude.h
Generated on Mon Jul 6 2026 11:49:54 for code_saturne by
1.9.4