programmer's documentation
cs_post_util.h
Go to the documentation of this file.
1 #ifndef __CS_POST_UTIL_H__
2 #define __CS_POST_UTIL_H__
3 
4 /*============================================================================
5  * Postprocessing utility functions.
6  *============================================================================*/
7 
8 /*
9  This file is part of Code_Saturne, a general-purpose CFD tool.
10 
11  Copyright (C) 1998-2018 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 "cs_defs.h"
35 #include "cs_mesh_location.h"
36 
37 /*----------------------------------------------------------------------------*/
38 
40 
41 /*=============================================================================
42  * Type Definitions
43  *============================================================================*/
44 
45 typedef enum {
46 
54 
55 /*============================================================================
56  * Global variables
57  *============================================================================*/
58 
61 extern int cs_glob_post_util_flag[];
62 
63 /*============================================================================
64  * Public function prototypes
65  *============================================================================*/
66 
67 /*----------------------------------------------------------------------------*/
92 /*----------------------------------------------------------------------------*/
93 
94 void
96  cs_lnum_t *n_cells,
97  cs_lnum_t **cell_ids);
98 
99 /*----------------------------------------------------------------------------*/
126 /*----------------------------------------------------------------------------*/
127 
128 void
130  cs_lnum_t *n_elts,
131  cs_real_3_t **coords,
132  cs_real_t **s);
133 
134 /*----------------------------------------------------------------------------*/
145 /*----------------------------------------------------------------------------*/
146 
147 cs_real_t
148 cs_post_turbomachinery_head(const char *criteria_in,
149  cs_mesh_location_type_t location_in,
150  const char *criteria_out,
151  cs_mesh_location_type_t location_out);
152 
153 /*----------------------------------------------------------------------------*/
164 /*----------------------------------------------------------------------------*/
165 
166 cs_real_t
168  const cs_lnum_t b_face_ids[],
169  cs_real_t axis[3]);
170 
171 /*----------------------------------------------------------------------------*/
180 /*----------------------------------------------------------------------------*/
181 
182 void
184  const cs_lnum_t b_face_ids[],
185  cs_real_3_t stress[]);
186 
187 /*----------------------------------------------------------------------------*/
196 /*----------------------------------------------------------------------------*/
197 
198 void
200  const cs_lnum_t cell_ids[],
201  cs_real_6_t rst[]);
202 
203 /*----------------------------------------------------------------------------*/
220 /*----------------------------------------------------------------------------*/
221 
222 void
223 cs_post_q_criterion(const cs_lnum_t n_loc_cells,
224  const cs_lnum_t cell_ids[],
225  cs_real_t q_crit[]);
226 
227 /*----------------------------------------------------------------------------*/
238 /*----------------------------------------------------------------------------*/
239 
240 void
241 cs_post_boundary_flux(const char *scalar_name,
242  cs_lnum_t n_loc_b_faces,
243  const cs_lnum_t b_face_ids[],
244  cs_real_t b_face_flux[]);
245 
246 /*----------------------------------------------------------------------------*/
247 
249 
250 #endif /* __CS_POST_UTIL_H__ */
cs_real_t cs_post_turbomachinery_head(const char *criteria_in, cs_mesh_location_type_t location_in, const char *criteria_out, cs_mesh_location_type_t location_out)
Compute the head of a turbomachinery (total pressure increase)
Definition: cs_post_util.c:372
cs_real_t cs_post_moment_of_force(cs_lnum_t n_b_faces, const cs_lnum_t b_face_ids[], cs_real_t axis[3])
Compute the magnitude of a moment of force torque) given an axis and the stress on a specific boundar...
Definition: cs_post_util.c:506
void cs_cell_segment_intersect_select(void *input, cs_lnum_t *n_cells, cs_lnum_t **cell_ids)
Select cells cut by a given segment.
Definition: cs_post_util.c:144
void cs_post_boundary_flux(const char *scalar_name, cs_lnum_t n_loc_b_faces, const cs_lnum_t b_face_ids[], cs_real_t b_face_flux[])
Compute scalar flux on a specific boundary region.
Definition: cs_post_util.c:716
cs_real_t cs_real_6_t[6]
vector of 6 floating-point values
Definition: cs_defs.h:311
cs_mesh_location_type_t
Definition: cs_mesh_location.h:60
#define BEGIN_C_DECLS
Definition: cs_defs.h:451
void cs_post_q_criterion(const cs_lnum_t n_loc_cells, const cs_lnum_t cell_ids[], cs_real_t q_crit[])
Compute the Q-criterion from Hunt et. al over each cell of a specified volume region.
Definition: cs_post_util.c:660
double cs_real_t
Floating-point value.
Definition: cs_defs.h:297
int cs_glob_post_util_flag[]
void cs_post_stress_tangential(cs_lnum_t n_b_faces, const cs_lnum_t b_face_ids[], cs_real_3_t stress[])
Compute tangential stress on a specific boundary.
Definition: cs_post_util.c:544
cs_real_t cs_real_3_t[3]
vector of 3 floating-point values
Definition: cs_defs.h:309
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:293
#define END_C_DECLS
Definition: cs_defs.h:452
Definition: cs_post_util.h:51
void cs_cell_segment_intersect_probes_define(void *input, cs_lnum_t *n_elts, cs_real_3_t **coords, cs_real_t **s)
Define probes based on the centers of cells intersected by a given segment.
Definition: cs_post_util.c:316
Definition: cs_post_util.h:47
cs_post_util_type_t
Definition: cs_post_util.h:45
Definition: cs_post_util.h:49
void cs_post_evm_reynolds_stresses(cs_lnum_t n_loc_cells, const cs_lnum_t cell_ids[], cs_real_6_t rst[])
Compute Reynolds stresses in case of Eddy Viscosity Models.
Definition: cs_post_util.c:583