OGS
ComponentTransportProcessData.h
Go to the documentation of this file.
1
11#pragma once
12
13#include <Eigen/Core>
14#include <memory>
15
17#include "LookupTable.h"
24
25namespace MaterialPropertyLib
26{
27class Medium;
28}
29
30namespace MeshLib
31{
32template <typename PROP_VAL_TYPE>
33class PropertyVector;
34}
35
36namespace ProcessLib
37{
38namespace ComponentTransport
39{
41{
43 bool const has_gravity;
72 std::unique_ptr<LookupTable> lookup_table;
73
75
77 std::vector<Eigen::VectorXd> const projected_specific_body_force_vectors;
78
80
84 ParameterLib::ConstantParameter<double>("constant_one", 1.0);
85
86 bool const isothermal;
87
90
91 static const int hydraulic_process_id = 0;
92 // Thermal process is optional, indicated by -1. If present, it is positive.
93 const int thermal_process_id = isothermal ? -1 : 1;
94 // TODO (renchao-lu): This variable is used in the calculation of the
95 // fluid's density and flux, indicating the transport process id. For now it
96 // is assumed that these quantities depend on the first occurring transport
97 // process only. The density and flux calculations have to be extended to
98 // all processes.
100
103};
104
105} // namespace ComponentTransport
106} // namespace ProcessLib
std::variant< NoStabilization, IsotropicDiffusionStabilization, FullUpwind, FluxCorrectedTransport > NumericalStabilization
Single, constant value parameter.
std::vector< Eigen::VectorXd > const projected_specific_body_force_vectors
Projected specific body force vector: R * R^T * b.
MaterialPropertyLib::MaterialSpatialDistributionMap media_map
NumLib::ShapeMatrixCache shape_matrix_cache
caches for each mesh element type the shape matrix