BELFEM
0.9.0
Berkeley Lab Finite Element Framework
Toggle main menu visibility
Loading...
Searching...
No Matches
cl_ThermalFactory.hpp
Go to the documentation of this file.
1
//
2
// Created by gregorygiard on 10/24/25.
3
//
4
5
#ifndef BELFEM_CL_THERMALFACTORY_HPP
6
#define BELFEM_CL_THERMALFACTORY_HPP
7
8
#include "
typedefs.hpp
"
9
#include "
cl_Map.hpp
"
10
#include "
cl_Mesh.hpp
"
11
#include "
en_DomainType.hpp
"
12
#include "
cl_Vector.hpp
"
13
#include "
cl_FEM_Kernel.hpp
"
14
#include "
cl_IWG_MaxwellThermal.hpp
"
15
#include "
cl_ThermalBoundaryConditionFactory.hpp
"
16
#include "
cl_InputFile.hpp
"
17
#include "
cl_FEM_Domain.hpp
"
18
19
namespace
belfem
20
{
21
namespace
fem
22
{
29
class
ThermalFactory
30
{
31
const
proc_t
mCommRank ;
32
33
const
InputFile
* mInputFile ;
34
35
ThermalBoundaryConditionFactory
* mBoundaryConditionFactory ;
36
37
// deleted by kernel
38
bool
mOwnKernelParameters = true ;
39
KernelParameters
* mKernelParameters = nullptr ;
40
41
Mesh
* mMesh = nullptr ;
42
43
ModelDimensionality
mDimensionality =
ModelDimensionality::UNDEFINED
;
44
45
std::shared_ptr< Kernel > mThermalKernel = nullptr ;
46
47
IWG_MaxwellThermal
* mThermalEquation = nullptr ;
48
bool
mOwnThermalEquation = true ;
49
50
DofManager
* mThermalField = nullptr ;
51
52
Cell< Domain * >
mDomains ;
53
54
55
56
bool
mUseEnrichment = false ;
57
58
//------------------------------------------------------------------------------
59
public
:
60
//------------------------------------------------------------------------------
61
62
ThermalFactory
(
const
string
& aInputFile,
Mesh
* aMesh );
63
64
ThermalFactory
(
const
string
& aInputFile,
Kernel
* aMagneticKernel );
65
66
~ThermalFactory
();
67
68
//------------------------------------------------------------------------------
69
70
std::shared_ptr< Kernel >
71
create_thermal_kernel
();
72
73
//------------------------------------------------------------------------------
74
private
:
75
//------------------------------------------------------------------------------
76
77
void
78
configure_solver(
const
input::Section
* aSection,
DofManager
* aField );
79
80
ThermalBoundaryConditionFactory
*
81
create_bc_factory();
82
83
//------------------------------------------------------------------------------
84
85
};
86
87
}
88
}
89
90
#endif
//BELFEM_CL_THERMALFACTORY_HPP
cl_FEM_Domain.hpp
cl_FEM_Kernel.hpp
cl_IWG_MaxwellThermal.hpp
cl_InputFile.hpp
cl_Map.hpp
cl_Mesh.hpp
cl_ThermalBoundaryConditionFactory.hpp
cl_Vector.hpp
belfem::Cell
Cell is a wrapper around the standard vector.
Definition
cl_Cell.hpp:42
belfem::InputFile
Parser for the input.conf configuration format.
Definition
cl_InputFile.hpp:30
belfem::Mesh
Top-level container for all mesh entities.
Definition
cl_Mesh.hpp:60
belfem::fem::DofManager
this class creates the DOFs based on the passed equation object.
Definition
cl_FEM_DofManager.hpp:55
belfem::fem::IWG_MaxwellThermal
Transient heat conduction coupled to the Maxwell solution.
Definition
cl_IWG_MaxwellThermal.hpp:21
belfem::fem::Kernel
Top-level orchestrator; owns the mesh, materials, boundary conditions and DOF managers.
Definition
cl_FEM_Kernel.hpp:50
belfem::fem::KernelParameters
Definition
cl_FEM_KernelParameters.hpp:29
belfem::fem::ThermalBoundaryConditionFactory
Builds the thermal boundary conditions from the input deck.
Definition
cl_ThermalBoundaryConditionFactory.hpp:25
belfem::fem::ThermalFactory::create_thermal_kernel
std::shared_ptr< Kernel > create_thermal_kernel()
Definition
cl_ThermalFactory.cpp:59
belfem::fem::ThermalFactory::ThermalFactory
ThermalFactory(const string &aInputFile, Mesh *aMesh)
Definition
cl_ThermalFactory.cpp:16
belfem::input::Section
One hierarchical section of a configuration file.
Definition
cl_Input_Section.hpp:34
en_DomainType.hpp
belfem::fem
Definition
cl_IFB_LINE3.hpp:21
belfem
USER GUIDES:
Definition
cl_Capacitor.cpp:16
belfem::ModelDimensionality
ModelDimensionality
Definition
en_IWGs.hpp:20
belfem::ModelDimensionality::UNDEFINED
@ UNDEFINED
Definition
en_IWGs.hpp:25
belfem::proc_t
int proc_t
Definition
commtypes.hpp:29
typedefs.hpp
src
fem
thermal
cl_ThermalFactory.hpp
Generated by
1.18.0