1 #ifndef __CS_CF_MODEL_H__ 2 #define __CS_CF_MODEL_H__ 3 4 /*============================================================================ 5 * Thermodynamic laws for the compressible module 6 *============================================================================*/ 7 8 /* 9 This file is part of Code_Saturne, a general-purpose CFD tool. 10 11 Copyright (C) 1998-2021 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 /*---------------------------------------------------------------------------- 37 * Local headers 38 *----------------------------------------------------------------------------*/ 39 40 BEGIN_C_DECLS 41 42 /*============================================================================ 43 * Type definitions 44 *============================================================================*/ 45 46 /* compressible model general options descriptor */ 47 /*-----------------------------------------------*/ 48 49 typedef struct { 50 51 int ieos; /* indicator of equation of state */ 52 53 int ithvar; /* indicator for thermodynamic 54 variables initialization */ 55 56 double psginf; /* stiffened gas limit pressure (zero in 57 perfect gas) (Pa) for single phase model */ 58 59 double gammasg; /* stiffened gas polytropic coefficient, 60 (dimensionless) for single phase model */ 61 62 int hgn_relax_eq_st; /* source term step: 63 - -1 disabled 64 - 0 enabled 65 */ 66 67 } cs_cf_model_t; 68 69 typedef enum { 70 71 CS_EOS_IDEAL_GAS = 1, 72 73 CS_EOS_STIFFENED_GAS = 2, 74 75 CS_EOS_GAS_MIX = 3, 76 77 CS_EOS_HOMOGENEOUS_TWO_PHASE = 4 78 79 } cs_cf_model_eos_t; 80 81 /*============================================================================ 82 * Static global variables 83 *============================================================================*/ 84 85 /* pointer to main compressible model descriptor structure */ 86 87 extern const cs_cf_model_t *cs_glob_cf_model; 88 89 /*============================================================================= 90 * Public function definitions 91 *============================================================================*/ 92 93 /*----------------------------------------------------------------------------*/ 94 /*! 95 * \brief Provide access to compressible model global structure cs_glob_cf_model 96 */ 97 /*----------------------------------------------------------------------------*/ 98 99 cs_cf_model_t * 100 cs_get_glob_cf_model(void); 101 102 /*----------------------------------------------------------------------------*/ 103 104 END_C_DECLS 105 106 #endif /* __CS_CF_MODEL_H__ */ 107