![]() |
OGS
|
Common convenitions for naming: X_gas_nonwet mass fraction of gas component(e.g air) in nonwetting phase (gas component doesn't include water vapor, same for the following) x_gas_nonwet molar fraction of gas component in nonwetting phase x_vapor_nonwet molar fraction of vapor in nonwetting phase p_vapor_nonwet water vapor pressure p_gas_nonwet partial pressure of gas component mol_density_nonwet molar density of nonwetting phase mol_density_water molar density of water density_water mass density of water density_nonwet_gas mass density of gas component in the nonwetting phase density_nonwet_vapor mass density of vapor in the nonwetting phase density_nonwet mass density of the nonwetting phase density_wet mass density of wetting pahse density_solid mass density of the solid phase velocity_nonwet velocity of nonwetting phase velocity_wet velocity of wetting phase heat_capacity_dry_gas heat capacity of dry gas heat_capacity_water_vapor heat capacity of water vapor heat_capacity_water heat capacity of liquid water heat_capacity_solid heat capacity of soil grain latent_heat_evaporation latent heat for evaporation(water to vapor) enthalpy_nonwet_gas enthalpy of gas component in the nonwetting phase enthalpy_nonwet_vapor enthalpy of water vapor in the nonwetting phase enthalpy_wet enthalpy of wetting phase enthalpy_nonwet enthalpy of the nonwetting phase internal_energy_nonwet specific internal energy for the nonwetting phase internal_energy_wet specific internal energy for the wetting phase heat_conductivity_dry_solid heat conductivity of the dry porous medium heat_conductivity_wet_solid heat conductivity of the fully saturated porous medium heat_conductivity_unsaturated heat conductivity of the unsaturated porous medium
common nomenclature -----------—primary variable-------------------— pn_int_pt pressure for nonwetting phase at each integration point pc_int_pt capillary pressure at each integration point -----------—secondary variable-----------------— Sw wetting phase saturation dSw_dpc derivative of wetting phase saturation with respect to capillary pressure rho_nonwet density of nonwetting phase drhononwet_dpn derivative of nonwetting phase density with respect to nonwetting phase pressure rho_wet density of wetting phase k_rel_nonwet relative permeability of nonwetting phase mu_nonwet viscosity of nonwetting phase lambda_nonwet mobility of nonwetting phase k_rel_wet relative permeability of wetting phase mu_wet viscosity of wetting phase lambda_wet mobility of wetting phase
Typedefs | |
using | HCNonAdvectiveFreeComponentFlowBoundaryCondition = GenericNaturalBoundaryCondition< HCNonAdvectiveFreeComponentFlowBoundaryConditionData, HCNonAdvectiveFreeComponentFlowBoundaryConditionLocalAssembler > |
using | NeumannBoundaryCondition = GenericNaturalBoundaryCondition< NeumannBoundaryConditionData, NeumannBoundaryConditionLocalAssembler > |
using | RobinBoundaryCondition = GenericNaturalBoundaryCondition< RobinBoundaryConditionData, RobinBoundaryConditionLocalAssembler > |
using | VariableDependentNeumannBoundaryCondition = GenericNaturalBoundaryCondition< VariableDependentNeumannBoundaryConditionData, VariableDependentNeumannBoundaryConditionLocalAssembler > |
template<typename ShpPol , unsigned NNodes, unsigned NodalDOF, int Dim> | |
using | LocalAssemblerTraits = detail::LocalAssemblerTraitsFixed< ShpPol, NNodes, NodalDOF, Dim > |
using | Trafo = ProcessLib::TrafoScale |
Enumerations | |
enum class | OutputType : uint8_t { vtk , xdmf } |
Functions | |
std::unique_ptr< ConstraintDirichletBoundaryCondition > | createConstraintDirichletBoundaryCondition (BaseLib::ConfigTree const &config, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_bulk, int const variable_id, unsigned const integration_order, int const component_id, std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const ¶meters, Process const &constraining_process) |
std::unique_ptr< BoundaryCondition > | createBoundaryCondition (const BoundaryConditionConfig &config, const NumLib::LocalToGlobalIndexMap &dof_table, const MeshLib::Mesh &bulk_mesh, const int variable_id, const unsigned integration_order, const unsigned shapefunction_order, const std::vector< std::unique_ptr< ParameterLib::ParameterBase >> ¶meters, const Process &process) |
std::unique_ptr< BoundaryCondition > | createDirichletBoundaryConditionWithinTimeInterval (BaseLib::ConfigTree const &config, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_bulk, int const variable_id, int const component_id, const std::vector< std::unique_ptr< ParameterLib::ParameterBase >> ¶meters) |
std::unique_ptr< SourceTerm > | createNodalSourceTerm (BaseLib::ConfigTree const &config, MeshLib::Mesh const &st_mesh, std::unique_ptr< NumLib::LocalToGlobalIndexMap > dof_table, std::size_t const source_term_mesh_id, const int variable_id, const int component_id, std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const ¶meters) |
std::unique_ptr< SourceTerm > | createSourceTerm (const SourceTermConfig &config, const NumLib::LocalToGlobalIndexMap &dof_table_bulk, const MeshLib::Mesh &source_term_mesh, const int variable_id, const unsigned integration_order, const unsigned shapefunction_order, std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const ¶meters) |
std::unique_ptr< SourceTerm > | createVolumetricSourceTerm (BaseLib::ConfigTree const &config, unsigned const bulk_mesh_dimension, MeshLib::Mesh const &source_term_mesh, std::unique_ptr< NumLib::LocalToGlobalIndexMap > source_term_dof_table, std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const ¶meters, unsigned const integration_order, unsigned const shapefunction_order) |
std::unique_ptr< DirichletBoundaryCondition > | createDirichletBoundaryCondition (BaseLib::ConfigTree const &config, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_bulk, int const variable_id, int const component_id, const std::vector< std::unique_ptr< ParameterLib::ParameterBase >> ¶meters) |
void | checkParametersOfDirichletBoundaryCondition (MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_bulk, int const variable_id, int const component_id) |
void | getEssentialBCValuesLocal (ParameterLib::Parameter< double > const ¶meter, MeshLib::Mesh const &bc_mesh, std::vector< MeshLib::Node * > const &nodes_in_bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_boundary, int const variable_id, int const component_id, const double t, GlobalVector const &, NumLib::IndexValueVector< GlobalIndexType > &bc_values) |
std::unique_ptr< HCNonAdvectiveFreeComponentFlowBoundaryCondition > | createHCNonAdvectiveFreeComponentFlowBoundaryCondition (BaseLib::ConfigTree const &config, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table, int const variable_id, int const component_id, unsigned const integration_order, std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const ¶meters, unsigned const global_dim, Process const &process, unsigned const shapefunction_order) |
std::unique_ptr< NeumannBoundaryCondition > | createNeumannBoundaryCondition (BaseLib::ConfigTree const &config, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table, int const variable_id, int const component_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim, std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const ¶meters) |
std::unique_ptr< PhaseFieldIrreversibleDamageOracleBoundaryCondition > | createPhaseFieldIrreversibleDamageOracleBoundaryCondition (BaseLib::ConfigTree const &config, NumLib::LocalToGlobalIndexMap const &dof_table, MeshLib::Mesh const &mesh, int const variable_id, int const component_id) |
std::unique_ptr< PrimaryVariableConstraintDirichletBoundaryCondition > | createPrimaryVariableConstraintDirichletBoundaryCondition (BaseLib::ConfigTree const &config, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_bulk, int const variable_id, int const component_id, const std::vector< std::unique_ptr< ParameterLib::ParameterBase >> ¶meters) |
template<typename BHEType > | |
std::unique_ptr< BHEInflowPythonBoundaryCondition< BHEType > > | createBHEInflowPythonBoundaryCondition (std::pair< GlobalIndexType, GlobalIndexType > &&in_out_global_indices, BHEType &bhe, BHEInflowPythonBoundaryConditionPythonSideInterface &py_bc_object) |
void | bheInflowpythonBindBoundaryCondition (pybind11::module &m) |
Creates BHE Inflow Python bindings for the Python BC class. More... | |
std::unique_ptr< SourceTerm > | createPythonSourceTerm (BaseLib::ConfigTree const &config, MeshLib::Mesh const &source_term_mesh, std::unique_ptr< NumLib::LocalToGlobalIndexMap > dof_table, int const variable_id, int const component_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim) |
std::unique_ptr< PythonBoundaryCondition > | createPythonBoundaryCondition (BaseLib::ConfigTree const &config, MeshLib::Mesh const &boundary_mesh, NumLib::LocalToGlobalIndexMap const &dof_table, std::size_t bulk_mesh_id, int const variable_id, int const component_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim) |
Creates a new PythonBoundaryCondition object. More... | |
void | pythonBindBoundaryCondition (pybind11::module &m) |
Creates Python bindings for the Python BC class. More... | |
std::unique_ptr< RobinBoundaryCondition > | createRobinBoundaryCondition (BaseLib::ConfigTree const &config, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table, int const variable_id, int const component_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim, std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const ¶meters) |
std::unique_ptr< SolutionDependentDirichletBoundaryCondition > | createSolutionDependentDirichletBoundaryCondition (BaseLib::ConfigTree const &config, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_bulk, int const variable_id, int const component_id, std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const ¶meters) |
std::unique_ptr< VariableDependentNeumannBoundaryCondition > | createVariableDependentNeumannBoundaryCondition (BaseLib::ConfigTree const &config, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table, int const variable_id, int const component_id, unsigned const integration_order, unsigned const shapefunction_order, unsigned const global_dim, std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const ¶meters) |
std::unique_ptr< CentralDifferencesJacobianAssembler > | createCentralDifferencesJacobianAssembler (BaseLib::ConfigTree const &config) |
std::unique_ptr< CompareJacobiansJacobianAssembler > | createCompareJacobiansJacobianAssembler (BaseLib::ConfigTree const &config) |
std::vector< double > | getCoupledLocalSolutions (std::vector< GlobalVector * > const &global_solutions, std::vector< std::vector< GlobalIndexType >> const &indices) |
template<typename IsActive > | |
static std::pair< std::vector< MeshLib::Node * >, std::vector< MeshLib::Node * > > | extractInnerAndOuterNodes (MeshLib::Mesh const &mesh, MeshLib::Mesh const &sub_mesh, IsActive is_active) |
static std::unique_ptr< DeactivatedSubdomainMesh > | createDeactivatedSubdomainMesh (MeshLib::Mesh const &mesh, int const material_id) |
static MathLib::PiecewiseLinearInterpolation | parseTimeIntervalOrCurve (std::optional< BaseLib::ConfigTree > const &time_interval_config, std::optional< std::string > const &curve_name, std::map< std::string, std::unique_ptr< MathLib::PiecewiseLinearInterpolation >> const &curves) |
static std::pair< Eigen::Vector3d, Eigen::Vector3d > | parseLineSegment (BaseLib::ConfigTree const &config) |
Returns a line segment represented by its begin and end points. More... | |
std::unique_ptr< DeactivatedSubdomain const > | createDeactivatedSubdomain (BaseLib::ConfigTree const &config, MeshLib::Mesh const &mesh, std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const ¶meters, std::map< std::string, std::unique_ptr< MathLib::PiecewiseLinearInterpolation >> const &curves) |
std::vector< std::unique_ptr< DeactivatedSubdomain const > > | createDeactivatedSubdomains (BaseLib::ConfigTree const &config, MeshLib::Mesh const &mesh, std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const ¶meters, std::map< std::string, std::unique_ptr< MathLib::PiecewiseLinearInterpolation >> const &curves) |
std::unique_ptr< AbstractJacobianAssembler > | createJacobianAssembler (std::optional< BaseLib::ConfigTree > const &config) |
static std::unique_ptr< ProcessData > | makeProcessData (std::unique_ptr< NumLib::TimeStepAlgorithm > &×tepper, NumLib::NonlinearSolverBase &nonlinear_solver, int const process_id, Process &process, std::unique_ptr< NumLib::TimeDiscretization > &&time_disc, std::unique_ptr< NumLib::ConvergenceCriterion > &&conv_crit, bool const compensate_non_equilibrium_initial_residuum) |
std::vector< std::unique_ptr< ProcessData > > | createPerProcessData (BaseLib::ConfigTree const &config, std::vector< std::unique_ptr< Process >> const &processes, std::map< std::string, std::unique_ptr< NumLib::NonlinearSolverBase >> const &nonlinear_solvers) |
std::unique_ptr< TimeLoop > | createTimeLoop (BaseLib::ConfigTree const &config, std::string const &output_directory, std::vector< std::unique_ptr< Process >> const &processes, std::map< std::string, std::unique_ptr< NumLib::NonlinearSolverBase >> const &nonlinear_solvers, std::vector< std::unique_ptr< MeshLib::Mesh >> const &meshes) |
Builds a TimeLoop from the given configuration. More... | |
template<int DisplacementDim, int NPOINTS, typename N_Type , typename HMatrixType > | |
void | computeHMatrix (N_Type const &N, HMatrixType &H) |
Fills a H-matrix based on given shape function. More... | |
std::unique_ptr< Output > | createOutput (const BaseLib::ConfigTree &config, std::string const &output_directory, std::vector< std::unique_ptr< MeshLib::Mesh >> const &meshes) |
void | createSecondaryVariables (BaseLib::ConfigTree const &config, SecondaryVariableCollection &secondary_variables) |
void | addIntegrationPointWriter (MeshLib::Mesh &mesh, std::vector< std::unique_ptr< IntegrationPointWriter >> const &integration_point_writer) |
IntegrationPointMetaData | getIntegrationPointMetaData (MeshLib::Mesh const &mesh, std::string const &name) |
void | addProcessDataToMesh (const double t, std::vector< GlobalVector * > const &x, int const process_id, MeshLib::Mesh &mesh, [[maybe_unused]] std::vector< NumLib::LocalToGlobalIndexMap const * > const &bulk_dof_tables, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table, std::vector< std::reference_wrapper< ProcessVariable >> const &process_variables, SecondaryVariableCollection const &secondary_variables, bool const output_secondary_variable, std::vector< std::unique_ptr< IntegrationPointWriter >> const *const integration_point_writer, OutputDataSpecification const &process_output) |
void | makeOutput (std::string const &file_name, MeshLib::Mesh const &mesh, bool const compress_output, int const data_mode) |
void | addProcessDataToMesh (const double t, std::vector< GlobalVector * > const &x, int const process_id, MeshLib::Mesh &mesh, std::vector< NumLib::LocalToGlobalIndexMap const * > const &bulk_dof_tables, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_tables, std::vector< std::reference_wrapper< ProcessVariable >> const &process_variables, SecondaryVariableCollection const &secondary_variables, bool const output_secondary_variable, std::vector< std::unique_ptr< IntegrationPointWriter >> const *integration_point_writer, OutputDataSpecification const &process_output) |
Prepare the output data, i.e. add the solution to vtu data structure. More... | |
template<typename LocalAssemblerCollection > | |
SecondaryVariableFunctions | makeExtrapolator (const unsigned num_components, NumLib::Extrapolator &extrapolator, LocalAssemblerCollection const &local_assemblers, typename NumLib::ExtrapolatableLocalAssemblerCollection< LocalAssemblerCollection >::IntegrationPointValuesMethod integration_point_values_method) |
void | preTimestepForAllProcesses (double const t, double const dt, std::vector< std::unique_ptr< ProcessData >> const &per_process_data, std::vector< GlobalVector * > const &_process_solutions) |
void | postTimestepForAllProcesses (double const t, double const dt, std::vector< std::unique_ptr< ProcessData >> const &per_process_data, std::vector< GlobalVector * > const &process_solutions, std::vector< GlobalVector * > const &process_solutions_prev, std::vector< std::size_t > &xdot_vector_ids) |
template<NumLib::ODESystemTag ODETag> | |
void | setTimeDiscretizedODESystem (ProcessData &process_data, NumLib::ODESystem< ODETag, NumLib::NonlinearSolverTag::Picard > &ode_sys) |
void | setTimeDiscretizedODESystem (ProcessData &process_data) |
std::pair< std::vector< GlobalVector * >, std::vector< GlobalVector * > > | setInitialConditions (double const t0, std::vector< std::unique_ptr< ProcessData >> const &per_process_data) |
void | calculateNonEquilibriumInitialResiduum (std::vector< std::unique_ptr< ProcessData >> const &per_process_data, std::vector< GlobalVector * > process_solutions, std::vector< GlobalVector * > const &process_solutions_prev) |
NumLib::NonlinearSolverStatus | solveOneTimeStepOneProcess (std::vector< GlobalVector * > &x, std::vector< GlobalVector * > const &x_prev, std::size_t const timestep, double const t, double const delta_t, ProcessData const &process_data, Output &output_control, std::size_t &xdot_id) |
static NumLib::NonlinearSolverStatus | solveMonolithicProcess (const double t, const double dt, const std::size_t timestep_id, ProcessData const &process_data, std::vector< GlobalVector * > &x, std::vector< GlobalVector * > const &x_prev, Output &output, std::size_t &xdot_id) |
GlobalVector | computeResiduum (GlobalVector const &x, GlobalVector const &xdot, GlobalMatrix const &M, GlobalMatrix const &K, GlobalVector const &b) |
template<int GlobalDim, template< typename, typename, int > class LocalAssemblerImplementation, typename LocalAssemblerInterface , typename... ExtraCtorArgs> | |
void | createLocalAssemblers (NumLib::LocalToGlobalIndexMap const &dof_table, const unsigned shapefunction_order, std::vector< MeshLib::Element * > const &mesh_elements, std::vector< std::unique_ptr< LocalAssemblerInterface >> &local_assemblers, ExtraCtorArgs &&... extra_ctor_args) |
template<template< typename, typename, int > class LocalAssemblerImplementation, typename LocalAssemblerInterface , typename... ExtraCtorArgs> | |
void | createLocalAssemblers (const unsigned dimension, std::vector< MeshLib::Element * > const &mesh_elements, NumLib::LocalToGlobalIndexMap const &dof_table, const unsigned shapefunction_order, std::vector< std::unique_ptr< LocalAssemblerInterface >> &local_assemblers, ExtraCtorArgs &&... extra_ctor_args) |
ProcessVariable & | findProcessVariable (std::vector< ProcessVariable > const &variables, BaseLib::ConfigTree const &pv_config, std::string const &tag) |
std::vector< std::reference_wrapper< ProcessVariable > > | findProcessVariables (std::vector< ProcessVariable > const &variables, BaseLib::ConfigTree const &pv_config, std::initializer_list< std::string > tags) |
std::vector< std::reference_wrapper< ProcessVariable > > | findProcessVariables (std::vector< ProcessVariable > const &variables, BaseLib::ConfigTree const &pv_config, std::string const &tag) |
template<int DisplacementDim, typename IntegrationPointData , typename MemberType > | |
std::vector< double > const & | getIntegrationPointKelvinVectorData (std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> const &ip_data, MemberType member, std::vector< double > &cache) |
template<int DisplacementDim, typename IntegrationPointData , typename MemberType > | |
std::vector< double > | getIntegrationPointKelvinVectorData (std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> const &ip_data, MemberType member) |
template<int DisplacementDim, typename IntegrationPointData , typename MemberType > | |
std::size_t | setIntegrationPointKelvinVectorData (double const *values, std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> &ip_data, MemberType member) |
template<typename IntegrationPointData , typename MemberType > | |
std::vector< double > const & | getIntegrationPointScalarData (std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> const &ip_data, MemberType member, std::vector< double > &cache) |
template<typename IntegrationPointData , typename MemberType > | |
std::size_t | setIntegrationPointScalarData (double const *values, std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> &ip_data, MemberType member) |
template<typename IntegrationPointData , typename MemberType , typename MaterialStateVariables > | |
std::vector< double > | getIntegrationPointDataMaterialStateVariables (std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> const &ip_data_vector, MemberType member, std::function< BaseLib::DynamicSpan< double >(MaterialStateVariables &)> get_values_span, int const n_components) |
template<typename IntegrationPointData , typename MemberType , typename MaterialStateVariables > | |
std::size_t | setIntegrationPointDataMaterialStateVariables (double const *values, std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> &ip_data_vector, MemberType member, std::function< BaseLib::DynamicSpan< double >(MaterialStateVariables &)> get_values_span) |
template<int Components, typename StoreValuesFunction > | |
std::vector< double > | transposeInPlace (StoreValuesFunction const &store_values_function) |
Variables | |
static constexpr std::string_view | timestepper_cannot_reduce_dt |
Definition at line 19 of file HCNonAdvectiveFreeComponentFlowBoundaryCondition.h.
using ProcessLib::LocalAssemblerTraits = typedef detail::LocalAssemblerTraitsFixed<ShpPol, NNodes, NodalDOF, Dim> |
Definition at line 186 of file LocalAssemblerTraits.h.
using ProcessLib::NeumannBoundaryCondition = typedef GenericNaturalBoundaryCondition<NeumannBoundaryConditionData, NeumannBoundaryConditionLocalAssembler> |
Definition at line 19 of file NeumannBoundaryCondition.h.
using ProcessLib::RobinBoundaryCondition = typedef GenericNaturalBoundaryCondition<RobinBoundaryConditionData, RobinBoundaryConditionLocalAssembler> |
Definition at line 18 of file RobinBoundaryCondition.h.
using ProcessLib::Trafo = typedef ProcessLib::TrafoScale |
Definition at line 87 of file VariableTransformation.h.
Definition at line 19 of file VariableDependentNeumannBoundaryCondition.h.
|
strong |
Writes output to the given file_name
using the specified file format.
See Output::_output_file_data_mode documentation for the data_mode parameter.
Enumerator | |
---|---|
vtk | |
xdmf |
Definition at line 50 of file ProcessOutput.h.
void ProcessLib::addIntegrationPointWriter | ( | MeshLib::Mesh & | mesh, |
std::vector< std::unique_ptr< IntegrationPointWriter >> const & | integration_point_writer | ||
) |
Add integration point data the the mesh's properties.
Adds all integration point data arrays given by the input vector and the corresponding meta data as VTK's field data. Integration point data stored as field data (contrary to point or cell data), as plain double arrays. The data is supplemented with information in JSON format, which is stored as array of characters.
Definition at line 91 of file IntegrationPointWriter.cpp.
References addIntegrationPointData(), and addIntegrationPointMetaData().
Referenced by addProcessDataToMesh().
void ProcessLib::addProcessDataToMesh | ( | const double | t, |
std::vector< GlobalVector * > const & | x, | ||
int const | process_id, | ||
MeshLib::Mesh & | mesh, | ||
[[maybe_unused] ] std::vector< NumLib::LocalToGlobalIndexMap const * > const & | bulk_dof_tables, | ||
std::vector< NumLib::LocalToGlobalIndexMap const * > const & | dof_table, | ||
std::vector< std::reference_wrapper< ProcessVariable >> const & | process_variables, | ||
SecondaryVariableCollection const & | secondary_variables, | ||
bool const | output_secondary_variable, | ||
std::vector< std::unique_ptr< IntegrationPointWriter >> const *const | integration_point_writer, | ||
OutputDataSpecification const & | process_output | ||
) |
Definition at line 137 of file ProcessOutput.cpp.
References addIntegrationPointWriter(), addOgsVersion(), addSecondaryVariableNodes(), addSecondaryVariableResiduals(), DBUG(), MeshLib::Properties::existsPropertyVector(), MeshLib::Mesh::getName(), ProcessLib::ProcessVariable::getName(), ProcessLib::ProcessVariable::getNumberOfGlobalComponents(), MeshLib::Mesh::getProperties(), MeshLib::Properties::getPropertyVector(), MeshLib::NodePartitionedMesh::isGhostNode(), MaterialPropertyLib::name, MeshLib::Node, OGS_FATAL, ProcessLib::OutputDataSpecification::output_residuals, and ProcessLib::OutputDataSpecification::output_variables.
Referenced by ProcessLib::Output::doOutputAlways(), and ProcessLib::Output::doOutputNonlinearIteration().
void ProcessLib::addProcessDataToMesh | ( | const double | t, |
std::vector< GlobalVector * > const & | x, | ||
int const | process_id, | ||
MeshLib::Mesh & | mesh, | ||
std::vector< NumLib::LocalToGlobalIndexMap const * > const & | bulk_dof_tables, | ||
std::vector< NumLib::LocalToGlobalIndexMap const * > const & | dof_tables, | ||
std::vector< std::reference_wrapper< ProcessVariable >> const & | process_variables, | ||
SecondaryVariableCollection const & | secondary_variables, | ||
bool const | output_secondary_variable, | ||
std::vector< std::unique_ptr< IntegrationPointWriter >> const * | integration_point_writer, | ||
OutputDataSpecification const & | process_output | ||
) |
Prepare the output data, i.e. add the solution to vtu data structure.
OGS_EXPORT_SYMBOL void ProcessLib::bheInflowpythonBindBoundaryCondition | ( | pybind11::module & | m | ) |
Creates BHE Inflow Python bindings for the Python BC class.
Definition at line 64 of file BHEInflowPythonBoundaryConditionModule.cpp.
References ProcessLib::BHEInflowPythonBoundaryConditionPythonSideInterface::tespySolver().
Referenced by PYBIND11_EMBEDDED_MODULE().
void ProcessLib::calculateNonEquilibriumInitialResiduum | ( | std::vector< std::unique_ptr< ProcessData >> const & | per_process_data, |
std::vector< GlobalVector * > | process_solutions, | ||
std::vector< GlobalVector * > const & | process_solutions_prev | ||
) |
Definition at line 251 of file TimeLoop.cpp.
References INFO(), and anonymous_namespace{TimeLoop.cpp}::setEquationSystem().
Referenced by ProcessLib::TimeLoop::loop().
void ProcessLib::checkParametersOfDirichletBoundaryCondition | ( | MeshLib::Mesh const & | bc_mesh, |
NumLib::LocalToGlobalIndexMap const & | dof_table_bulk, | ||
int const | variable_id, | ||
int const | component_id | ||
) |
Definition at line 23 of file DirichletBoundaryConditionAuxiliaryFunctions.cpp.
References DBUG(), MeshLib::Properties::existsPropertyVector(), MeshLib::Mesh::getName(), MeshLib::Mesh::getNodes(), NumLib::LocalToGlobalIndexMap::getNumberOfVariableComponents(), NumLib::LocalToGlobalIndexMap::getNumberOfVariables(), MeshLib::Mesh::getProperties(), and OGS_FATAL.
Referenced by ProcessLib::DirichletBoundaryCondition::DirichletBoundaryCondition(), ProcessLib::PrimaryVariableConstraintDirichletBoundaryCondition::PrimaryVariableConstraintDirichletBoundaryCondition(), ProcessLib::SolutionDependentDirichletBoundaryCondition::SolutionDependentDirichletBoundaryCondition(), ProcessLib::DeactivatedSubdomainDirichlet::config(), and ProcessLib::DirichletBoundaryConditionWithinTimeInterval::config().
void ProcessLib::computeHMatrix | ( | N_Type const & | N, |
HMatrixType & | H | ||
) |
Fills a H-matrix based on given shape function.
Definition at line 53 of file HMatrixUtils.h.
Referenced by ProcessLib::LIE::HydroMechanics::HydroMechanicsLocalAssemblerFracture< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, GlobalDim >::HydroMechanicsLocalAssemblerFracture(), and ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, IntegrationMethod, DisplacementDim >::SmallDeformationLocalAssemblerFracture().
GlobalVector ProcessLib::computeResiduum | ( | GlobalVector const & | x, |
GlobalVector const & | xdot, | ||
GlobalMatrix const & | M, | ||
GlobalMatrix const & | K, | ||
GlobalVector const & | b | ||
) |
Computes the residuum r = -M*x_dot - K*x + b. Negation for consistency with the Newton scheme.
Definition at line 16 of file ComputeResiduum.cpp.
References MathLib::LinAlg::axpy(), MathLib::LinAlg::matMult(), MathLib::LinAlg::matMultAdd(), and MathLib::LinAlg::scale().
Referenced by ProcessLib::LiquidFlow::LiquidFlowProcess::assembleConcreteProcess(), and ProcessLib::HeatConduction::HeatConductionProcess::assembleConcreteProcess().
std::unique_ptr<BHEInflowPythonBoundaryCondition<BHEType> > ProcessLib::createBHEInflowPythonBoundaryCondition | ( | std::pair< GlobalIndexType, GlobalIndexType > && | in_out_global_indices, |
BHEType & | bhe, | ||
BHEInflowPythonBoundaryConditionPythonSideInterface & | py_bc_object | ||
) |
Definition at line 96 of file BHEInflowPythonBoundaryCondition.h.
References DBUG(), and OGS_FATAL.
Referenced by ProcessLib::HeatTransportBHE::HeatTransportBHEProcess::createBHEBoundaryConditionTopBottom().
std::unique_ptr< BoundaryCondition > ProcessLib::createBoundaryCondition | ( | const BoundaryConditionConfig & | config, |
const NumLib::LocalToGlobalIndexMap & | dof_table, | ||
const MeshLib::Mesh & | bulk_mesh, | ||
const int | variable_id, | ||
const unsigned | integration_order, | ||
const unsigned | shapefunction_order, | ||
const std::vector< std::unique_ptr< ParameterLib::ParameterBase >> & | parameters, | ||
const Process & | process | ||
) |
Definition at line 35 of file CreateBoundaryCondition.cpp.
References ProcessLib::BoundaryConditionConfig::boundary_mesh, ProcessLib::BoundaryConditionConfig::component_id, ProcessLib::BoundaryConditionConfig::config, createConstraintDirichletBoundaryCondition(), createDirichletBoundaryCondition(), createDirichletBoundaryConditionWithinTimeInterval(), createHCNonAdvectiveFreeComponentFlowBoundaryCondition(), createNeumannBoundaryCondition(), createPhaseFieldIrreversibleDamageOracleBoundaryCondition(), createPrimaryVariableConstraintDirichletBoundaryCondition(), createPythonBoundaryCondition(), createRobinBoundaryCondition(), createSolutionDependentDirichletBoundaryCondition(), createVariableDependentNeumannBoundaryCondition(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getID(), MeshLib::Mesh::isAxiallySymmetric(), OGS_FATAL, and BaseLib::ConfigTree::peekConfigParameter().
Referenced by ProcessLib::ProcessVariable::createBoundaryConditions().
std::unique_ptr< CentralDifferencesJacobianAssembler > ProcessLib::createCentralDifferencesJacobianAssembler | ( | BaseLib::ConfigTree const & | config | ) |
Definition at line 148 of file CentralDifferencesJacobianAssembler.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), BaseLib::ConfigTree::getConfigParameterOptional(), and OGS_FATAL.
Referenced by createJacobianAssembler().
std::unique_ptr< CompareJacobiansJacobianAssembler > ProcessLib::createCompareJacobiansJacobianAssembler | ( | BaseLib::ConfigTree const & | config | ) |
Definition at line 401 of file CompareJacobiansJacobianAssembler.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), createJacobianAssembler(), BaseLib::ConfigTree::getConfigParameter(), and BaseLib::ConfigTree::getConfigSubtree().
Referenced by createJacobianAssembler().
std::unique_ptr< ConstraintDirichletBoundaryCondition > ProcessLib::createConstraintDirichletBoundaryCondition | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | bc_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table_bulk, | ||
int const | variable_id, | ||
unsigned const | integration_order, | ||
int const | component_id, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const & | parameters, | ||
Process const & | constraining_process | ||
) |
The function parses the config tree and creates a ConstraintDirichletBoundaryCondition.
Definition at line 229 of file ConstraintDirichletBoundaryCondition.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), DBUG(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), ProcessLib::Process::getMesh(), MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), ProcessLib::Process::getProcessVariables(), ProcessLib::Process::isMonolithicSchemeUsed(), and OGS_FATAL.
Referenced by createBoundaryCondition().
std::unique_ptr<DeactivatedSubdomain const> ProcessLib::createDeactivatedSubdomain | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | mesh, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const & | parameters, | ||
std::map< std::string, std::unique_ptr< MathLib::PiecewiseLinearInterpolation >> const & | curves | ||
) |
Definition at line 172 of file CreateDeactivatedSubdomain.cpp.
References createDeactivatedSubdomainMesh(), DBUG(), BaseLib::ConfigTree::getConfigParameter(), BaseLib::ConfigTree::getConfigParameterOptional(), BaseLib::ConfigTree::getConfigSubtreeOptional(), MeshLib::materialIDs(), OGS_FATAL, parseLineSegment(), and parseTimeIntervalOrCurve().
Referenced by createDeactivatedSubdomains().
|
static |
Definition at line 64 of file CreateDeactivatedSubdomain.cpp.
References MeshLib::cloneElements(), MeshLib::createMeshFromElementSelection(), extractInnerAndOuterNodes(), MeshLib::Mesh::getElements(), and MeshLib::materialIDs().
Referenced by createDeactivatedSubdomain().
std::vector< std::unique_ptr< DeactivatedSubdomain const > > ProcessLib::createDeactivatedSubdomains | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | mesh, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const & | parameters, | ||
std::map< std::string, std::unique_ptr< MathLib::PiecewiseLinearInterpolation >> const & | curves | ||
) |
Definition at line 270 of file CreateDeactivatedSubdomain.cpp.
References createDeactivatedSubdomain(), BaseLib::ConfigTree::getConfigSubtreeOptional(), and INFO().
std::unique_ptr< DirichletBoundaryCondition > ProcessLib::createDirichletBoundaryCondition | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | bc_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table_bulk, | ||
int const | variable_id, | ||
int const | component_id, | ||
const std::vector< std::unique_ptr< ParameterLib::ParameterBase >> & | parameters | ||
) |
Definition at line 57 of file DirichletBoundaryCondition.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), DBUG(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getNumberOfElements(), and MeshLib::Mesh::getNumberOfNodes().
Referenced by createBoundaryCondition().
std::unique_ptr< BoundaryCondition > ProcessLib::createDirichletBoundaryConditionWithinTimeInterval | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | bc_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table_bulk, | ||
int const | variable_id, | ||
int const | component_id, | ||
const std::vector< std::unique_ptr< ParameterLib::ParameterBase >> & | parameters | ||
) |
Definition at line 20 of file CreateDirichletBoundaryConditionWithinTimeInterval.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), BaseLib::createTimeInterval(), DBUG(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), and BaseLib::ConfigTree::peekConfigParameter().
Referenced by createBoundaryCondition().
std::unique_ptr< HCNonAdvectiveFreeComponentFlowBoundaryCondition > ProcessLib::createHCNonAdvectiveFreeComponentFlowBoundaryCondition | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | bc_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table, | ||
int const | variable_id, | ||
int const | component_id, | ||
unsigned const | integration_order, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const & | parameters, | ||
unsigned const | global_dim, | ||
Process const & | process, | ||
unsigned const | shapefunction_order | ||
) |
Definition at line 19 of file HCNonAdvectiveFreeComponentFlowBoundaryCondition.cpp.
References MeshLib::Cell, BaseLib::ConfigTree::checkConfigParameter(), DBUG(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getName(), MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), MeshLib::Mesh::getProperties(), and OGS_FATAL.
Referenced by createBoundaryCondition().
std::unique_ptr< AbstractJacobianAssembler > ProcessLib::createJacobianAssembler | ( | std::optional< BaseLib::ConfigTree > const & | config | ) |
Definition at line 20 of file CreateJacobianAssembler.cpp.
References createCentralDifferencesJacobianAssembler(), createCompareJacobiansJacobianAssembler(), and OGS_FATAL.
Referenced by createCompareJacobiansJacobianAssembler(), and ProjectData::parseProcesses().
void ProcessLib::createLocalAssemblers | ( | const unsigned | dimension, |
std::vector< MeshLib::Element * > const & | mesh_elements, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table, | ||
const unsigned | shapefunction_order, | ||
std::vector< std::unique_ptr< LocalAssemblerInterface >> & | local_assemblers, | ||
ExtraCtorArgs &&... | extra_ctor_args | ||
) |
Creates local assemblers for each element of the given mesh
.
LocalAssemblerImplementation | the individual local assembler type |
LocalAssemblerInterface | the general local assembler interface |
ExtraCtorArgs | types of additional constructor arguments. Those arguments will be passed to the constructor of LocalAssemblerImplementation . |
The first two template parameters cannot be deduced from the arguments. Therefore they always have to be provided manually.
Definition at line 64 of file CreateLocalAssemblers.h.
void ProcessLib::createLocalAssemblers | ( | NumLib::LocalToGlobalIndexMap const & | dof_table, |
const unsigned | shapefunction_order, | ||
std::vector< MeshLib::Element * > const & | mesh_elements, | ||
std::vector< std::unique_ptr< LocalAssemblerInterface >> & | local_assemblers, | ||
ExtraCtorArgs &&... | extra_ctor_args | ||
) |
Definition at line 23 of file CreateLocalAssemblers.h.
References DBUG(), and NumLib::SerialExecutor::transformDereferenced().
std::unique_ptr< NeumannBoundaryCondition > ProcessLib::createNeumannBoundaryCondition | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | bc_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table, | ||
int const | variable_id, | ||
int const | component_id, | ||
unsigned const | integration_order, | ||
unsigned const | shapefunction_order, | ||
unsigned const | global_dim, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const & | parameters | ||
) |
Definition at line 17 of file NeumannBoundaryCondition.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), DBUG(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getName(), MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), and OGS_FATAL.
Referenced by createBoundaryCondition().
std::unique_ptr< SourceTerm > ProcessLib::createNodalSourceTerm | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | st_mesh, | ||
std::unique_ptr< NumLib::LocalToGlobalIndexMap > | dof_table, | ||
std::size_t const | source_term_mesh_id, | ||
const int | variable_id, | ||
const int | component_id, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const & | parameters | ||
) |
Definition at line 20 of file CreateNodalSourceTerm.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), DBUG(), and BaseLib::ConfigTree::getConfigParameter().
Referenced by createSourceTerm().
std::unique_ptr< Output > ProcessLib::createOutput | ( | const BaseLib::ConfigTree & | config, |
std::string const & | output_directory, | ||
std::vector< std::unique_ptr< MeshLib::Mesh >> const & | meshes | ||
) |
Definition at line 25 of file CreateOutput.cpp.
References DBUG(), BaseLib::ConfigTree::getConfigParameter(), BaseLib::ConfigTree::getConfigSubtree(), BaseLib::ConfigTree::getConfigSubtreeOptional(), INFO(), BaseLib::makeVectorUnique(), OGS_FATAL, vtk, and xdmf.
Referenced by createTimeLoop().
std::vector< std::unique_ptr< ProcessData > > ProcessLib::createPerProcessData | ( | BaseLib::ConfigTree const & | config, |
std::vector< std::unique_ptr< Process >> const & | processes, | ||
std::map< std::string, std::unique_ptr< NumLib::NonlinearSolverBase >> const & | nonlinear_solvers | ||
) |
Definition at line 65 of file CreateProcessData.cpp.
References NumLib::createConvergenceCriterion(), NumLib::createTimeDiscretization(), NumLib::createTimeStepper(), BaseLib::ConfigTree::getConfigSubtreeList(), BaseLib::getIfOrError(), BaseLib::getOrError(), INFO(), makeProcessData(), and OGS_FATAL.
Referenced by createTimeLoop().
std::unique_ptr< PhaseFieldIrreversibleDamageOracleBoundaryCondition > ProcessLib::createPhaseFieldIrreversibleDamageOracleBoundaryCondition | ( | BaseLib::ConfigTree const & | config, |
NumLib::LocalToGlobalIndexMap const & | dof_table, | ||
MeshLib::Mesh const & | mesh, | ||
int const | variable_id, | ||
int const | component_id | ||
) |
Definition at line 69 of file PhaseFieldIrreversibleDamageOracleBoundaryCondition.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), and DBUG().
Referenced by createBoundaryCondition().
std::unique_ptr< PrimaryVariableConstraintDirichletBoundaryCondition > ProcessLib::createPrimaryVariableConstraintDirichletBoundaryCondition | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | bc_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table_bulk, | ||
int const | variable_id, | ||
int const | component_id, | ||
const std::vector< std::unique_ptr< ParameterLib::ParameterBase >> & | parameters | ||
) |
Definition at line 107 of file PrimaryVariableConstraintDirichletBoundaryCondition.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), DBUG(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), and OGS_FATAL.
Referenced by createBoundaryCondition().
std::unique_ptr< PythonBoundaryCondition > ProcessLib::createPythonBoundaryCondition | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | boundary_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table, | ||
std::size_t | bulk_mesh_id, | ||
int const | variable_id, | ||
int const | component_id, | ||
unsigned const | integration_order, | ||
unsigned const | shapefunction_order, | ||
unsigned const | global_dim | ||
) |
Creates a new PythonBoundaryCondition object.
Definition at line 168 of file PythonBoundaryCondition.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), NumLib::LocalToGlobalIndexMap::getGlobalComponent(), MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), NumLib::LocalToGlobalIndexMap::getNumberOfVariableComponents(), NumLib::LocalToGlobalIndexMap::getNumberOfVariables(), and OGS_FATAL.
Referenced by createBoundaryCondition().
std::unique_ptr< SourceTerm > ProcessLib::createPythonSourceTerm | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | source_term_mesh, | ||
std::unique_ptr< NumLib::LocalToGlobalIndexMap > | dof_table, | ||
int const | variable_id, | ||
int const | component_id, | ||
unsigned const | integration_order, | ||
unsigned const | shapefunction_order, | ||
unsigned const | global_dim | ||
) |
Definition at line 23 of file CreatePythonSourceTerm.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), DBUG(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getID(), MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), and OGS_FATAL.
Referenced by createSourceTerm().
std::unique_ptr< RobinBoundaryCondition > ProcessLib::createRobinBoundaryCondition | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | bc_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table, | ||
int const | variable_id, | ||
int const | component_id, | ||
unsigned const | integration_order, | ||
unsigned const | shapefunction_order, | ||
unsigned const | global_dim, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const & | parameters | ||
) |
Creates a new uniform Robin boundary condition from the given data.
The Robin boundary condition is given in the form \( \alpha \cdot [ u_0 - u(x) ] \), where the coefficients \( \alpha \) and \( u_0 \) are obtained from the config
, and \( u \) is the unknown to which the boundary condition is applied.
The value \( \alpha \cdot [ u_0 - u(x) ] \) is a flux. It replaces the integrand in the boundary integral for the variable \( u \).
Definition at line 17 of file RobinBoundaryCondition.cpp.
References MaterialPropertyLib::alpha, BaseLib::ConfigTree::checkConfigParameter(), DBUG(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getName(), MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), and OGS_FATAL.
Referenced by createBoundaryCondition().
void ProcessLib::createSecondaryVariables | ( | BaseLib::ConfigTree const & | config, |
SecondaryVariableCollection & | secondary_variables | ||
) |
Definition at line 18 of file CreateSecondaryVariables.cpp.
References ProcessLib::SecondaryVariableCollection::addNameMapping(), BaseLib::ConfigTree::getConfigSubtreeOptional(), and WARN().
Referenced by ProcessLib::ComponentTransport::createComponentTransportProcess(), ProcessLib::HeatConduction::createHeatConductionProcess(), ProcessLib::HeatTransportBHE::createHeatTransportBHEProcess(), ProcessLib::HT::createHTProcess(), ProcessLib::LIE::HydroMechanics::createHydroMechanicsProcess(), ProcessLib::HydroMechanics::createHydroMechanicsProcess(), ProcessLib::LiquidFlow::createLiquidFlowProcess(), ProcessLib::PhaseField::createPhaseFieldProcess(), ProcessLib::RichardsComponentTransport::createRichardsComponentTransportProcess(), ProcessLib::RichardsFlow::createRichardsFlowProcess(), ProcessLib::RichardsMechanics::createRichardsMechanicsProcess(), ProcessLib::SmallDeformationNonlocal::createSmallDeformationNonlocalProcess(), ProcessLib::LIE::SmallDeformation::createSmallDeformationProcess(), ProcessLib::SmallDeformation::createSmallDeformationProcess(), ProcessLib::SteadyStateDiffusion::createSteadyStateDiffusion(), ProcessLib::StokesFlow::createStokesFlowProcess(), ProcessLib::TES::createTESProcess(), ProcessLib::TH2M::createTH2MProcess(), ProcessLib::ThermalTwoPhaseFlowWithPP::createThermalTwoPhaseFlowWithPPProcess(), ProcessLib::ThermoHydroMechanics::createThermoHydroMechanicsProcess(), ProcessLib::ThermoMechanicalPhaseField::createThermoMechanicalPhaseFieldProcess(), ProcessLib::ThermoMechanics::createThermoMechanicsProcess(), ProcessLib::ThermoRichardsFlow::createThermoRichardsFlowProcess(), ProcessLib::ThermoRichardsMechanics::createThermoRichardsMechanicsProcess(), ProcessLib::TwoPhaseFlowWithPP::createTwoPhaseFlowWithPPProcess(), and ProcessLib::TwoPhaseFlowWithPrho::createTwoPhaseFlowWithPrhoProcess().
std::unique_ptr< SolutionDependentDirichletBoundaryCondition > ProcessLib::createSolutionDependentDirichletBoundaryCondition | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | bc_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table_bulk, | ||
int const | variable_id, | ||
int const | component_id, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const & | parameters | ||
) |
Definition at line 100 of file SolutionDependentDirichletBoundaryCondition.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), DBUG(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getNumberOfElements(), and MeshLib::Mesh::getNumberOfNodes().
Referenced by createBoundaryCondition().
std::unique_ptr< SourceTerm > ProcessLib::createSourceTerm | ( | const SourceTermConfig & | config, |
const NumLib::LocalToGlobalIndexMap & | dof_table_bulk, | ||
const MeshLib::Mesh & | source_term_mesh, | ||
const int | variable_id, | ||
const unsigned | integration_order, | ||
const unsigned | shapefunction_order, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const & | parameters | ||
) |
Definition at line 23 of file CreateSourceTerm.cpp.
References ProcessLib::SourceTermConfig::component_id, ProcessLib::SourceTermConfig::config, createNodalSourceTerm(), createPythonSourceTerm(), createVolumetricSourceTerm(), DBUG(), NumLib::LocalToGlobalIndexMap::deriveBoundaryConstrainedMap(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getID(), MeshLib::MeshSubset::getMesh(), NumLib::LocalToGlobalIndexMap::getMeshSubset(), MeshLib::Mesh::getName(), MeshLib::Mesh::getNodes(), NumLib::LocalToGlobalIndexMap::getNumberOfVariableComponents(), NumLib::LocalToGlobalIndexMap::getNumberOfVariables(), MeshLib::Mesh::getProperties(), ProcessLib::SourceTermConfig::mesh, OGS_FATAL, and BaseLib::ConfigTree::peekConfigParameter().
Referenced by ProcessLib::ProcessVariable::createSourceTerms().
std::unique_ptr< TimeLoop > ProcessLib::createTimeLoop | ( | BaseLib::ConfigTree const & | config, |
std::string const & | output_directory, | ||
const std::vector< std::unique_ptr< Process >> & | processes, | ||
const std::map< std::string, std::unique_ptr< NumLib::NonlinearSolverBase >> & | nonlinear_solvers, | ||
std::vector< std::unique_ptr< MeshLib::Mesh >> const & | meshes | ||
) |
Builds a TimeLoop from the given configuration.
Definition at line 21 of file CreateTimeLoop.cpp.
References NumLib::createConvergenceCriterion(), createOutput(), createPerProcessData(), BaseLib::ConfigTree::getConfigSubtree(), BaseLib::ConfigTree::getConfigSubtreeOptional(), and OGS_FATAL.
Referenced by ProjectData::parseTimeLoop().
std::unique_ptr< VariableDependentNeumannBoundaryCondition > ProcessLib::createVariableDependentNeumannBoundaryCondition | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | bc_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table, | ||
int const | variable_id, | ||
int const | component_id, | ||
unsigned const | integration_order, | ||
unsigned const | shapefunction_order, | ||
unsigned const | global_dim, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const & | parameters | ||
) |
Definition at line 18 of file VariableDependentNeumannBoundaryCondition.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), DBUG(), NumLib::LocalToGlobalIndexMap::deriveBoundaryConstrainedMap(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getName(), MeshLib::Mesh::getNodes(), MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), NumLib::LocalToGlobalIndexMap::getNumberOfVariables(), and OGS_FATAL.
Referenced by createBoundaryCondition().
std::unique_ptr< SourceTerm > ProcessLib::createVolumetricSourceTerm | ( | BaseLib::ConfigTree const & | config, |
unsigned const | bulk_mesh_dimension, | ||
MeshLib::Mesh const & | source_term_mesh, | ||
std::unique_ptr< NumLib::LocalToGlobalIndexMap > | source_term_dof_table, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase >> const & | parameters, | ||
unsigned const | integration_order, | ||
unsigned const | shapefunction_order | ||
) |
Definition at line 22 of file CreateVolumetricSourceTerm.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), DBUG(), BaseLib::ConfigTree::getConfigParameter(), and BaseLib::ConfigTree::peekConfigParameter().
Referenced by createSourceTerm().
|
static |
Definition at line 27 of file CreateDeactivatedSubdomain.cpp.
References MeshLib::Mesh::getElementsConnectedToNode(), MathLib::Point3dWithID::getID(), MeshLib::Mesh::getNode(), MeshLib::Mesh::getNodes(), MeshLib::Mesh::getNumberOfNodes(), MeshLib::Mesh::getProperties(), MeshLib::Node, and OGS_FATAL.
Referenced by createDeactivatedSubdomainMesh().
ProcessVariable& ProcessLib::findProcessVariable | ( | std::vector< ProcessVariable > const & | variables, |
BaseLib::ConfigTree const & | pv_config, | ||
std::string const & | tag | ||
) |
Definition at line 45 of file ProcessUtils.cpp.
References anonymous_namespace{ProcessUtils.cpp}::findVariableByName(), BaseLib::ConfigTree::getConfigParameter(), and MaterialPropertyLib::name.
std::vector< std::reference_wrapper< ProcessVariable > > ProcessLib::findProcessVariables | ( | std::vector< ProcessVariable > const & | variables, |
BaseLib::ConfigTree const & | pv_config, | ||
std::initializer_list< std::string > | tags | ||
) |
Find process variables in variables
whose names match the settings under the given tag_names
in the process_config
.
In the process config a process variable is referenced by a name. For example it will be looking for a variable named "H" in the list of process variables when the tag is "hydraulic_head":
Definition at line 55 of file ProcessUtils.cpp.
References DBUG().
Referenced by ProcessLib::ComponentTransport::createComponentTransportProcess(), ProcessLib::HeatConduction::createHeatConductionProcess(), ProcessLib::HT::createHTProcess(), ProcessLib::HydroMechanics::createHydroMechanicsProcess(), ProcessLib::LiquidFlow::createLiquidFlowProcess(), ProcessLib::PhaseField::createPhaseFieldProcess(), ProcessLib::RichardsComponentTransport::createRichardsComponentTransportProcess(), ProcessLib::RichardsFlow::createRichardsFlowProcess(), ProcessLib::RichardsMechanics::createRichardsMechanicsProcess(), ProcessLib::SmallDeformationNonlocal::createSmallDeformationNonlocalProcess(), ProcessLib::SmallDeformation::createSmallDeformationProcess(), ProcessLib::SteadyStateDiffusion::createSteadyStateDiffusion(), ProcessLib::StokesFlow::createStokesFlowProcess(), ProcessLib::TES::createTESProcess(), ProcessLib::TH2M::createTH2MProcess(), ProcessLib::ThermalTwoPhaseFlowWithPP::createThermalTwoPhaseFlowWithPPProcess(), ProcessLib::ThermoHydroMechanics::createThermoHydroMechanicsProcess(), ProcessLib::ThermoMechanicalPhaseField::createThermoMechanicalPhaseFieldProcess(), ProcessLib::ThermoMechanics::createThermoMechanicsProcess(), ProcessLib::ThermoRichardsFlow::createThermoRichardsFlowProcess(), ProcessLib::ThermoRichardsMechanics::createThermoRichardsMechanicsProcess(), ProcessLib::TwoPhaseFlowWithPP::createTwoPhaseFlowWithPPProcess(), and ProcessLib::TwoPhaseFlowWithPrho::createTwoPhaseFlowWithPrhoProcess().
std::vector< std::reference_wrapper< ProcessVariable > > ProcessLib::findProcessVariables | ( | std::vector< ProcessVariable > const & | variables, |
BaseLib::ConfigTree const & | pv_config, | ||
std::string const & | tag | ||
) |
Definition at line 76 of file ProcessUtils.cpp.
References anonymous_namespace{ProcessUtils.cpp}::findVariableByName(), BaseLib::ConfigTree::getConfigParameterList(), BaseLib::makeVectorUnique(), and OGS_FATAL.
std::vector< double > ProcessLib::getCoupledLocalSolutions | ( | std::vector< GlobalVector * > const & | global_solutions, |
std::vector< std::vector< GlobalIndexType >> const & | indices | ||
) |
Fetch the nodal solutions of all coupled processes from the given vector of global solutions for each process into a flat vector.
Definition at line 32 of file CoupledSolutionsForStaggeredScheme.cpp.
Referenced by ProcessLib::VectorMatrixAssembler::assemble(), ProcessLib::VectorMatrixAssembler::assembleWithJacobian(), ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::computeCrackIntegral(), ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::computeEnergy(), ProcessLib::ComponentTransport::ComponentTransportProcess::getFlux(), ProcessLib::HT::HTProcess::getFlux(), and ProcessLib::HT::StaggeredHTFEM< ShapeFunction, IntegrationMethod, GlobalDim >::getIntPtDarcyVelocity().
void ProcessLib::getEssentialBCValuesLocal | ( | ParameterLib::Parameter< double > const & | parameter, |
MeshLib::Mesh const & | bc_mesh, | ||
std::vector< MeshLib::Node * > const & | nodes_in_bc_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table_boundary, | ||
int const | variable_id, | ||
int const | component_id, | ||
const double | t, | ||
GlobalVector const & | , | ||
NumLib::IndexValueVector< GlobalIndexType > & | bc_values | ||
) |
Definition at line 58 of file DirichletBoundaryConditionAuxiliaryFunctions.cpp.
References NumLib::LocalToGlobalIndexMap::getGlobalIndex(), MeshLib::Mesh::getID(), NumLib::IndexValueVector< IndexType >::ids, MeshLib::Node, NumLib::MeshComponentMap::nop, ParameterLib::SpatialPosition::setCoordinates(), ParameterLib::SpatialPosition::setNodeID(), and NumLib::IndexValueVector< IndexType >::values.
Referenced by ProcessLib::DeactivatedSubdomainDirichlet::getEssentialBCValues(), ProcessLib::DirichletBoundaryCondition::getEssentialBCValues(), ProcessLib::DirichletBoundaryConditionWithinTimeInterval::getEssentialBCValues(), and ProcessLib::SolutionDependentDirichletBoundaryCondition::getEssentialBCValues().
std::vector<double> ProcessLib::getIntegrationPointDataMaterialStateVariables | ( | std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> const & | ip_data_vector, |
MemberType | member, | ||
std::function< BaseLib::DynamicSpan< double >(MaterialStateVariables &)> | get_values_span, | ||
int const | n_components | ||
) |
Definition at line 141 of file SetOrGetIntegrationPointData.h.
std::vector<double> ProcessLib::getIntegrationPointKelvinVectorData | ( | std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> const & | ip_data, |
MemberType | member | ||
) |
Definition at line 51 of file SetOrGetIntegrationPointData.h.
References MathLib::createZeroedMatrix(), MathLib::KelvinVector::kelvin_vector_dimensions(), and MathLib::KelvinVector::kelvinVectorToSymmetricTensor().
std::vector<double> const& ProcessLib::getIntegrationPointKelvinVectorData | ( | std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> const & | ip_data, |
MemberType | member, | ||
std::vector< double > & | cache | ||
) |
Definition at line 25 of file SetOrGetIntegrationPointData.h.
References MathLib::createZeroedMatrix(), MathLib::KelvinVector::kelvin_vector_dimensions(), and MathLib::KelvinVector::kelvinVectorToSymmetricTensor().
IntegrationPointMetaData ProcessLib::getIntegrationPointMetaData | ( | MeshLib::Mesh const & | mesh, |
std::string const & | name | ||
) |
Returns integration point meta data for the given field name.
The data is read from a JSON encoded string stored in field data array.
Definition at line 108 of file IntegrationPointWriter.cpp.
References MeshLib::Properties::existsPropertyVector(), extractIntegrationPointMetaData(), MeshLib::Mesh::getProperties(), MeshLib::IntegrationPoint, MaterialPropertyLib::name, and OGS_FATAL.
Referenced by ProcessLib::HydroMechanics::HydroMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::RichardsMechanics::RichardsMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::SmallDeformation::SmallDeformationProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::TH2M::TH2MProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::ThermoMechanics::ThermoMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowProcess::initializeConcreteProcess(), and ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsProcess< DisplacementDim >::initializeConcreteProcess().
std::vector<double> const& ProcessLib::getIntegrationPointScalarData | ( | std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> const & | ip_data, |
MemberType | member, | ||
std::vector< double > & | cache | ||
) |
Definition at line 103 of file SetOrGetIntegrationPointData.h.
References MathLib::createZeroedMatrix().
Referenced by ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::getIntPtDamage(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtDryDensitySolid(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, IntegrationMethod, GlobalDim >::getIntPtDryDensitySolid(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::getIntPtDryDensitySolid(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtEnthalpyGas(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtEnthalpyLiquid(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtEnthalpySolid(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtGasDensity(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtLiquidDensity(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtMassFractionGas(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtMassFractionLiquid(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtMicroPressure(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtMicroSaturation(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtMoleFractionGas(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtPorosity(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, IntegrationMethod, GlobalDim >::getIntPtPorosity(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::getIntPtPorosity(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtPorosity(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtRelativePermeabilityGas(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtRelativePermeabilityLiquid(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtSaturation(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, IntegrationMethod, GlobalDim >::getIntPtSaturation(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::getIntPtSaturation(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtSaturation(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtSolidDensity(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtTransportPorosity(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::getIntPtTransportPorosity(), and ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtVapourPressure().
SecondaryVariableFunctions ProcessLib::makeExtrapolator | ( | const unsigned | num_components, |
NumLib::Extrapolator & | extrapolator, | ||
LocalAssemblerCollection const & | local_assemblers, | ||
typename NumLib::ExtrapolatableLocalAssemblerCollection< LocalAssemblerCollection >::IntegrationPointValuesMethod | integration_point_values_method | ||
) |
Creates an object that computes a secondary variable via extrapolation of integration point values.
num_components | The number of components of the secondary variable. |
extrapolator | The extrapolator used for extrapolation. |
local_assemblers | The collection of local assemblers whose integration point values will be extrapolated. |
integration_point_values_method | The member function of the local assembler returning/computing the integration point values of the specific property being extrapolated. |
Definition at line 163 of file SecondaryVariable.h.
References NumLib::Extrapolator::calculateResiduals(), NumLib::Extrapolator::extrapolate(), NumLib::Extrapolator::getElementResiduals(), NumLib::Extrapolator::getNodalValues(), and NumLib::makeExtrapolatable().
Referenced by ProcessLib::ComponentTransport::ComponentTransportProcess::initializeConcreteProcess(), ProcessLib::HeatConduction::HeatConductionProcess::initializeConcreteProcess(), ProcessLib::HT::HTProcess::initializeConcreteProcess(), ProcessLib::HydroMechanics::HydroMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::LIE::SmallDeformation::SmallDeformationProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::LiquidFlow::LiquidFlowProcess::initializeConcreteProcess(), ProcessLib::PhaseField::PhaseFieldProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::RichardsComponentTransport::RichardsComponentTransportProcess::initializeConcreteProcess(), ProcessLib::RichardsFlow::RichardsFlowProcess::initializeConcreteProcess(), ProcessLib::RichardsMechanics::RichardsMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::SmallDeformation::SmallDeformationProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::SteadyStateDiffusion::SteadyStateDiffusion::initializeConcreteProcess(), ProcessLib::TH2M::TH2MProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::ThermalTwoPhaseFlowWithPP::ThermalTwoPhaseFlowWithPPProcess::initializeConcreteProcess(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::ThermoMechanics::ThermoMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowProcess::initializeConcreteProcess(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::TwoPhaseFlowWithPP::TwoPhaseFlowWithPPProcess::initializeConcreteProcess(), ProcessLib::TwoPhaseFlowWithPrho::TwoPhaseFlowWithPrhoProcess::initializeConcreteProcess(), and ProcessLib::TES::TESProcess::initializeSecondaryVariables().
void ProcessLib::makeOutput | ( | std::string const & | file_name, |
MeshLib::Mesh const & | mesh, | ||
bool const | compress_output, | ||
int const | data_mode | ||
) |
Definition at line 298 of file ProcessOutput.cpp.
References DBUG(), and MeshLib::IO::VtuInterface::writeToFile().
Referenced by ProcessLib::Output::doOutputNonlinearIteration(), and ProcessLib::Output::outputMesh().
|
static |
Definition at line 21 of file CreateProcessData.cpp.
References OGS_FATAL.
Referenced by createPerProcessData().
|
static |
Returns a line segment represented by its begin and end points.
Definition at line 142 of file CreateDeactivatedSubdomain.cpp.
References DBUG(), BaseLib::ConfigTree::getConfigParameter(), and OGS_FATAL.
Referenced by createDeactivatedSubdomain().
|
static |
Definition at line 89 of file CreateDeactivatedSubdomain.cpp.
References DBUG(), BaseLib::getOrError(), and OGS_FATAL.
Referenced by createDeactivatedSubdomain().
void ProcessLib::postTimestepForAllProcesses | ( | double const | t, |
double const | dt, | ||
std::vector< std::unique_ptr< ProcessData >> const & | per_process_data, | ||
std::vector< GlobalVector * > const & | process_solutions, | ||
std::vector< GlobalVector * > const & | process_solutions_prev, | ||
std::vector< std::size_t > & | xdot_vector_ids | ||
) |
Definition at line 103 of file TimeLoop.cpp.
References anonymous_namespace{TimeLoop.cpp}::isMonolithicProcess(), NumLib::GlobalVectorProvider::provider, and NumLib::VectorProvider::releaseVector().
Referenced by ProcessLib::TimeLoop::loop().
void ProcessLib::preTimestepForAllProcesses | ( | double const | t, |
double const | dt, | ||
std::vector< std::unique_ptr< ProcessData >> const & | per_process_data, | ||
std::vector< GlobalVector * > const & | _process_solutions | ||
) |
OGS_EXPORT_SYMBOL void ProcessLib::pythonBindBoundaryCondition | ( | pybind11::module & | m | ) |
Creates Python bindings for the Python BC class.
Definition at line 49 of file PythonBoundaryConditionModule.cpp.
References ProcessLib::PythonBoundaryConditionPythonSideInterface::getDirichletBCValue(), and ProcessLib::PythonBoundaryConditionPythonSideInterface::getFlux().
Referenced by PYBIND11_EMBEDDED_MODULE().
std::pair<std::vector<GlobalVector*>, std::vector<GlobalVector*> > ProcessLib::setInitialConditions | ( | double const | t0, |
std::vector< std::unique_ptr< ProcessData >> const & | per_process_data | ||
) |
Definition at line 216 of file TimeLoop.cpp.
References NumLib::GlobalVectorProvider::provider.
Referenced by ProcessLib::TimeLoop::initialize(), ProcessLib::HydroMechanics::HydroMechanicsProcess< DisplacementDim >::setInitialConditionsConcreteProcess(), ProcessLib::RichardsMechanics::RichardsMechanicsProcess< DisplacementDim >::setInitialConditionsConcreteProcess(), and ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsProcess< DisplacementDim >::setInitialConditionsConcreteProcess().
std::size_t ProcessLib::setIntegrationPointDataMaterialStateVariables | ( | double const * | values, |
std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> & | ip_data_vector, | ||
MemberType | member, | ||
std::function< BaseLib::DynamicSpan< double >(MaterialStateVariables &)> | get_values_span | ||
) |
Definition at line 167 of file SetOrGetIntegrationPointData.h.
std::size_t ProcessLib::setIntegrationPointKelvinVectorData | ( | double const * | values, |
std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> & | ip_data, | ||
MemberType | member | ||
) |
Definition at line 77 of file SetOrGetIntegrationPointData.h.
References MathLib::KelvinVector::kelvin_vector_dimensions(), and MathLib::KelvinVector::symmetricTensorToKelvinVector().
std::size_t ProcessLib::setIntegrationPointScalarData | ( | double const * | values, |
std::vector< IntegrationPointData, Eigen::aligned_allocator< IntegrationPointData >> & | ip_data, | ||
MemberType | member | ||
) |
Definition at line 124 of file SetOrGetIntegrationPointData.h.
Referenced by ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::setIPDataInitialConditions(), ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::setIPDataInitialConditions(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::setIPDataInitialConditions(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, IntegrationMethod, GlobalDim >::setIPDataInitialConditions(), and ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::setIPDataInitialConditions().
void ProcessLib::setTimeDiscretizedODESystem | ( | ProcessData & | process_data | ) |
Definition at line 210 of file TimeLoop.cpp.
References ProcessLib::ProcessData::process, and setTimeDiscretizedODESystem().
void ProcessLib::setTimeDiscretizedODESystem | ( | ProcessData & | process_data, |
NumLib::ODESystem< ODETag, NumLib::NonlinearSolverTag::Picard > & | ode_sys | ||
) |
Definition at line 157 of file TimeLoop.cpp.
References ProcessLib::ProcessData::nonlinear_solver, OGS_FATAL, ProcessLib::ProcessData::process_id, ProcessLib::ProcessData::tdisc_ode_sys, and ProcessLib::ProcessData::time_disc.
Referenced by ProcessLib::TimeLoop::initialize(), and setTimeDiscretizedODESystem().
|
static |
Definition at line 685 of file TimeLoop.cpp.
References BaseLib::RunTime::elapsed(), INFO(), ProcessLib::ProcessData::process_id, solveOneTimeStepOneProcess(), and BaseLib::RunTime::start().
Referenced by ProcessLib::TimeLoop::solveUncoupledEquationSystems().
NumLib::NonlinearSolverStatus ProcessLib::solveOneTimeStepOneProcess | ( | std::vector< GlobalVector * > & | x, |
std::vector< GlobalVector * > const & | x_prev, | ||
std::size_t const | timestep, | ||
double const | t, | ||
double const | delta_t, | ||
ProcessData const & | process_data, | ||
Output & | output_control, | ||
std::size_t & | xdot_id | ||
) |
Definition at line 279 of file TimeLoop.cpp.
References ProcessLib::ProcessData::conv_crit, ProcessLib::Output::doOutputNonlinearIteration(), NumLib::VectorProvider::getVector(), ProcessLib::ProcessData::nonlinear_solver, ProcessLib::ProcessData::nonlinear_solver_tag, ProcessLib::ProcessData::process, ProcessLib::ProcessData::process_id, NumLib::GlobalVectorProvider::provider, NumLib::VectorProvider::releaseVector(), anonymous_namespace{TimeLoop.cpp}::setEquationSystem(), ProcessLib::ProcessData::tdisc_ode_sys, and ProcessLib::ProcessData::time_disc.
Referenced by ProcessLib::TimeLoop::solveCoupledEquationSystemsByStaggeredScheme(), and solveMonolithicProcess().
std::vector<double> ProcessLib::transposeInPlace | ( | StoreValuesFunction const & | store_values_function | ) |
In-place transpose. A helper function for the integration point data getters. For time being Eigen's transposeInPlace doesn't work for non-square mapped matrices.
Definition at line 23 of file TransposeInPlace.h.
References MathLib::toMatrix().
|
staticconstexpr |
Definition at line 703 of file TimeLoop.cpp.
Referenced by ProcessLib::TimeLoop::solveUncoupledEquationSystems().