BELFEM 0.9.0
Berkeley Lab Finite Element Framework
Loading...
Searching...
No Matches
cl_GT_RefGasFactory.hpp
Go to the documentation of this file.
1/*
2 * BELFEM -- The Berkeley Lab Finite Element Framework
3 * Copyright (c) 2026, The Regents of the University of California,
4 * through Lawrence Berkeley National Laboratory (subject to receipt of any required
5 * approvals from the U.S. Dept. of Energy). All rights reserved.
6 *
7 * Developers: Christian Messe, Gregory Giard
8 *
9 * See the top-level LICENSE file for the complete license and disclaimer.
10 */
11
12#ifndef BELFEM_CL_GT_REFGASFACTORY_HPP
13#define BELFEM_CL_GT_REFGASFACTORY_HPP
14
15#include "typedefs.hpp"
16#include "cl_Vector.hpp"
17
18#include "cl_GT_RefGas.hpp"
19#include "fn_GT_data_path.hpp"
20
21namespace belfem
22{
23 class SpMatrix;
24
25 namespace gastables
26 {
27 class InputThermo;
28 class InputTransport;
29 class InputData;
30 class InputAlpha;
31
32//------------------------------------------------------------------------------
33
59 {
60 InputThermo * mThermo;
61 InputTransport * mTransport;
62 InputData * mData;
63 InputAlpha * mAlpha;
64
65 Vector< real > mTemperatures;
66 SpMatrix mHelpMatrix;
67
68//------------------------------------------------------------------------------
69 public:
70//------------------------------------------------------------------------------
71
72 RefGasFactory( const string aDataPath = gastables::data_path() );
73
74//------------------------------------------------------------------------------
75
77
78//------------------------------------------------------------------------------
79
80 // owns the four input parsers
81 RefGasFactory( const RefGasFactory & ) = delete;
82 RefGasFactory & operator=( const RefGasFactory & ) = delete;
83
84//------------------------------------------------------------------------------
85
86 RefGas *
87 create_refgas( const string & aLabel );
88
89//------------------------------------------------------------------------------
90
91 void
92 create_temperature_steps( Vector< real > & aTemperatureSteps );
93
94//------------------------------------------------------------------------------
95
96 void
97 create_helpmatrix( SpMatrix & aHelpMatrix );
98
99//------------------------------------------------------------------------------
100
101 bool
103 const string & aA,
104 const string & aB );
105
106//------------------------------------------------------------------------------
107
108 RefGas *
109 create_interaction_viscosity( const string & aA, const string & aB );
110
111//------------------------------------------------------------------------------
112 };
113 }
114}
115#endif //BELFEM_CL_REFGASFACTORY_HPP
Sparse matrix in CSR or CSC format.
Definition cl_SpMatrix.hpp:52
Reader for cubicalpha.inp, the fitted alpha function coefficients of Mahmoodi and Sedigh ( doi 10....
Definition cl_GT_InputAlpha.hpp:46
Reader for gasdata.inp, the table of critical point and molecular data.
Definition cl_GT_InputData.hpp:40
a class that can read the thermo.inp
Definition cl_GT_InputThermo.hpp:30
Reader for trans.inp, the CEA transport property table.
Definition cl_GT_InputTransport.hpp:41
RefGasFactory & operator=(const RefGasFactory &)=delete
void create_temperature_steps(Vector< real > &aTemperatureSteps)
Definition cl_GT_RefGasFactory.cpp:82
RefGas * create_interaction_viscosity(const string &aA, const string &aB)
Definition cl_GT_RefGasFactory.cpp:140
RefGas * create_refgas(const string &aLabel)
Definition cl_GT_RefGasFactory.cpp:94
RefGasFactory(const RefGasFactory &)=delete
void create_helpmatrix(SpMatrix &aHelpMatrix)
Definition cl_GT_RefGasFactory.cpp:71
bool interaction_viscosity_exists(const string &aA, const string &aB)
Definition cl_GT_RefGasFactory.cpp:130
RefGasFactory(const string aDataPath=gastables::data_path())
Definition cl_GT_RefGasFactory.cpp:33
A single chemical species with its caloric and transport properties.
Definition cl_GT_RefGas.hpp:76
Definition cl_Gas.hpp:33
string data_path()
Return the directory holding the gas tables.
Definition fn_GT_data_path.cpp:47
USER GUIDES:
Definition cl_Capacitor.cpp:16