8.3
general documentation
cs_physical_properties.h
Go to the documentation of this file.
1#ifndef __CS_PHYSICAL_PROPERTIES_H__
2#define __CS_PHYSICAL_PROPERTIES_H__
3
4/*============================================================================
5 * Physical properties computation and management.
6 *============================================================================*/
7
8/*
9 This file is part of code_saturne, a general-purpose CFD tool.
10
11 Copyright (C) 1998-2024 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
36#include "cs_thermal_model.h"
37
38/*----------------------------------------------------------------------------*/
39
41
42typedef enum {
43
51
53
54typedef enum {
55
69
71
72/*=============================================================================
73 * Public function prototypes
74 *============================================================================*/
75
76/*----------------------------------------------------------------------------
77 * Define thermal table.
78 *----------------------------------------------------------------------------*/
79
80void
81cs_thermal_table_set(const char *material,
82 const char *method,
83 const char *reference,
85 cs_temperature_scale_t temp_scale);
86
87/*----------------------------------------------------------------------------
88 * Finalize thermal table
89 *----------------------------------------------------------------------------*/
90
91void
93
94/*----------------------------------------------------------------------------*/
102/*----------------------------------------------------------------------------*/
103
104const char *
106
107/*----------------------------------------------------------------------------*/
132/*----------------------------------------------------------------------------*/
133
134void
136
137/*----------------------------------------------------------------------------
138 * Compute a physical property.
139 *
140 * For values var1 and var2, we can use a stride so that accesses for a given
141 * element with id i will be of the form: var[i*stride]; this allows regular
142 * access with stride 1, and access to constant variables stored as a
143 * single-valued array with a stride of 0.
144 *
145 * parameters:
146 * property <-- property queried
147 * n_vals <-- number of values
148 * var1_stride <-- stride between successive values of var1
149 * var2_stride <-- stride between successive values of var2
150 * var1 <-- values on first plane axis
151 * var2 <-- values on second plane axis
152 * val --> resulting property values
153 *----------------------------------------------------------------------------*/
154
155void
157 cs_lnum_t n_vals,
158 cs_lnum_t var1_stride,
159 cs_lnum_t var2_stride,
160 const cs_real_t var1[],
161 const cs_real_t var2[],
162 cs_real_t val[]);
163
164/*----------------------------------------------------------------------------*/
172/*----------------------------------------------------------------------------*/
173
175cs_physical_property_get_ref_value(const char *name);
176
177/*----------------------------------------------------------------------------*/
184/*----------------------------------------------------------------------------*/
185
186void
188 const cs_real_t val);
189
190/*----------------------------------------------------------------------------*/
198/*----------------------------------------------------------------------------*/
199
200void
202 const char *zname,
203 cs_real_t retval[]);
204
205/*----------------------------------------------------------------------------*/
213/*----------------------------------------------------------------------------*/
214
215void
216cs_physical_property_create(const char *name,
217 const int dim,
218 const cs_real_t refval);
219
220/*----------------------------------------------------------------------------*/
229/*----------------------------------------------------------------------------*/
230
231void
233 const char *zname,
234 const int dim,
235 const cs_real_t val);
236
237/*----------------------------------------------------------------------------*/
246/*----------------------------------------------------------------------------*/
247
248void
250 const char *zname,
251 const int dim,
252 cs_real_t vals[]);
253
254/*----------------------------------------------------------------------------*/
266/*----------------------------------------------------------------------------*/
267
268void
270 int type_flag,
271 int location_id,
272 int dim,
273 bool has_previous);
274
275/*----------------------------------------------------------------------------*/
283/*----------------------------------------------------------------------------*/
284
285int
287
288/*----------------------------------------------------------------------------*/
296/*----------------------------------------------------------------------------*/
297
298void
300 const char *zname,
301 const cs_real_t vals[]);
302
303/*----------------------------------------------------------------------------*/
304
306
307#endif /* __CS_PHYSICAL_PROPERTIES_H__ */
#define BEGIN_C_DECLS
Definition: cs_defs.h:542
double cs_real_t
Floating-point value.
Definition: cs_defs.h:342
#define END_C_DECLS
Definition: cs_defs.h:543
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:335
void cs_physical_property_set_ref_value(const char *name, const cs_real_t val)
Set reference value for a physical property.
Definition: cs_physical_properties.cpp:658
void cs_physical_property_define_from_values(const char *name, const char *zname, const int dim, cs_real_t vals[])
Add a property multi-diemnsional definition on a given zone.
Definition: cs_physical_properties.cpp:792
void cs_physical_property_update_zone_values(const char *name, const char *zname, const cs_real_t vals[])
Update reference values for a property on a given zone.
Definition: cs_physical_properties.cpp:880
void cs_physical_properties_set_coolprop_backend(const char *backend)
Set backend for CoolProp.
Definition: cs_physical_properties.cpp:483
void cs_phys_prop_compute(cs_phys_prop_type_t property, cs_lnum_t n_vals, cs_lnum_t var1_stride, cs_lnum_t var2_stride, const cs_real_t var1[], const cs_real_t var2[], cs_real_t val[])
Compute a physical property.
Definition: cs_physical_properties.cpp:530
cs_phys_prop_thermo_plane_type_t
Definition: cs_physical_properties.h:42
@ CS_PHYS_PROP_PLANE_TX
Definition: cs_physical_properties.h:50
@ CS_PHYS_PROP_PLANE_PS
Definition: cs_physical_properties.h:46
@ CS_PHYS_PROP_PLANE_TS
Definition: cs_physical_properties.h:49
@ CS_PHYS_PROP_PLANE_PT
Definition: cs_physical_properties.h:45
@ CS_PHYS_PROP_PLANE_PV
Definition: cs_physical_properties.h:48
@ CS_PHYS_PROP_PLANE_PH
Definition: cs_physical_properties.h:44
@ CS_PHYS_PROP_PLANE_PU
Definition: cs_physical_properties.h:47
void cs_physical_property_define_from_value(const char *name, const char *zname, const int dim, const cs_real_t val)
Add a property definition on a given zone using a single value.
Definition: cs_physical_properties.cpp:753
cs_real_t cs_physical_property_get_ref_value(const char *name)
Get reference value of a physical property.
Definition: cs_physical_properties.cpp:635
void cs_physical_property_define_from_field(const char *name, int type_flag, int location_id, int dim, bool has_previous)
Add a property definition based on a cs_field_t.
Definition: cs_physical_properties.cpp:829
void cs_physical_property_get_zone_values(const char *name, const char *zname, cs_real_t retval[])
Get property reference values for a given zone.
Definition: cs_physical_properties.cpp:681
void cs_physical_property_create(const char *name, const int dim, const cs_real_t refval)
Create a physical property.
Definition: cs_physical_properties.cpp:734
void cs_thermal_table_set(const char *material, const char *method, const char *reference, cs_phys_prop_thermo_plane_type_t thermo_plane, cs_temperature_scale_t temp_scale)
Define thermal table.
Definition: cs_physical_properties.cpp:300
cs_phys_prop_type_t
Definition: cs_physical_properties.h:54
@ CS_PHYS_PROP_THERMAL_CONDUCTIVITY
Definition: cs_physical_properties.h:66
@ CS_PHYS_PROP_SPECIFIC_VOLUME
Definition: cs_physical_properties.h:62
@ CS_PHYS_PROP_TEMPERATURE
Definition: cs_physical_properties.h:57
@ CS_PHYS_PROP_PRESSURE
Definition: cs_physical_properties.h:56
@ CS_PHYS_PROP_ISOCHORIC_HEAT_CAPACITY
Definition: cs_physical_properties.h:61
@ CS_PHYS_PROP_INTERNAL_ENERGY
Definition: cs_physical_properties.h:64
@ CS_PHYS_PROP_QUALITY
Definition: cs_physical_properties.h:65
@ CS_PHYS_PROP_DENSITY
Definition: cs_physical_properties.h:63
@ CS_PHYS_PROP_ENTHALPY
Definition: cs_physical_properties.h:58
@ CS_PHYS_PROP_SPEED_OF_SOUND
Definition: cs_physical_properties.h:68
@ CS_PHYS_PROP_ISOBARIC_HEAT_CAPACITY
Definition: cs_physical_properties.h:60
@ CS_PHYS_PROP_ENTROPY
Definition: cs_physical_properties.h:59
@ CS_PHYS_PROP_DYNAMIC_VISCOSITY
Definition: cs_physical_properties.h:67
int cs_physical_property_field_id_by_name(const char *name)
Return id of field associated to property.
Definition: cs_physical_properties.cpp:857
const char * cs_physical_properties_get_coolprop_backend(void)
Get backend set for CoolProp.
Definition: cs_physical_properties.cpp:446
void cs_thermal_table_finalize(void)
finalize thermal table.
Definition: cs_physical_properties.cpp:395
cs_temperature_scale_t
Definition: cs_thermal_model.h:65