My Project
programmer's documentation
Loading...
Searching...
No Matches
cs_medcoupling_utils.hxx
Go to the documentation of this file.
1#ifndef __CS_MEDCOUPLING_UTILS_HXX__
2#define __CS_MEDCOUPLING_UTILS_HXX__
3
4/*============================================================================
5 * Usage of MEDCoupling base components.
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#include <stdarg.h>
37#include <stdio.h>
38#include <stdlib.h>
39#include <string.h>
40
41#if defined(HAVE_MPI)
42#include <mpi.h>
43#endif
44
45/*----------------------------------------------------------------------------
46 * MEDCOUPLING library headers
47 *----------------------------------------------------------------------------*/
48
49#include <MEDCoupling_version.h>
50#include <MEDCouplingUMesh.hxx>
51
52using namespace MEDCoupling;
53
55
56/*----------------------------------------------------------------------------
57 * MEDCoupling mesh structure
58 *----------------------------------------------------------------------------*/
59
60typedef struct {
61
62 char *sel_criteria; /* Element selection criteria */
63
64 int elt_dim; /* Element dimension */
65
66 cs_lnum_t n_elts; /* Number of coupled elements */
67 cs_lnum_t *elt_list; /* List of associated elements
68 (0 to n-1) */
69 int *new_to_old; /* Connectivity used if only a section of
70 the mesh is read */
71
72 MEDCouplingUMesh *med_mesh; /* MED mesh structure */
73
74 cs_real_t *bbox; /* Bounding box to optimize search */
75
77
78/*=============================================================================
79 * Public functions
80 *============================================================================*/
81
82/* -------------------------------------------------------------------------- */
94/* -------------------------------------------------------------------------- */
95
97cs_medcoupling_mesh_create(const char *name,
98 const char *select_criteria,
99 int elt_dim);
100
101/* -------------------------------------------------------------------------- */
113/* -------------------------------------------------------------------------- */
114
115void
117 cs_medcoupling_mesh_t *pmmesh,
118 int use_bbox);
119
120/* -------------------------------------------------------------------------- */
127/* -------------------------------------------------------------------------- */
128
129void
131
132/*----------------------------------------------------------------------------*/
133
135
136#endif //__CS_MEDCOUPLING_UTILS_HXX__
#define BEGIN_C_DECLS
Definition cs_defs.h:467
double cs_real_t
Floating-point value.
Definition cs_defs.h:302
#define END_C_DECLS
Definition cs_defs.h:468
int cs_lnum_t
local mesh entity id
Definition cs_defs.h:298
cs_medcoupling_mesh_t * cs_medcoupling_mesh_create(const char *name, const char *select_criteria, int elt_dim)
create a new cs_medcoupling_mesh_t instance
Definition cs_medcoupling_utils.cxx:511
void cs_medcoupling_mesh_copy_from_base(cs_mesh_t *csmesh, cs_medcoupling_mesh_t *pmmesh, int use_bbox)
copy a cs_mesh_t into a cs_medcoupling_mesh_t
Definition cs_medcoupling_utils.cxx:552
void cs_medcoupling_mesh_destroy(cs_medcoupling_mesh_t *mesh)
Destroy a cs_medcoupling_mesh_t.
Definition cs_medcoupling_utils.cxx:614
Definition mesh.f90:26
Definition cs_medcoupling_utils.hxx:60
char * sel_criteria
Definition cs_medcoupling_utils.hxx:62
cs_lnum_t n_elts
Definition cs_medcoupling_utils.hxx:66
int * new_to_old
Definition cs_medcoupling_utils.hxx:69
MEDCouplingUMesh * med_mesh
Definition cs_medcoupling_utils.hxx:72
int elt_dim
Definition cs_medcoupling_utils.hxx:64
cs_lnum_t * elt_list
Definition cs_medcoupling_utils.hxx:67
cs_real_t * bbox
Definition cs_medcoupling_utils.hxx:74
Definition cs_mesh.h:63