OGS
ProcessLib::LocalAssemblerInterface Class Reference

Detailed Description

Common interface for local assemblers NumLib::ODESystemTag::FirstOrderImplicitQuasilinear ODE systems.

Todo:
Generalize to other NumLib::ODESystemTag's.

Definition at line 31 of file LocalAssemblerInterface.h.

#include <LocalAssemblerInterface.h>

Inheritance diagram for ProcessLib::LocalAssemblerInterface:
[legend]

Public Member Functions

virtual ~LocalAssemblerInterface ()=default
 
void setInitialConditions (std::size_t const mesh_item_id, NumLib::LocalToGlobalIndexMap const &dof_table, GlobalVector const &x, double const t, bool const use_monolithic_scheme, int const process_id)
 
virtual void initialize (std::size_t const mesh_item_id, NumLib::LocalToGlobalIndexMap const &dof_table)
 
virtual void preAssemble (double const, double const, std::vector< double > const &)
 
virtual void assemble (double const t, double const dt, std::vector< double > const &local_x, std::vector< double > const &local_x_prev, std::vector< double > &local_M_data, std::vector< double > &local_K_data, std::vector< double > &local_b_data)
 
virtual void assembleForStaggeredScheme (double const t, double const dt, Eigen::VectorXd const &local_x, Eigen::VectorXd const &local_x_prev, int const process_id, std::vector< double > &local_M_data, std::vector< double > &local_K_data, std::vector< double > &local_b_data)
 
virtual void assembleWithJacobian (double const t, double const dt, std::vector< double > const &local_x, std::vector< double > const &local_x_prev, std::vector< double > &local_M_data, std::vector< double > &local_K_data, std::vector< double > &local_b_data, std::vector< double > &local_Jac_data)
 
virtual void assembleWithJacobianForStaggeredScheme (double const t, double const dt, Eigen::VectorXd const &local_x, Eigen::VectorXd const &local_x_prev, int const process_id, std::vector< double > &local_M_data, std::vector< double > &local_K_data, std::vector< double > &local_b_data, std::vector< double > &local_Jac_data)
 
virtual void computeSecondaryVariable (std::size_t const mesh_item_id, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_tables, double const t, double const dt, std::vector< GlobalVector * > const &x, GlobalVector const &x_prev, int const process_id)
 
virtual void preTimestep (std::size_t const mesh_item_id, NumLib::LocalToGlobalIndexMap const &dof_table, GlobalVector const &x, double const t, double const delta_t)
 
virtual void postTimestep (std::size_t const mesh_item_id, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_tables, std::vector< GlobalVector * > const &x, std::vector< GlobalVector * > const &x_prev, double const t, double const dt, bool const use_monolithic_scheme, int const process_id)
 
void postNonLinearSolver (std::size_t const mesh_item_id, NumLib::LocalToGlobalIndexMap const &dof_table, std::vector< GlobalVector * > const &x, std::vector< GlobalVector * > const &x_prev, double const t, double const dt, bool const use_monolithic_scheme, int const process_id)
 
virtual Eigen::Vector3d getFlux (MathLib::Point3d const &, double const, std::vector< double > const &) const
 
virtual Eigen::Vector3d getFlux (MathLib::Point3d const &, double const, std::vector< std::vector< double > > const &) const
 Fits to staggered scheme.
 

Private Member Functions

virtual void setInitialConditionsConcrete (std::vector< double > const &, double const, bool const, int const)
 
virtual void initializeConcrete ()
 
virtual void preTimestepConcrete (std::vector< double > const &, double const, double const)
 
virtual void postTimestepConcrete (Eigen::VectorXd const &, Eigen::VectorXd const &, double const, double const, bool const, int const)
 
virtual void postNonLinearSolverConcrete (std::vector< double > const &, std::vector< double > const &, double const, double const, bool const, int const)
 
virtual void computeSecondaryVariableConcrete (double const, double const, Eigen::VectorXd const &, Eigen::VectorXd const &)
 
virtual void computeSecondaryVariableWithCoupledProcessConcrete (double const, std::vector< std::vector< double > > const &)
 

Constructor & Destructor Documentation

◆ ~LocalAssemblerInterface()

virtual ProcessLib::LocalAssemblerInterface::~LocalAssemblerInterface ( )
virtualdefault

Member Function Documentation

◆ assemble()

void ProcessLib::LocalAssemblerInterface::assemble ( double const  t,
double const  dt,
std::vector< double > const &  local_x,
std::vector< double > const &  local_x_prev,
std::vector< double > &  local_M_data,
std::vector< double > &  local_K_data,
std::vector< double > &  local_b_data 
)
virtual

Reimplemented in ProcessLib::SteadyStateDiffusion::LocalAssemblerData< ShapeFunction, GlobalDim >, ProcessLib::StokesFlow::LocalAssemblerData< ShapeFunctionLiquidVelocity, ShapeFunctionPressure, GlobalDim >, ProcessLib::HeatConduction::LocalAssemblerData< ShapeFunction, GlobalDim >, ProcessLib::ComponentTransport::LocalAssemblerData< ShapeFunction, GlobalDim >, ProcessLib::HT::MonolithicHTFEM< ShapeFunction, GlobalDim >, ProcessLib::LiquidFlow::LiquidFlowLocalAssembler< ShapeFunction, GlobalDim >, ProcessLib::RichardsFlow::LocalAssemblerData< ShapeFunction, GlobalDim >, ProcessLib::RichardsComponentTransport::LocalAssemblerData< ShapeFunction, GlobalDim >, ProcessLib::TES::TESLocalAssembler< ShapeFunction_, GlobalDim >, ProcessLib::ThermalTwoPhaseFlowWithPP::ThermalTwoPhaseFlowWithPPLocalAssembler< ShapeFunction, GlobalDim >, ProcessLib::TwoPhaseFlowWithPP::TwoPhaseFlowWithPPLocalAssembler< ShapeFunction, GlobalDim >, ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >, ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, GlobalDim >, ProcessLib::TwoPhaseFlowWithPrho::TwoPhaseFlowWithPrhoLocalAssembler< ShapeFunction, GlobalDim >, ProcessLib::HeatTransportBHE::HeatTransportBHELocalAssemblerBHE< ShapeFunction, BHEType >, ProcessLib::HeatTransportBHE::HeatTransportBHELocalAssemblerSoil< ShapeFunction >, ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >, ProcessLib::LargeDeformation::LargeDeformationLocalAssembler< ShapeFunction, DisplacementDim >, ProcessLib::LIE::HydroMechanics::HydroMechanicsLocalAssemblerInterface, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerMatrix< ShapeFunction, DisplacementDim >, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerMatrixNearFracture< ShapeFunction, DisplacementDim >, ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >, ProcessLib::SmallDeformation::SmallDeformationLocalAssembler< ShapeFunction, DisplacementDim >, ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalLocalAssembler< ShapeFunction, DisplacementDim >, ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >, ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >, ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >, and ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, DisplacementDim >.

Definition at line 20 of file LocalAssemblerInterface.cpp.

28{
30 "The assemble() function is not implemented in the local assembler.");
31}
#define OGS_FATAL(...)
Definition: Error.h:26

References OGS_FATAL.

Referenced by ProcessLib::VectorMatrixAssembler::assemble(), ProcessLib::CentralDifferencesJacobianAssembler::assembleWithJacobian(), and ProcessLib::ForwardDifferencesJacobianAssembler::assembleWithJacobian().

◆ assembleForStaggeredScheme()

void ProcessLib::LocalAssemblerInterface::assembleForStaggeredScheme ( double const  t,
double const  dt,
Eigen::VectorXd const &  local_x,
Eigen::VectorXd const &  local_x_prev,
int const  process_id,
std::vector< double > &  local_M_data,
std::vector< double > &  local_K_data,
std::vector< double > &  local_b_data 
)
virtual

Reimplemented in ProcessLib::ComponentTransport::LocalAssemblerData< ShapeFunction, GlobalDim >, and ProcessLib::HT::StaggeredHTFEM< ShapeFunction, GlobalDim >.

Definition at line 33 of file LocalAssemblerInterface.cpp.

39{
41 "The assembleForStaggeredScheme() function is not implemented in the "
42 "local assembler.");
43}

References OGS_FATAL.

Referenced by ProcessLib::VectorMatrixAssembler::assemble().

◆ assembleWithJacobian()

void ProcessLib::LocalAssemblerInterface::assembleWithJacobian ( double const  t,
double const  dt,
std::vector< double > const &  local_x,
std::vector< double > const &  local_x_prev,
std::vector< double > &  local_M_data,
std::vector< double > &  local_K_data,
std::vector< double > &  local_b_data,
std::vector< double > &  local_Jac_data 
)
virtual

Reimplemented in ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerMatrix< ShapeFunction, DisplacementDim >, ProcessLib::LargeDeformation::LargeDeformationLocalAssembler< ShapeFunction, DisplacementDim >, ProcessLib::SmallDeformation::SmallDeformationLocalAssembler< ShapeFunction, DisplacementDim >, ProcessLib::HeatConduction::LocalAssemblerData< ShapeFunction, GlobalDim >, ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >, ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >, ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >, ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >, ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, GlobalDim >, ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, DisplacementDim, ConstitutiveTraits >, ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, DisplacementDim >, ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerInterface, ProcessLib::LIE::HydroMechanics::HydroMechanicsLocalAssemblerInterface, and ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalLocalAssembler< ShapeFunction, DisplacementDim >.

Definition at line 45 of file LocalAssemblerInterface.cpp.

53{
55 "The assembleWithJacobian() function is not implemented in the local "
56 "assembler.");
57}

References OGS_FATAL.

Referenced by ProcessLib::AnalyticalJacobianAssembler::assembleWithJacobian().

◆ assembleWithJacobianForStaggeredScheme()

void ProcessLib::LocalAssemblerInterface::assembleWithJacobianForStaggeredScheme ( double const  t,
double const  dt,
Eigen::VectorXd const &  local_x,
Eigen::VectorXd const &  local_x_prev,
int const  process_id,
std::vector< double > &  local_M_data,
std::vector< double > &  local_K_data,
std::vector< double > &  local_b_data,
std::vector< double > &  local_Jac_data 
)
virtual

◆ computeSecondaryVariable()

void ProcessLib::LocalAssemblerInterface::computeSecondaryVariable ( std::size_t const  mesh_item_id,
std::vector< NumLib::LocalToGlobalIndexMap const * > const &  dof_tables,
double const  t,
double const  dt,
std::vector< GlobalVector * > const &  x,
GlobalVector const &  x_prev,
int const  process_id 
)
virtual

Definition at line 72 of file LocalAssemblerInterface.cpp.

77{
78 std::vector<double> local_x_vec;
79
80 auto const n_processes = x.size();
81 for (std::size_t process_id = 0; process_id < n_processes; ++process_id)
82 {
83 auto const indices =
84 NumLib::getIndices(mesh_item_id, *dof_tables[process_id]);
85 assert(!indices.empty());
86 auto const local_solution = x[process_id]->get(indices);
87 local_x_vec.insert(std::end(local_x_vec), std::begin(local_solution),
88 std::end(local_solution));
89 }
90 auto const local_x = MathLib::toVector(local_x_vec);
91
92 // Todo: A more decent way is to directly pass x_prevs as done for x
93 auto const indices =
94 NumLib::getIndices(mesh_item_id, *dof_tables[process_id]);
95 auto const local_x_prev_vec = x_prev.get(indices);
96 auto const local_x_prev = MathLib::toVector(local_x_prev_vec);
97
98 computeSecondaryVariableConcrete(t, dt, local_x, local_x_prev);
99}
virtual void computeSecondaryVariableConcrete(double const, double const, Eigen::VectorXd const &, Eigen::VectorXd const &)
Eigen::Map< const Vector > toVector(std::vector< double > const &data, Eigen::VectorXd::Index size)
Creates an Eigen mapped vector from the given data vector.
std::vector< GlobalIndexType > getIndices(std::size_t const mesh_item_id, NumLib::LocalToGlobalIndexMap const &dof_table)

References computeSecondaryVariableConcrete(), MathLib::EigenVector::get(), NumLib::getIndices(), and MathLib::toVector().

Referenced by ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsProcess< DisplacementDim >::computeSecondaryVariableConcrete(), ProcessLib::HeatConduction::HeatConductionProcess::computeSecondaryVariableConcrete(), ProcessLib::HeatTransportBHE::HeatTransportBHEProcess::computeSecondaryVariableConcrete(), ProcessLib::LargeDeformation::LargeDeformationProcess< DisplacementDim >::computeSecondaryVariableConcrete(), ProcessLib::LIE::SmallDeformation::SmallDeformationProcess< DisplacementDim >::computeSecondaryVariableConcrete(), ProcessLib::LiquidFlow::LiquidFlowProcess::computeSecondaryVariableConcrete(), ProcessLib::SmallDeformation::SmallDeformationProcess< DisplacementDim >::computeSecondaryVariableConcrete(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowProcess::computeSecondaryVariableConcrete(), ProcessLib::ComponentTransport::ComponentTransportProcess::computeSecondaryVariableConcrete(), and ProcessLib::StokesFlow::StokesFlowProcess< GlobalDim >::computeSecondaryVariableConcrete().

◆ computeSecondaryVariableConcrete()

◆ computeSecondaryVariableWithCoupledProcessConcrete()

virtual void ProcessLib::LocalAssemblerInterface::computeSecondaryVariableWithCoupledProcessConcrete ( double const  ,
std::vector< std::vector< double > > const &   
)
inlineprivatevirtual

Definition at line 162 of file LocalAssemblerInterface.h.

165 {
166 }

◆ getFlux() [1/2]

virtual Eigen::Vector3d ProcessLib::LocalAssemblerInterface::getFlux ( MathLib::Point3d const &  ,
double const  ,
std::vector< double > const &   
) const
inlinevirtual

Computes the flux in the point p_local_coords that is given in local coordinates using the values from local_x. Fits to monolithic scheme.

Reimplemented in ProcessLib::LiquidFlow::LiquidFlowLocalAssembler< ShapeFunction, GlobalDim >, ProcessLib::SteadyStateDiffusion::LocalAssemblerData< ShapeFunction, GlobalDim >, ProcessLib::ComponentTransport::LocalAssemblerData< ShapeFunction, GlobalDim >, ProcessLib::HT::HTFEM< ShapeFunction, GlobalDim >, and ProcessLib::HT::HTLocalAssemblerInterface.

Definition at line 107 of file LocalAssemblerInterface.h.

111 {
112 return Eigen::Vector3d{};
113 }

◆ getFlux() [2/2]

virtual Eigen::Vector3d ProcessLib::LocalAssemblerInterface::getFlux ( MathLib::Point3d const &  ,
double const  ,
std::vector< std::vector< double > > const &   
) const
inlinevirtual

Fits to staggered scheme.

Definition at line 116 of file LocalAssemblerInterface.h.

120 {
121 return Eigen::Vector3d{};
122 }

◆ initialize()

◆ initializeConcrete()

virtual void ProcessLib::LocalAssemblerInterface::initializeConcrete ( )
inlineprivatevirtual

◆ postNonLinearSolver()

void ProcessLib::LocalAssemblerInterface::postNonLinearSolver ( std::size_t const  mesh_item_id,
NumLib::LocalToGlobalIndexMap const &  dof_table,
std::vector< GlobalVector * > const &  x,
std::vector< GlobalVector * > const &  x_prev,
double const  t,
double const  dt,
bool const  use_monolithic_scheme,
int const  process_id 
)

Definition at line 162 of file LocalAssemblerInterface.cpp.

168{
169 auto const indices = NumLib::getIndices(mesh_item_id, dof_table);
170 auto const local_x = x[process_id]->get(indices);
171 auto const local_x_prev = x_prev[process_id]->get(indices);
172
173 postNonLinearSolverConcrete(local_x, local_x_prev, t, dt,
174 use_monolithic_scheme, process_id);
175}
virtual void postNonLinearSolverConcrete(std::vector< double > const &, std::vector< double > const &, double const, double const, bool const, int const)

References NumLib::getIndices(), and postNonLinearSolverConcrete().

Referenced by ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldProcess< DisplacementDim >::postNonLinearSolverConcreteProcess().

◆ postNonLinearSolverConcrete()

virtual void ProcessLib::LocalAssemblerInterface::postNonLinearSolverConcrete ( std::vector< double > const &  ,
std::vector< double > const &  ,
double const  ,
double const  ,
bool const  ,
int const   
)
inlineprivatevirtual

◆ postTimestep()

void ProcessLib::LocalAssemblerInterface::postTimestep ( std::size_t const  mesh_item_id,
std::vector< NumLib::LocalToGlobalIndexMap const * > const &  dof_tables,
std::vector< GlobalVector * > const &  x,
std::vector< GlobalVector * > const &  x_prev,
double const  t,
double const  dt,
bool const  use_monolithic_scheme,
int const  process_id 
)
virtual

Definition at line 130 of file LocalAssemblerInterface.cpp.

136{
137 std::vector<double> local_x_vec;
138 std::vector<double> local_x_prev_vec;
139
140 auto const n_processes = x.size();
141 for (std::size_t process_id = 0; process_id < n_processes; ++process_id)
142 {
143 auto const indices =
144 NumLib::getIndices(mesh_item_id, *dof_tables[process_id]);
145 assert(!indices.empty());
146 auto const local_solution = x[process_id]->get(indices);
147 local_x_vec.insert(std::end(local_x_vec), std::begin(local_solution),
148 std::end(local_solution));
149
150 auto const local_solution_prev = x_prev[process_id]->get(indices);
151 local_x_prev_vec.insert(std::end(local_x_prev_vec),
152 std::begin(local_solution_prev),
153 std::end(local_solution_prev));
154 }
155 auto const local_x = MathLib::toVector(local_x_vec);
156 auto const local_x_prev = MathLib::toVector(local_x_prev_vec);
157
158 postTimestepConcrete(local_x, local_x_prev, t, dt, use_monolithic_scheme,
159 process_id);
160}
virtual void postTimestepConcrete(Eigen::VectorXd const &, Eigen::VectorXd const &, double const, double const, bool const, int const)

References NumLib::getIndices(), postTimestepConcrete(), and MathLib::toVector().

Referenced by ProcessLib::ComponentTransport::ComponentTransportProcess::postTimestepConcreteProcess(), ProcessLib::StokesFlow::StokesFlowProcess< GlobalDim >::postTimestepConcreteProcess(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsProcess< DisplacementDim >::postTimestepConcreteProcess(), ProcessLib::ThermoMechanics::ThermoMechanicsProcess< DisplacementDim >::postTimestepConcreteProcess(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowProcess::postTimestepConcreteProcess(), ProcessLib::LargeDeformation::LargeDeformationProcess< DisplacementDim >::postTimestepConcreteProcess(), ProcessLib::LIE::HydroMechanics::HydroMechanicsProcess< GlobalDim >::postTimestepConcreteProcess(), ProcessLib::SmallDeformation::SmallDeformationProcess< DisplacementDim >::postTimestepConcreteProcess(), ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalProcess< DisplacementDim >::postTimestepConcreteProcess(), and ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldProcess< DisplacementDim >::postTimestepConcreteProcess().

◆ postTimestepConcrete()

virtual void ProcessLib::LocalAssemblerInterface::postTimestepConcrete ( Eigen::VectorXd const &  ,
Eigen::VectorXd const &  ,
double const  ,
double const  ,
bool const  ,
int const   
)
inlineprivatevirtual

Reimplemented in ProcessLib::ComponentTransport::LocalAssemblerData< ShapeFunction, GlobalDim >, ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >, ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >, ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalLocalAssembler< ShapeFunction, DisplacementDim >, ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >, ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >, ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >, ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, DisplacementDim >, ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, GlobalDim >, ProcessLib::ThermoRichardsMechanics::LocalAssemblerInterface< DisplacementDim, ConstitutiveTraits >, ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >, ProcessLib::LargeDeformation::LargeDeformationLocalAssembler< ShapeFunction, DisplacementDim >, ProcessLib::SmallDeformation::SmallDeformationLocalAssembler< ShapeFunction, DisplacementDim >, and ProcessLib::LIE::HydroMechanics::HydroMechanicsLocalAssemblerInterface.

Definition at line 138 of file LocalAssemblerInterface.h.

143 {
144 }

Referenced by postTimestep().

◆ preAssemble()

virtual void ProcessLib::LocalAssemblerInterface::preAssemble ( double const  ,
double const  ,
std::vector< double > const &   
)
inlinevirtual

◆ preTimestep()

◆ preTimestepConcrete()

◆ setInitialConditions()

void ProcessLib::LocalAssemblerInterface::setInitialConditions ( std::size_t const  mesh_item_id,
NumLib::LocalToGlobalIndexMap const &  dof_table,
GlobalVector const &  x,
double const  t,
bool const  use_monolithic_scheme,
int const  process_id 
)

Definition at line 101 of file LocalAssemblerInterface.cpp.

105{
106 auto const indices = NumLib::getIndices(mesh_item_id, dof_table);
107 auto const local_x = x.get(indices);
108
109 setInitialConditionsConcrete(local_x, t, use_monolithic_scheme, process_id);
110}
virtual void setInitialConditionsConcrete(std::vector< double > const &, double const, bool const, int const)

References MathLib::EigenVector::get(), NumLib::getIndices(), and setInitialConditionsConcrete().

Referenced by ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowProcess::setInitialConditionsConcreteProcess().

◆ setInitialConditionsConcrete()


The documentation for this class was generated from the following files: