8.3
general documentation
cs_join_update.h
Go to the documentation of this file.
1#ifndef __CS_JOIN_UPDATE_H__
2#define __CS_JOIN_UPDATE_H__
3
4/*============================================================================
5 * Structure and function headers handling with mesh update during
6 * the joining operation
7 *===========================================================================*/
8
9/*
10 This file is part of code_saturne, a general-purpose CFD tool.
11
12 Copyright (C) 1998-2024 EDF S.A.
13
14 This program is free software; you can redistribute it and/or modify it under
15 the terms of the GNU General Public License as published by the Free Software
16 Foundation; either version 2 of the License, or (at your option) any later
17 version.
18
19 This program is distributed in the hope that it will be useful, but WITHOUT
20 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
21 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
22 details.
23
24 You should have received a copy of the GNU General Public License along with
25 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
26 Street, Fifth Floor, Boston, MA 02110-1301, USA.
27*/
28
29/*----------------------------------------------------------------------------*/
30
31/*----------------------------------------------------------------------------
32 * Local headers
33 *---------------------------------------------------------------------------*/
34
35#include "cs_base.h"
36#include "cs_join_mesh.h"
37#include "cs_join_set.h"
38#include "cs_join_util.h"
39#include "cs_mesh.h"
40
41/*---------------------------------------------------------------------------*/
42
44
45/*=============================================================================
46 * Local Macro definitions
47 *===========================================================================*/
48
49/*============================================================================
50 * Type definition
51 *===========================================================================*/
52
53/*=============================================================================
54 * Global variables
55 *===========================================================================*/
56
57/*============================================================================
58 * Public function header for Fortran API
59 *===========================================================================*/
60
61/*=============================================================================
62 * Public function prototypes
63 *===========================================================================*/
64
65/*----------------------------------------------------------------------------
66 * Update mesh structure (vertices + faces) after the fusion step.
67 *
68 * parameters:
69 * join_param <-- set of parameters for the joining operation
70 * join_select <-- list of all implied entities in the joining op.
71 * o2n_vtx_gnum <-> in : array on blocks on the new global vertex
72 * out: local array on the new global vertex
73 * join_mesh <-> pointer to the local cs_join_mesh_t structure
74 * mesh <-> pointer of pointer to cs_mesh_t structure
75 *---------------------------------------------------------------------------*/
76
77void
79 cs_join_select_t *join_select,
80 cs_gnum_t o2n_vtx_gnum[],
81 cs_join_mesh_t *join_mesh,
83
84/*----------------------------------------------------------------------------
85 * Update mesh structure (vertices + faces) after the face split step.
86 *
87 * parameters:
88 * join_param <-- set of parameters for the joining operation
89 * join_select <-- list of all implied entities in the joining op.
90 * o2n_face_hist <-- relation between faces before/after the joining
91 * join_mesh <-> pointer to the local cs_join_mesh_t structure
92 * mesh <-> pointer of pointer to cs_mesh_t structure
93 * mesh_builder <-> pointer of pointer to cs_mesh__builder_t structure
94 *---------------------------------------------------------------------------*/
95
96void
98 const cs_join_select_t *join_select,
99 const cs_join_gset_t *o2n_face_hist,
100 cs_join_mesh_t *join_mesh,
102 cs_mesh_builder_t *mesh_builder);
103
104/*----------------------------------------------------------------------------
105 * Clean a cs_mesh_t struct.
106 * Delete redundant and empty edge definitions.
107 *
108 * parameters:
109 * para <-- set of parameters for the joining operation
110 * mesh <-> pointer to a cs_mesh_t structure
111 *---------------------------------------------------------------------------*/
112
113void
115 cs_mesh_t *mesh);
116
117/*---------------------------------------------------------------------------*/
118
120
121#endif /* __CS_JOIN_UPDATE_H__ */
#define BEGIN_C_DECLS
Definition: cs_defs.h:542
uint64_t cs_gnum_t
global mesh entity number
Definition: cs_defs.h:325
#define END_C_DECLS
Definition: cs_defs.h:543
void cs_join_update_mesh_after_split(cs_join_param_t join_param, const cs_join_select_t *join_select, const cs_join_gset_t *o2n_face_hist, cs_join_mesh_t *join_mesh, cs_mesh_t *mesh, cs_mesh_builder_t *mesh_builder)
Definition: cs_join_update.cpp:4182
void cs_join_update_mesh_clean(cs_join_param_t param, cs_mesh_t *mesh)
Definition: cs_join_update.cpp:4503
void cs_join_update_mesh_after_merge(cs_join_param_t join_param, cs_join_select_t *join_select, cs_gnum_t o2n_vtx_gnum[], cs_join_mesh_t *join_mesh, cs_mesh_t *mesh)
Definition: cs_join_update.cpp:3955
Definition: mesh.f90:26
Definition: cs_join_util.h:115
Definition: cs_mesh_builder.h:57
Definition: cs_mesh.h:85