9.1
general documentation
cs_mesh_cut.h
Go to the documentation of this file.
1#ifndef CS_MESH_CUT_H
2#define CS_MESH_CUT_H
3
4/*============================================================================
5 * Functions to remove mesh elements.
6 *============================================================================*/
7
8/*
9 This file is part of code_saturne, a general-purpose CFD tool.
10
11 Copyright (C) 1998-2025 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/*----------------------------------------------------------------------------
31 * Local headers
32 *----------------------------------------------------------------------------*/
33
34#include "base/cs_defs.h"
35#include "mesh/cs_mesh.h"
36
37/*----------------------------------------------------------------------------*/
38
39/*=============================================================================
40 * Macro definitions
41 *============================================================================*/
42
43/*============================================================================
44 * Type definitions
45 *============================================================================*/
46
47/*============================================================================
48 * Static global variables
49 *============================================================================*/
50
51/*=============================================================================
52 * Public function prototypes
53 *============================================================================*/
54
55/*----------------------------------------------------------------------------*/
56/*
57 * \brief Cut cells with planes.
58 *
59 * Each cell can be cut by a single plane, defined by its normal and an origin
60 * (i.e. any point in the plane). Cells whose assigned normals are null
61 * vectors are not cut.
62 *
63 * The polygons created by the cut are added to a new group,
64 * "auto:closing_polygons".
65 *
66 * This function should be followed by applying a joining on the group,
67 * "auto:transformed_internal_faces".
68 *
69 * \param[in, out] mesh mesh to cut
70 * \param[in] p_normals array of plane_normals of size mesh->n_cells
71 * \param[in] p_origins array of plane origins of size mesh->n_cells
72 */
73/*----------------------------------------------------------------------------*/
74
75void
77 const cs_real_t p_normals[][3],
78 const cs_real_t p_origins[][3]);
79
80/*----------------------------------------------------------------------------*/
81
82#endif /* CS_MESH_CUT_H */
double cs_real_t
Floating-point value.
Definition: cs_defs.h:357
void cs_mesh_cut(cs_mesh_t *mesh, const cs_real_t p_normals[][3], const cs_real_t p_origins[][3])
Cut cells with planes.
Definition: cs_mesh_cut.cpp:1135
Definition: mesh.f90:26
Definition: cs_mesh.h:85