My Project
programmer's documentation
src
fvm
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-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
* Local headers
34
*----------------------------------------------------------------------------*/
35
36
#include "
fvm_defs.h
"
37
#include "
fvm_nodal.h
"
38
39
/*----------------------------------------------------------------------------*/
40
41
BEGIN_C_DECLS
42
43
/*=============================================================================
44
* Public function prototypes
45
*============================================================================*/
46
47
/*----------------------------------------------------------------------------
48
* Extrude nodal mesh.
49
*
50
* Vertex and element parent numbering is removed if present.
51
52
* Note: layout of new elements in memory is such that the definitions
53
* of all elements extruded from a same ancestor are contiguous.
54
* that is, {e_1, e_2, ..., e_n} leads to
55
* {e_1_layer_1, ..., e_1_layer_m, e_2_layer_1, ... e_n_layer_m}
56
*
57
* parameters:
58
* this_nodal <-> pointer to structure that should be extruded
59
* n_layers <-> number of extruded layers
60
* extrusion_vectors <-> length and direction of extrusion for each vertex;
61
* size: mesh_spatial_dim . n_vertices
62
* distribution <-> optional distribution of resulting vertices
63
* along each extrusion vector (size: n_layers + 1)
64
* with values ranging from 0 to 1, or NULL for
65
* a regular distribution.
66
*----------------------------------------------------------------------------*/
67
68
void
69
fvm_nodal_extrude
(fvm_nodal_t *this_nodal,
70
const
cs_lnum_t
n_layers,
71
const
cs_coord_t
extrusion_vectors[],
72
const
cs_coord_t
distribution[]);
73
74
/*----------------------------------------------------------------------------*/
75
76
END_C_DECLS
77
78
#endif
/* __FVM_NODAL_EXTRUDE_H__ */
cs_defs.h
END_C_DECLS
#define END_C_DECLS
Definition:
cs_defs.h:468
BEGIN_C_DECLS
#define BEGIN_C_DECLS
Definition:
cs_defs.h:467
cs_lnum_t
int cs_lnum_t
local mesh entity id
Definition:
cs_defs.h:298
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.c:221
fvm_nodal.h
cs_coord_t
double cs_coord_t
Definition:
cs_defs.h:299
fvm_defs.h
Generated on Thu Apr 9 2020 17:26:56 for My Project by
1.8.16