OGS
|
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 |
using | NeumannBoundaryCondition |
using | RobinBoundaryCondition |
using | VariableDependentNeumannBoundaryCondition |
using | WellboreCompensateNeumannBoundaryCondition |
template<typename ShpPol , unsigned NNodes, unsigned NodalDOF, int Dim> | |
using | LocalAssemblerTraits |
using | EnabledElementTraitsLagrange |
template<typename LocalAssemblerInterface , template< typename, int > class LocalAssemblerImplementation, NumLib::IntegrationMethodProvider IntegrationMethodProvider, int GlobalDim, typename... ConstructorArgs> | |
using | LocalAssemblerFactory |
By default processes in OGS are defined in 1D, 2D and 3D. | |
template<typename LocalAssemblerInterface , template< typename, int > class LocalAssemblerImplementation, NumLib::IntegrationMethodProvider IntegrationMethodProvider, int GlobalDim, typename... ConstructorArgs> | |
using | LocalAssemblerFactorySD |
Mechanics processes in OGS are defined in 2D and 3D only. | |
template<typename LocalAssemblerInterface , template< typename, typename, int > class LocalAssemblerImplementation, NumLib::IntegrationMethodProvider IntegrationMethodProvider, int GlobalDim, typename... ConstructorArgs> | |
using | LocalAssemblerFactoryHM |
HM processes in OGS are defined for linear and higher order elements. | |
template<typename LocalAssemblerInterface , template< typename, typename, int > class LocalAssemblerImplementation, NumLib::IntegrationMethodProvider IntegrationMethodProvider, int GlobalDim, typename... ConstructorArgs> | |
using | LocalAssemblerFactoryStokes |
Stokes flow in OGS is defined for higher order elements only. | |
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) |
template<int GlobalDim> | |
std::unique_ptr< SourceTerm > | createAnchorTerm (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, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const ¶meters) |
template std::unique_ptr< SourceTerm > | createAnchorTerm< 2 > (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, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const ¶meters) |
template std::unique_ptr< SourceTerm > | createAnchorTerm< 3 > (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, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const ¶meters) |
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::vector< std::reference_wrapper< ProcessVariable > > const &all_process_variables_for_this_process, std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const &media) |
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::vector< std::reference_wrapper< ProcessVariable > > const &all_process_variables_for_this_process) |
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< std::size_t > 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) |
void | getEssentialBCValuesLocal (ParameterLib::Parameter< double > const ¶meter, MeshLib::Mesh const &bc_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_boundary, int const variable_id, int const component_id, const double t, GlobalVector const &x, 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. | |
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::vector< std::reference_wrapper< ProcessVariable > > const &all_process_variables_for_this_process) |
std::unique_ptr< PythonBoundaryCondition > | createPythonBoundaryCondition (BaseLib::ConfigTree const &config, MeshLib::Mesh const &boundary_mesh, NumLib::LocalToGlobalIndexMap const &dof_table_bulk, MeshLib::Mesh const &bulk_mesh, int const variable_id, int const component_id, unsigned const integration_order, unsigned const shapefunction_order, std::vector< std::reference_wrapper< ProcessVariable > > const &all_process_variables_for_this_process) |
Creates a new PythonBoundaryCondition object. | |
void | pythonBindBoundaryCondition (pybind11::module &m) |
Creates Python bindings for the Python BC class. | |
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< WellboreCompensateNeumannBoundaryCondition > | createWellboreCompensateNeumannBoundaryCondition (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::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const &media) |
std::unique_ptr< CentralDifferencesJacobianAssembler > | createCentralDifferencesJacobianAssembler (BaseLib::ConfigTree const &config) |
template<int DisplacementDim> | |
InitialStress | createInitialStress (BaseLib::ConfigTree const &config, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const ¶meters, MeshLib::Mesh const &mesh, bool const mandatory_stress_type) |
template InitialStress | createInitialStress< 2 > (BaseLib::ConfigTree const &config, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const ¶meters, MeshLib::Mesh const &mesh, bool const mandatory_stress_type) |
template InitialStress | createInitialStress< 3 > (BaseLib::ConfigTree const &config, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const ¶meters, MeshLib::Mesh const &mesh, bool const mandatory_stress_type) |
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< std::size_t >, std::vector< std::size_t > > | extractInnerAndOuterNodes (MeshLib::Mesh const &mesh, MeshLib::Mesh const &sub_mesh, IsActive is_active) |
static std::vector< std::vector< std::size_t > > | extractElementsAlongOuterNodes (MeshLib::Mesh const &mesh, MeshLib::Mesh const &sub_mesh, std::vector< std::size_t > const &outer_nodes) |
static DeactivatedSubdomainMesh | createDeactivatedSubdomainMesh (MeshLib::Mesh const &mesh, std::unordered_set< int > const &deactivated_subdomain_material_ids) |
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. | |
DeactivatedSubdomain | 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< DeactivatedSubdomain > | 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 > | createForwardDifferencesJacobianAssembler (BaseLib::ConfigTree const &config) |
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, std::string process_name, 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, bool const compensate_non_equilibrium_initial_residuum, std::vector< double > const &fixed_times_for_output) |
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 > > &meshes, bool const compensate_non_equilibrium_initial_residuum) |
Builds a TimeLoop from the given configuration. | |
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. | |
void | addProcessDataToMesh (NumLib::Time const &t, std::vector< GlobalVector * > const &xs, int const process_id, ProcessOutputData const &process_output_data, bool const output_secondary_variables, OutputDataSpecification const &process_output) |
template<int dim, typename LAIntf > | |
void | computeCellAverages (CellAverageData &cell_average_data, std::vector< std::unique_ptr< LAIntf > > const &local_assemblers) |
std::unique_ptr< OutputFormat > | createOutputFormat (std::string const &output_directory, OutputType const output_type, std::string prefix, std::string suffix, std::string const &data_mode, bool const compress_output, unsigned int const number_of_files, unsigned int const chunk_size_bytes) |
Output | createOutput (OutputConfig &&oc, std::string const &output_directory, std::vector< std::unique_ptr< MeshLib::Mesh > > const &meshes) |
std::vector< Output > | createOutput (const BaseLib::ConfigTree &config, std::string const &output_directory, std::vector< std::unique_ptr< MeshLib::Mesh > > &meshes) |
std::vector< Output > | createOutputs (const BaseLib::ConfigTree &output_configs, std::string const &output_directory, std::vector< std::unique_ptr< MeshLib::Mesh > > &meshes) |
OutputConfig | createOutputConfig (const BaseLib::ConfigTree &config, std::vector< std::unique_ptr< MeshLib::Mesh > > &meshes) |
void | createSecondaryVariables (BaseLib::ConfigTree const &config, SecondaryVariableCollection &secondary_variables) |
void | addBulkMeshPropertyToSubMesh (MeshLib::Mesh const &bulk_mesh, MeshLib::Mesh &sub_mesh, std::string const &property_name) |
std::vector< double > | calculateUniqueFixedTimesForAllOutputs (std::vector< Output > const &outputs) |
std::ostream & | operator<< (std::ostream &os, Output const &output) |
std::ostream & | operator<< (std::ostream &os, PairRepeatEachSteps const &pair) |
std::ostream & | operator<< (std::ostream &os, OutputDataSpecification const &o) |
void | outputMeshVtk (std::string const &file_name, MeshLib::Mesh const &mesh, bool const compress_output, int const data_mode) |
void | outputMeshVtk (OutputVTKFormat const &output_file, MeshLib::IO::PVDFile &pvd_file, MeshLib::Mesh const &mesh, double const t, int const timestep, int const iteration) |
std::ostream & | operator<< (std::ostream &os, OutputFormat const &of) |
ProcessOutputData | createProcessOutputData (Process const &process, std::size_t const n_processes, MeshLib::Mesh &output_mesh) |
Extracts data necessary for output from the given process . | |
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) |
template<typename LocalAssemblerCollection , typename IPDataAccessor > | |
SecondaryVariableFunctions | makeExtrapolator2 (const unsigned num_components, NumLib::Extrapolator &extrapolator, LocalAssemblerCollection const &local_assemblers, IPDataAccessor &&accessor) |
SubmeshResiduumOutputConfig | createSubmeshResiduumOutputConfig (BaseLib::ConfigTree const &config, std::string const &output_directory, std::vector< std::unique_ptr< MeshLib::Mesh > > &meshes) |
void | setEquationSystem (ProcessData const &process_data) |
void | preTimestepForAllProcesses (NumLib::Time const &t, double const dt, std::vector< std::unique_ptr< ProcessData > > const &per_process_data, std::vector< GlobalVector * > const &_process_solutions) |
void | postTimestepForAllProcesses (NumLib::Time 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) |
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 (NumLib::Time 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 * > const &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, std::vector< Output > const &outputs) |
bool | computationOfChangeNeeded (NumLib::TimeStepAlgorithm const ×tep_algorithm, NumLib::Time const &time) |
static NumLib::NonlinearSolverStatus | solveMonolithicProcess (const NumLib::Time &t, const double dt, const std::size_t timestep_id, ProcessData const &process_data, std::vector< GlobalVector * > &x, std::vector< GlobalVector * > const &x_prev, std::vector< Output > const &outputs) |
GlobalVector | computeResiduum (double const dt, GlobalVector const &x, GlobalVector const &x_prev, GlobalMatrix const &M, GlobalMatrix const &K, GlobalVector const &b) |
template<int GlobalDim, template< typename, int > class LocalAssemblerImplementation, typename LocalAssemblerInterface , IntegrationMethodProviderOrIntegrationOrder ProviderOrOrder, typename... ExtraCtorArgs> | |
void | createLocalAssemblers (std::vector< MeshLib::Element * > const &mesh_elements, NumLib::LocalToGlobalIndexMap const &dof_table, std::vector< std::unique_ptr< LocalAssemblerInterface > > &local_assemblers, ProviderOrOrder const &provider_or_order, ExtraCtorArgs &&... extra_ctor_args) |
template<template< typename, int > class LocalAssemblerImplementation, typename LocalAssemblerInterface , IntegrationMethodProviderOrIntegrationOrder ProviderOrOrder, typename... ExtraCtorArgs> | |
void | createLocalAssemblers (const unsigned dimension, std::vector< MeshLib::Element * > const &mesh_elements, NumLib::LocalToGlobalIndexMap const &dof_table, std::vector< std::unique_ptr< LocalAssemblerInterface > > &local_assemblers, ProviderOrOrder const &provider_or_order, ExtraCtorArgs &&... extra_ctor_args) |
template<int GlobalDim, template< typename, typename, int > class LocalAssemblerImplementation, typename LocalAssemblerInterface , IntegrationMethodProviderOrIntegrationOrder ProviderOrOrder, typename... ExtraCtorArgs> | |
void | createLocalAssemblersHM (std::vector< MeshLib::Element * > const &mesh_elements, NumLib::LocalToGlobalIndexMap const &dof_table, std::vector< std::unique_ptr< LocalAssemblerInterface > > &local_assemblers, ProviderOrOrder const &provider_or_order, ExtraCtorArgs &&... extra_ctor_args) |
template<int GlobalDim, template< typename, typename, int > class LocalAssemblerImplementation, typename LocalAssemblerInterface , IntegrationMethodProviderOrIntegrationOrder ProviderOrOrder, typename... ExtraCtorArgs> | |
void | createLocalAssemblersStokes (std::vector< MeshLib::Element * > const &mesh_elements, NumLib::LocalToGlobalIndexMap const &dof_table, std::vector< std::unique_ptr< LocalAssemblerInterface > > &local_assemblers, ProviderOrOrder const &provider_or_order, 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, bool const optional) |
std::string_view | removeIPFieldDataNameSuffix (std::string_view const name) |
Removes the suffix '_ip' from the passed field name. | |
template<typename LocalAssemblersVector > | |
void | setIPDataInitialConditions (std::vector< std::unique_ptr< MeshLib::IntegrationPointWriter > > const &_integration_point_writer, MeshLib::Properties const &mesh_properties, LocalAssemblersVector &local_assemblers) |
template<int DisplacementDim, typename IntegrationPointDataVector , typename IpData , typename MemberType > | |
std::vector< double > const & | getIntegrationPointDimMatrixData (IntegrationPointDataVector const &ip_data_vector, MemberType IpData::*const member, std::vector< double > &cache) |
template<int DisplacementDim, typename IntegrationPointDataVector , typename Accessor > | |
std::vector< double > const & | getIntegrationPointDimMatrixData (IntegrationPointDataVector const &ip_data_vector, Accessor &&accessor, std::vector< double > &cache) |
template<int DisplacementDim, typename IntegrationPointDataVector , typename IpData , typename MemberType > | |
std::vector< double > const & | getIntegrationPointKelvinVectorData (IntegrationPointDataVector const &ip_data_vector, MemberType IpData::*const member, std::vector< double > &cache) |
template<int DisplacementDim, typename IntegrationPointDataVector , typename Accessor > | |
std::vector< double > const & | getIntegrationPointKelvinVectorData (IntegrationPointDataVector const &ip_data_vector, Accessor &&accessor, std::vector< double > &cache) |
template<int DisplacementDim, typename IntegrationPointDataVector , typename MemberType > | |
std::vector< double > | getIntegrationPointKelvinVectorData (IntegrationPointDataVector const &ip_data_vector, MemberType member) |
template<int DisplacementDim, typename IntegrationPointDataVector , typename IpData , typename MemberType > | |
std::size_t | setIntegrationPointKelvinVectorData (double const *values, IntegrationPointDataVector &ip_data_vector, MemberType IpData::*const member) |
template<int DisplacementDim, typename IntegrationPointDataVector , typename Accessor > | |
std::size_t | setIntegrationPointKelvinVectorData (double const *values, IntegrationPointDataVector &ip_data_vector, Accessor &&accessor) |
template<typename IntegrationPointDataVector , typename IpData , typename MemberType > | |
std::vector< double > const & | getIntegrationPointScalarData (IntegrationPointDataVector const &ip_data_vector, MemberType IpData::*const member, std::vector< double > &cache) |
template<typename IntegrationPointDataVector , typename Accessor > | |
std::vector< double > const & | getIntegrationPointScalarData (IntegrationPointDataVector const &ip_data_vector, Accessor &&accessor, std::vector< double > &cache) |
template<typename IntegrationPointDataVector , typename IpData , typename MemberType > | |
std::size_t | setIntegrationPointScalarData (double const *values, IntegrationPointDataVector &ip_data_vector, MemberType IpData::*const member) |
template<typename IntegrationPointDataVector , typename Accessor > | |
std::size_t | setIntegrationPointScalarData (double const *values, IntegrationPointDataVector &ip_data_vector, Accessor &&accessor) |
template<typename IntegrationPointDataVector , typename MemberType , typename MaterialStateVariables > | |
std::vector< double > | getIntegrationPointDataMaterialStateVariables (IntegrationPointDataVector const &ip_data_vector, MemberType member, std::function< std::span< double >(MaterialStateVariables &)> get_values_span, int const n_components) |
template<typename IntegrationPointDataVector , typename MemberType , typename MaterialStateVariables > | |
std::size_t | setIntegrationPointDataMaterialStateVariables (double const *values, IntegrationPointDataVector &ip_data_vector, MemberType member, std::function< std::span< double >(MaterialStateVariables &)> get_values_span) |
template<int Components, typename StoreValuesFunction > | |
std::vector< double > | transposeInPlace (StoreValuesFunction const &store_values_function) |
template<int Components> | |
void | transposeInPlace (std::vector< double > &values) |
void | transposeInPlace (std::vector< double > &values, unsigned const num_components) |
Variables | |
static constexpr std::string_view | timestepper_cannot_reduce_dt |
List of all element types for which the local assemblers of OGS processes will be compiled.
Definition at line 119 of file EnabledElements.h.
Definition at line 19 of file HCNonAdvectiveFreeComponentFlowBoundaryCondition.h.
using ProcessLib::LocalAssemblerFactory |
By default processes in OGS are defined in 1D, 2D and 3D.
Definition at line 89 of file LocalAssemblerFactoryForDimGreaterEqualN.h.
using ProcessLib::LocalAssemblerFactoryHM |
HM processes in OGS are defined for linear and higher order elements.
Definition at line 174 of file LocalAssemblerFactoryTaylorHood.h.
using ProcessLib::LocalAssemblerFactorySD |
Mechanics processes in OGS are defined in 2D and 3D only.
Definition at line 104 of file LocalAssemblerFactoryForDimGreaterEqualN.h.
using ProcessLib::LocalAssemblerFactoryStokes |
Stokes flow in OGS is defined for higher order elements only.
Definition at line 192 of file LocalAssemblerFactoryTaylorHood.h.
using ProcessLib::LocalAssemblerTraits |
Definition at line 185 of file LocalAssemblerTraits.h.
Definition at line 19 of file NeumannBoundaryCondition.h.
Definition at line 18 of file RobinBoundaryCondition.h.
Definition at line 87 of file VariableTransformation.h.
Definition at line 19 of file VariableDependentNeumannBoundaryCondition.h.
Definition at line 20 of file WellboreCompensateNeumannBoundaryCondition.h.
|
strong |
Enumerator | |
---|---|
vtk | |
xdmf |
Definition at line 21 of file OutputConfig.h.
void ProcessLib::addBulkMeshPropertyToSubMesh | ( | MeshLib::Mesh const & | bulk_mesh, |
MeshLib::Mesh & | sub_mesh, | ||
std::string const & | property_name ) |
Definition at line 32 of file Output.cpp.
References MeshLib::Cell, MeshLib::Edge, MeshLib::Properties::existsPropertyVector(), MeshLib::Face, MeshLib::getBulkIDString(), MeshLib::PropertyVectorBase::getMeshItemType(), MeshLib::Mesh::getName(), MeshLib::PropertyVectorBase::getNumberOfGlobalComponents(), MeshLib::getOrCreateMeshProperty(), MeshLib::Mesh::getProperties(), MeshLib::Properties::getPropertyVector(), MeshLib::IntegrationPoint, MeshLib::Node, OGS_FATAL, and WARN().
Referenced by ProcessLib::Output::prepareSubmesh().
void ProcessLib::addProcessDataToMesh | ( | NumLib::Time const & | t, |
std::vector< GlobalVector * > const & | xs, | ||
int const | process_id, | ||
ProcessOutputData const & | process_output_data, | ||
bool const | output_secondary_variables, | ||
OutputDataSpecification const & | process_output ) |
Adds output data to a mesh.
process_output_data
. Definition at line 376 of file AddProcessDataToMesh.cpp.
References addOgsVersion(), addPrimaryVariablesToMesh(), addSecondaryVariablesToMesh(), DBUG(), ProcessLib::ProcessOutputData::getProcessVariables(), ProcessLib::OutputDataSpecification::output_residuals, and ProcessLib::OutputDataSpecification::output_variables.
Referenced by ProcessLib::Output::doOutputAlways(), ProcessLib::Output::doOutputNonlinearIteration(), and ProcessLib::Output::prepareSubmesh().
OGS_EXPORT_SYMBOL void ProcessLib::bheInflowpythonBindBoundaryCondition | ( | pybind11::module & | m | ) |
Creates BHE Inflow Python bindings for the Python BC class.
Definition at line 76 of file BHEInflowPythonBoundaryConditionModule.cpp.
References ProcessLib::BHEInflowPythonBoundaryConditionPythonSideInterface::tespySolver().
Referenced by PYBIND11_EMBEDDED_MODULE(), and PYBIND11_MODULE().
void ProcessLib::calculateNonEquilibriumInitialResiduum | ( | std::vector< std::unique_ptr< ProcessData > > const & | per_process_data, |
std::vector< GlobalVector * > const & | process_solutions, | ||
std::vector< GlobalVector * > const & | process_solutions_prev ) |
Definition at line 208 of file TimeLoop.cpp.
References setEquationSystem().
Referenced by ProcessLib::TimeLoop::initialize().
std::vector< double > ProcessLib::calculateUniqueFixedTimesForAllOutputs | ( | std::vector< Output > const & | outputs | ) |
Definition at line 433 of file Output.cpp.
References BaseLib::makeVectorUnique().
Referenced by ProcessLib::TimeLoop::calculateNextTimeStep(), createTimeLoop(), and ProcessLib::TimeLoop::initialize().
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 25 of file DirichletBoundaryConditionAuxiliaryFunctions.cpp.
References DBUG(), MeshLib::Properties::existsPropertyVector(), MeshLib::getBulkIDString(), MeshLib::Mesh::getName(), MeshLib::Mesh::getNodes(), NumLib::LocalToGlobalIndexMap::getNumberOfVariableComponents(), NumLib::LocalToGlobalIndexMap::getNumberOfVariables(), MeshLib::Mesh::getProperties(), MeshLib::Properties::hasPropertyVector(), MeshLib::Node, and OGS_FATAL.
Referenced by ProcessLib::DirichletBoundaryCondition::DirichletBoundaryCondition(), ProcessLib::PrimaryVariableConstraintDirichletBoundaryCondition::PrimaryVariableConstraintDirichletBoundaryCondition(), ProcessLib::SolutionDependentDirichletBoundaryCondition::SolutionDependentDirichletBoundaryCondition(), ProcessLib::DeactivatedSubdomainDirichlet::config(), and ProcessLib::DirichletBoundaryConditionWithinTimeInterval::config().
bool ProcessLib::computationOfChangeNeeded | ( | NumLib::TimeStepAlgorithm const & | timestep_algorithm, |
NumLib::Time const & | time ) |
Definition at line 282 of file TimeLoop.cpp.
References NumLib::TimeStepAlgorithm::begin(), and NumLib::TimeStepAlgorithm::isSolutionErrorComputationNeeded().
Referenced by ProcessLib::TimeLoop::computeTimeStepping().
void ProcessLib::computeCellAverages | ( | CellAverageData & | cell_average_data, |
std::vector< std::unique_ptr< LAIntf > > const & | local_assemblers ) |
Definition at line 45 of file CellAverageAlgorithm.h.
References ProcessLib::detail::computeCellAverages(), and ProcessLib::Reflection::forEachReflectedFlattenedIPDataAccessor().
Referenced by ProcessLib::LargeDeformation::LargeDeformationProcess< DisplacementDim >::computeSecondaryVariableConcrete(), ProcessLib::SmallDeformation::SmallDeformationProcess< DisplacementDim >::computeSecondaryVariableConcrete(), ProcessLib::TH2M::TH2MProcess< DisplacementDim >::computeSecondaryVariableConcrete(), and ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsProcess< DisplacementDim, ConstitutiveTraits >::computeSecondaryVariableConcrete().
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, GlobalDim >::HydroMechanicsLocalAssemblerFracture(), and ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::SmallDeformationLocalAssemblerFracture().
GlobalVector ProcessLib::computeResiduum | ( | double const | dt, |
GlobalVector const & | x, | ||
GlobalVector const & | x_prev, | ||
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.
Referenced by ProcessLib::LiquidFlow::LiquidFlowProcess::assembleConcreteProcess(), ProcessLib::ComponentTransport::ComponentTransportProcess::preOutputConcreteProcess(), and ProcessLib::HeatConduction::HeatConductionProcess::preOutputConcreteProcess().
std::unique_ptr< SourceTerm > ProcessLib::createAnchorTerm | ( | 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, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const & | parameters ) |
Definition at line 21 of file CreateAnchorTerm.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), DBUG(), ParameterLib::findParameter(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getElements(), and OGS_FATAL.
template std::unique_ptr< SourceTerm > ProcessLib::createAnchorTerm< 2 > | ( | 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, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const & | parameters ) |
Referenced by createSourceTerm().
template std::unique_ptr< SourceTerm > ProcessLib::createAnchorTerm< 3 > | ( | 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, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const & | parameters ) |
Referenced by createSourceTerm().
std::unique_ptr< BHEInflowPythonBoundaryCondition< BHEType > > ProcessLib::createBHEInflowPythonBoundaryCondition | ( | std::pair< GlobalIndexType, GlobalIndexType > && | in_out_global_indices, |
BHEType & | bhe, | ||
BHEInflowPythonBoundaryConditionPythonSideInterface & | py_bc_object ) |
Definition at line 95 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, | ||
std::vector< std::reference_wrapper< ProcessVariable > > const & | all_process_variables_for_this_process, | ||
std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const & | media ) |
Definition at line 32 of file CreateBoundaryCondition.cpp.
References ProcessLib::BoundaryConditionConfig::boundary_mesh, ProcessLib::BoundaryConditionConfig::component_id, ProcessLib::BoundaryConditionConfig::config, createConstraintDirichletBoundaryCondition(), createDirichletBoundaryCondition(), createDirichletBoundaryConditionWithinTimeInterval(), createHCNonAdvectiveFreeComponentFlowBoundaryCondition(), createNeumannBoundaryCondition(), ProcessLib::NormalTractionBoundaryCondition::createNormalTractionBoundaryCondition(), createPhaseFieldIrreversibleDamageOracleBoundaryCondition(), createPrimaryVariableConstraintDirichletBoundaryCondition(), createPythonBoundaryCondition(), createRobinBoundaryCondition(), createSolutionDependentDirichletBoundaryCondition(), createVariableDependentNeumannBoundaryCondition(), createWellboreCompensateNeumannBoundaryCondition(), MeshLib::Mesh::getDimension(), 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 173 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 357 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 224 of file ConstraintDirichletBoundaryCondition.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), createConstraintDirichletBoundaryCondition(), DBUG(), ParameterLib::findParameter(), 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(), and createConstraintDirichletBoundaryCondition().
DeactivatedSubdomain 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 214 of file CreateDeactivatedSubdomain.cpp.
References createDeactivatedSubdomainMesh(), DBUG(), ParameterLib::findParameter(), BaseLib::ConfigTree::getConfigParameter(), BaseLib::ConfigTree::getConfigParameterOptional(), BaseLib::ConfigTree::getConfigSubtreeOptional(), OGS_FATAL, parseLineSegment(), and parseTimeIntervalOrCurve().
Referenced by createDeactivatedSubdomains().
|
static |
Definition at line 92 of file CreateDeactivatedSubdomain.cpp.
References MeshLib::cloneElements(), MeshLib::createMeshFromElementSelection(), extractElementsAlongOuterNodes(), extractInnerAndOuterNodes(), MeshLib::Mesh::getElements(), and MeshLib::views::ids.
Referenced by createDeactivatedSubdomain().
std::vector< DeactivatedSubdomain > 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 295 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 56 of file DirichletBoundaryCondition.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), DBUG(), ParameterLib::findParameter(), 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(), ParameterLib::findParameter(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), and BaseLib::ConfigTree::peekConfigParameter().
Referenced by createBoundaryCondition().
std::unique_ptr< AbstractJacobianAssembler > ProcessLib::createForwardDifferencesJacobianAssembler | ( | BaseLib::ConfigTree const & | config | ) |
Definition at line 19 of file CreateForwardDifferencesJacobianAssembler.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), BaseLib::ConfigTree::getConfigParameterOptional(), and OGS_FATAL.
Referenced by createJacobianAssembler().
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(), MeshLib::Face, ParameterLib::findParameter(), MeshLib::getBulkIDString(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getName(), MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), MeshLib::Mesh::getProperties(), and OGS_FATAL.
Referenced by createBoundaryCondition().
InitialStress ProcessLib::createInitialStress | ( | BaseLib::ConfigTree const & | config, |
std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const & | parameters, | ||
MeshLib::Mesh const & | mesh, | ||
bool const | mandatory_stress_type ) |
Definition at line 25 of file CreateInitialStress.cpp.
References ProcessLib::InitialStress::Effective, ParameterLib::findParameter(), BaseLib::ConfigTree::getConfigSubtreeOptional(), MathLib::KelvinVector::kelvin_vector_dimensions(), OGS_FATAL, and ProcessLib::InitialStress::Total.
Referenced by ProcessLib::HydroMechanics::createHydroMechanicsProcess(), ProcessLib::PhaseField::createPhaseFieldProcess(), ProcessLib::RichardsMechanics::createRichardsMechanicsProcess(), ProcessLib::TH2M::createTH2MProcess(), ProcessLib::ThermoHydroMechanics::createThermoHydroMechanicsProcess(), and ProcessLib::ThermoRichardsMechanics::createThermoRichardsMechanicsProcessStage2().
template InitialStress ProcessLib::createInitialStress< 2 > | ( | BaseLib::ConfigTree const & | config, |
std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const & | parameters, | ||
MeshLib::Mesh const & | mesh, | ||
bool const | mandatory_stress_type ) |
template InitialStress ProcessLib::createInitialStress< 3 > | ( | BaseLib::ConfigTree const & | config, |
std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const & | parameters, | ||
MeshLib::Mesh const & | mesh, | ||
bool const | mandatory_stress_type ) |
std::unique_ptr< AbstractJacobianAssembler > ProcessLib::createJacobianAssembler | ( | std::optional< BaseLib::ConfigTree > const & | config | ) |
Definition at line 22 of file CreateJacobianAssembler.cpp.
References createCentralDifferencesJacobianAssembler(), createCompareJacobiansJacobianAssembler(), createForwardDifferencesJacobianAssembler(), 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, | ||
std::vector< std::unique_ptr< LocalAssemblerInterface > > & | local_assemblers, | ||
ProviderOrOrder const & | provider_or_order, | ||
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 74 of file CreateLocalAssemblers.h.
void ProcessLib::createLocalAssemblers | ( | std::vector< MeshLib::Element * > const & | mesh_elements, |
NumLib::LocalToGlobalIndexMap const & | dof_table, | ||
std::vector< std::unique_ptr< LocalAssemblerInterface > > & | local_assemblers, | ||
ProviderOrOrder const & | provider_or_order, | ||
ExtraCtorArgs &&... | extra_ctor_args ) |
Definition at line 27 of file CreateLocalAssemblers.h.
References DBUG(), and NumLib::SerialExecutor::transformDereferenced().
Referenced by ProcessLib::SurfaceFlux::SurfaceFlux(), ProcessLib::ComponentTransport::ComponentTransportProcess::initializeConcreteProcess(), ProcessLib::HeatConduction::HeatConductionProcess::initializeConcreteProcess(), ProcessLib::HT::HTProcess::initializeConcreteProcess(), ProcessLib::LiquidFlow::LiquidFlowProcess::initializeConcreteProcess(), ProcessLib::RichardsComponentTransport::RichardsComponentTransportProcess::initializeConcreteProcess(), ProcessLib::RichardsFlow::RichardsFlowProcess::initializeConcreteProcess(), ProcessLib::SteadyStateDiffusion::SteadyStateDiffusion::initializeConcreteProcess(), ProcessLib::TES::TESProcess::initializeConcreteProcess(), ProcessLib::ThermalTwoPhaseFlowWithPP::ThermalTwoPhaseFlowWithPPProcess::initializeConcreteProcess(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowProcess::initializeConcreteProcess(), ProcessLib::TwoPhaseFlowWithPP::TwoPhaseFlowWithPPProcess::initializeConcreteProcess(), ProcessLib::TwoPhaseFlowWithPrho::TwoPhaseFlowWithPrhoProcess::initializeConcreteProcess(), and ProcessLib::WellboreSimulator::WellboreSimulatorProcess::initializeConcreteProcess().
void ProcessLib::createLocalAssemblersHM | ( | std::vector< MeshLib::Element * > const & | mesh_elements, |
NumLib::LocalToGlobalIndexMap const & | dof_table, | ||
std::vector< std::unique_ptr< LocalAssemblerInterface > > & | local_assemblers, | ||
ProviderOrOrder const & | provider_or_order, | ||
ExtraCtorArgs &&... | extra_ctor_args ) |
Definition at line 85 of file CreateLocalAssemblersTaylorHood.h.
Referenced by ProcessLib::TH2M::createLocalAssemblers(), ProcessLib::ThermoRichardsMechanics::createLocalAssemblers(), ProcessLib::HydroMechanics::HydroMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::RichardsMechanics::RichardsMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), and ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsProcess< DisplacementDim >::initializeConcreteProcess().
void ProcessLib::createLocalAssemblersStokes | ( | std::vector< MeshLib::Element * > const & | mesh_elements, |
NumLib::LocalToGlobalIndexMap const & | dof_table, | ||
std::vector< std::unique_ptr< LocalAssemblerInterface > > & | local_assemblers, | ||
ProviderOrOrder const & | provider_or_order, | ||
ExtraCtorArgs &&... | extra_ctor_args ) |
Definition at line 106 of file CreateLocalAssemblersTaylorHood.h.
Referenced by ProcessLib::StokesFlow::StokesFlowProcess< GlobalDim >::initializeConcreteProcess().
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(), ParameterLib::findParameter(), 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(), ParameterLib::findParameter(), and BaseLib::ConfigTree::getConfigParameter().
Referenced by createSourceTerm().
std::vector< Output > ProcessLib::createOutput | ( | const BaseLib::ConfigTree & | config, |
std::string const & | output_directory, | ||
std::vector< std::unique_ptr< MeshLib::Mesh > > & | meshes ) |
Definition at line 102 of file CreateOutput.cpp.
References createOutput(), and createOutputConfig().
Output ProcessLib::createOutput | ( | OutputConfig && | oc, |
std::string const & | output_directory, | ||
std::vector< std::unique_ptr< MeshLib::Mesh > > const & | meshes ) |
Definition at line 85 of file CreateOutput.cpp.
References createOutputFormat().
Referenced by createOutput(), createOutputs(), createSubmeshResiduumOutputConfig(), and createTimeLoop().
OutputConfig ProcessLib::createOutputConfig | ( | const BaseLib::ConfigTree & | config, |
std::vector< std::unique_ptr< MeshLib::Mesh > > & | meshes ) |
Definition at line 75 of file CreateOutputConfig.cpp.
References ProcessLib::OutputConfig::chunk_size_bytes, ProcessLib::OutputConfig::compress_output, ProcessLib::OutputConfig::data_mode, DBUG(), ProcessLib::OutputConfig::fixed_output_times, BaseLib::ConfigTree::getConfigParameter(), BaseLib::ConfigTree::getConfigSubtree(), BaseLib::ConfigTree::getConfigSubtreeOptional(), INFO(), BaseLib::makeVectorUnique(), ProcessLib::OutputConfig::mesh_names_for_output, ProcessLib::OutputConfig::number_of_files, OGS_FATAL, ProcessLib::OutputConfig::output_extrapolation_residuals, ProcessLib::OutputConfig::output_iteration_results, ProcessLib::OutputConfig::output_type, ProcessLib::OutputConfig::output_variables, parseOutputMeshConfig(), ProcessLib::OutputConfig::prefix, BaseLib::readDoublesFromBinaryFile(), ProcessLib::OutputConfig::repeats_each_steps, ProcessLib::OutputConfig::suffix, vtk, and xdmf.
Referenced by createOutput(), createOutputs(), and createSubmeshResiduumOutputConfig().
std::unique_ptr< OutputFormat > ProcessLib::createOutputFormat | ( | std::string const & | output_directory, |
OutputType const | output_type, | ||
std::string | prefix, | ||
std::string | suffix, | ||
std::string const & | data_mode, | ||
bool const | compress_output, | ||
unsigned int const | number_of_files, | ||
unsigned int const | chunk_size_bytes ) |
Definition at line 61 of file CreateOutput.cpp.
References OGS_FATAL, BaseLib::to_underlying(), vtk, and xdmf.
Referenced by createOutput().
std::vector< Output > ProcessLib::createOutputs | ( | const BaseLib::ConfigTree & | output_configs, |
std::string const & | output_directory, | ||
std::vector< std::unique_ptr< MeshLib::Mesh > > & | meshes ) |
Definition at line 113 of file CreateOutput.cpp.
References createOutput(), createOutputConfig(), DBUG(), BaseLib::ConfigTree::getConfigSubtreeList(), and OGS_FATAL.
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, | ||
bool const | compensate_non_equilibrium_initial_residuum, | ||
std::vector< double > const & | fixed_times_for_output ) |
Definition at line 70 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 74 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(), ParameterLib::findParameter(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), and OGS_FATAL.
Referenced by createBoundaryCondition().
ProcessOutputData ProcessLib::createProcessOutputData | ( | Process const & | process, |
std::size_t const | n_processes, | ||
MeshLib::Mesh & | output_mesh ) |
Extracts data necessary for output from the given process
.
Definition at line 143 of file ProcessOutputData.cpp.
References ProcessLib::Process::getSecondaryVariables().
Referenced by ProcessLib::Output::doOutputAlways(), ProcessLib::Output::doOutputNonlinearIteration(), and ProcessLib::Output::prepareSubmesh().
std::unique_ptr< PythonBoundaryCondition > ProcessLib::createPythonBoundaryCondition | ( | BaseLib::ConfigTree const & | config, |
MeshLib::Mesh const & | boundary_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table_bulk, | ||
MeshLib::Mesh const & | bulk_mesh, | ||
int const | variable_id, | ||
int const | component_id, | ||
unsigned const | integration_order, | ||
unsigned const | shapefunction_order, | ||
std::vector< std::reference_wrapper< ProcessVariable > > const & | all_process_variables_for_this_process ) |
Creates a new PythonBoundaryCondition object.
Definition at line 269 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, | ||
std::vector< std::reference_wrapper< ProcessVariable > > const & | all_process_variables_for_this_process ) |
Definition at line 24 of file CreatePythonSourceTerm.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), DBUG(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), 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 BaseLib::ConfigTree::checkConfigParameter(), DBUG(), ParameterLib::findParameter(), 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::HydroMechanics::createHydroMechanicsProcess(), ProcessLib::LIE::HydroMechanics::createHydroMechanicsProcess(), ProcessLib::LargeDeformation::createLargeDeformationProcess(), 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::createThermoRichardsMechanicsProcessStage2(), ProcessLib::TwoPhaseFlowWithPP::createTwoPhaseFlowWithPPProcess(), ProcessLib::TwoPhaseFlowWithPrho::createTwoPhaseFlowWithPrhoProcess(), and ProcessLib::WellboreSimulator::createWellboreSimulatorProcess().
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(), ParameterLib::findParameter(), 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, | ||
std::vector< std::reference_wrapper< ProcessVariable > > const & | all_process_variables_for_this_process ) |
Definition at line 25 of file CreateSourceTerm.cpp.
References ProcessLib::SourceTermConfig::component_id, ProcessLib::SourceTermConfig::config, createAnchorTerm< 2 >(), createAnchorTerm< 3 >(), createNodalSourceTerm(), createPythonSourceTerm(), createVolumetricSourceTerm(), DBUG(), NumLib::LocalToGlobalIndexMap::deriveBoundaryConstrainedMap(), MeshLib::getBulkIDString(), 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, MeshLib::Node, OGS_FATAL, and BaseLib::ConfigTree::peekConfigParameter().
Referenced by ProcessLib::ProcessVariable::createSourceTerms().
SubmeshResiduumOutputConfig ProcessLib::createSubmeshResiduumOutputConfig | ( | BaseLib::ConfigTree const & | config, |
std::string const & | output_directory, | ||
std::vector< std::unique_ptr< MeshLib::Mesh > > & | meshes ) |
Definition at line 205 of file SubmeshResiduumOutputConfig.cpp.
References createOutput(), createOutputConfig(), and OGS_FATAL.
Referenced by createTimeLoop().
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 > > & | meshes, | ||
bool const | compensate_non_equilibrium_initial_residuum ) |
Builds a TimeLoop from the given configuration.
Definition at line 29 of file CreateTimeLoop.cpp.
References calculateUniqueFixedTimesForAllOutputs(), createOutput(), createOutputs(), createPerProcessData(), NumLib::createStaggeredCoupling(), createSubmeshResiduumOutputConfig(), BaseLib::ConfigTree::getConfigSubtree(), BaseLib::ConfigTree::getConfigSubtreeOptional(), INFO(), MeshLib::Node, 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(), ParameterLib::findParameter(), 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(), ParameterLib::findParameter(), BaseLib::ConfigTree::getConfigParameter(), and BaseLib::ConfigTree::peekConfigParameter().
Referenced by createSourceTerm().
std::unique_ptr< WellboreCompensateNeumannBoundaryCondition > ProcessLib::createWellboreCompensateNeumannBoundaryCondition | ( | 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::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const & | media ) |
Definition at line 19 of file WellboreCompensateNeumannBoundaryCondition.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), MaterialPropertyLib::createMaterialSpatialDistributionMap(), DBUG(), NumLib::LocalToGlobalIndexMap::deriveBoundaryConstrainedMap(), BaseLib::ConfigTree::getConfigParameter(), MeshLib::Mesh::getDimension(), MeshLib::Mesh::getName(), MeshLib::Mesh::getNodes(), NumLib::LocalToGlobalIndexMap::getNumberOfVariables(), and OGS_FATAL.
Referenced by createBoundaryCondition().
|
static |
Definition at line 69 of file CreateDeactivatedSubdomain.cpp.
References MeshLib::getBulkIDString(), MeshLib::Mesh::getElementsConnectedToNode(), MeshLib::Mesh::getProperties(), MeshLib::views::ids, and MeshLib::Node.
Referenced by createDeactivatedSubdomainMesh().
|
static |
Definition at line 32 of file CreateDeactivatedSubdomain.cpp.
References MeshLib::bulkNodeIDs(), MeshLib::Mesh::getElementsConnectedToNode(), MeshLib::Mesh::getNode(), MeshLib::Mesh::getNodes(), MeshLib::Mesh::getNumberOfNodes(), MeshLib::views::ids, 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 47 of file ProcessUtils.cpp.
References BaseLib::ConfigTree::getConfigParameter().
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 57 of file ProcessUtils.cpp.
References DBUG(), and findProcessVariables().
Referenced by ProcessLib::ComponentTransport::createComponentTransportProcess(), ProcessLib::HeatConduction::createHeatConductionProcess(), ProcessLib::HT::createHTProcess(), ProcessLib::HydroMechanics::createHydroMechanicsProcess(), ProcessLib::LargeDeformation::createLargeDeformationProcess(), 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::createThermoRichardsMechanicsProcessStage2(), ProcessLib::TwoPhaseFlowWithPP::createTwoPhaseFlowWithPPProcess(), ProcessLib::TwoPhaseFlowWithPrho::createTwoPhaseFlowWithPrhoProcess(), ProcessLib::WellboreSimulator::createWellboreSimulatorProcess(), and findProcessVariables().
std::vector< std::reference_wrapper< ProcessVariable > > ProcessLib::findProcessVariables | ( | std::vector< ProcessVariable > const & | variables, |
BaseLib::ConfigTree const & | pv_config, | ||
std::string const & | tag, | ||
bool const | optional ) |
Definition at line 78 of file ProcessUtils.cpp.
References 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 21 of file CoupledSolutionsForStaggeredScheme.cpp.
Referenced by ProcessLib::VectorMatrixAssembler::assemble(), ProcessLib::VectorMatrixAssembler::assembleWithJacobian(), anonymous_namespace{ParallelVectorMatrixAssembler.cpp}::assembleWithJacobianForStaggeredSchemeOneElement(), ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >::computeCrackIntegral(), ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >::computeEnergy(), ProcessLib::ComponentTransport::ComponentTransportProcess::getFlux(), ProcessLib::HT::HTProcess::getFlux(), and ProcessLib::HT::StaggeredHTFEM< ShapeFunction, GlobalDim >::getIntPtDarcyVelocity().
void ProcessLib::getEssentialBCValuesLocal | ( | ParameterLib::Parameter< double > const & | parameter, |
MeshLib::Mesh const & | bc_mesh, | ||
NumLib::LocalToGlobalIndexMap const & | dof_table_boundary, | ||
int const | variable_id, | ||
int const | component_id, | ||
const double | t, | ||
GlobalVector const & | x, | ||
NumLib::IndexValueVector< GlobalIndexType > & | bc_values ) |
Definition at line 113 of file DirichletBoundaryConditionAuxiliaryFunctions.cpp.
References getEssentialBCValuesLocal(), MeshLib::Mesh::getNodes(), and MeshLib::views::ids.
void ProcessLib::getEssentialBCValuesLocal | ( | ParameterLib::Parameter< double > const & | parameter, |
MeshLib::Mesh const & | bc_mesh, | ||
std::vector< std::size_t > 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 69 of file DirichletBoundaryConditionAuxiliaryFunctions.cpp.
References NumLib::LocalToGlobalIndexMap::getGlobalIndex(), MeshLib::Mesh::getID(), MeshLib::Mesh::getNode(), NumLib::IndexValueVector< typename >::ids, MeshLib::Node, NumLib::MeshComponentMap::nop, ParameterLib::SpatialPosition::setCoordinates(), ParameterLib::SpatialPosition::setNodeID(), and NumLib::IndexValueVector< typename >::values.
Referenced by ProcessLib::DeactivatedSubdomainDirichlet::getEssentialBCValues(), ProcessLib::DirichletBoundaryCondition::getEssentialBCValues(), ProcessLib::DirichletBoundaryConditionWithinTimeInterval::getEssentialBCValues(), ProcessLib::SolutionDependentDirichletBoundaryCondition::getEssentialBCValues(), and getEssentialBCValuesLocal().
std::vector< double > ProcessLib::getIntegrationPointDataMaterialStateVariables | ( | IntegrationPointDataVector const & | ip_data_vector, |
MemberType | member, | ||
std::function< std::span< double >(MaterialStateVariables &)> | get_values_span, | ||
int const | n_components ) |
Definition at line 247 of file SetOrGetIntegrationPointData.h.
Referenced by ProcessLib::LargeDeformation::LargeDeformationLocalAssemblerInterface< DisplacementDim >::getMaterialStateVariableInternalState(), ProcessLib::RichardsMechanics::LocalAssemblerInterface< DisplacementDim >::getMaterialStateVariableInternalState(), ProcessLib::SmallDeformation::SmallDeformationLocalAssemblerInterface< DisplacementDim >::getMaterialStateVariableInternalState(), ProcessLib::TH2M::LocalAssemblerInterface< DisplacementDim >::getMaterialStateVariableInternalState(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getMaterialStateVariableInternalState(), and ProcessLib::ThermoRichardsMechanics::LocalAssemblerInterface< DisplacementDim, ConstitutiveTraits >::getMaterialStateVariableInternalState().
std::vector< double > const & ProcessLib::getIntegrationPointDimMatrixData | ( | IntegrationPointDataVector const & | ip_data_vector, |
Accessor && | accessor, | ||
std::vector< double > & | cache ) |
Definition at line 39 of file SetOrGetIntegrationPointData.h.
References MathLib::createZeroedMatrix().
std::vector< double > const & ProcessLib::getIntegrationPointDimMatrixData | ( | IntegrationPointDataVector const & | ip_data_vector, |
MemberType IpData::*const | member, | ||
std::vector< double > & | cache ) |
Definition at line 26 of file SetOrGetIntegrationPointData.h.
References getIntegrationPointDimMatrixData().
Referenced by getIntegrationPointDimMatrixData().
std::vector< double > const & ProcessLib::getIntegrationPointKelvinVectorData | ( | IntegrationPointDataVector const & | ip_data_vector, |
Accessor && | accessor, | ||
std::vector< double > & | cache ) |
Definition at line 81 of file SetOrGetIntegrationPointData.h.
References MathLib::createZeroedMatrix(), MathLib::KelvinVector::kelvin_vector_dimensions(), and MathLib::KelvinVector::kelvinVectorToSymmetricTensor().
std::vector< double > const & ProcessLib::getIntegrationPointKelvinVectorData | ( | IntegrationPointDataVector const & | ip_data_vector, |
MemberType IpData::*const | member, | ||
std::vector< double > & | cache ) |
Definition at line 68 of file SetOrGetIntegrationPointData.h.
References getIntegrationPointKelvinVectorData().
Referenced by getIntegrationPointKelvinVectorData(), getIntegrationPointKelvinVectorData(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getIntPtEpsilon(), ProcessLib::LIE::HydroMechanics::HydroMechanicsLocalAssemblerMatrix< ShapeFunctionDisplacement, ShapeFunctionPressure, GlobalDim >::getIntPtEpsilon(), ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerMatrix< ShapeFunction, DisplacementDim >::getIntPtEpsilon(), ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerMatrixNearFracture< ShapeFunction, DisplacementDim >::getIntPtEpsilon(), ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtEpsilon(), ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtEpsilon(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getIntPtEpsilon(), ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtEpsilon(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtEpsilon(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getIntPtEpsilonM(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtEpsilonMechanical(), ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtEpsilonTensile(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getIntPtSigma(), ProcessLib::LIE::HydroMechanics::HydroMechanicsLocalAssemblerMatrix< ShapeFunctionDisplacement, ShapeFunctionPressure, GlobalDim >::getIntPtSigma(), ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerMatrix< ShapeFunction, DisplacementDim >::getIntPtSigma(), ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerMatrixNearFracture< ShapeFunction, DisplacementDim >::getIntPtSigma(), ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtSigma(), ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtSigma(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getIntPtSigma(), ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtSigma(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtSigma(), ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtSigmaCompressive(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getIntPtSigmaIce(), ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtSigmaTensile(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getSigma(), ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >::getSigma(), and ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalLocalAssembler< ShapeFunction, DisplacementDim >::getSigma().
std::vector< double > ProcessLib::getIntegrationPointKelvinVectorData | ( | IntegrationPointDataVector const & | ip_data_vector, |
MemberType | member ) |
Overload without cache
argument.
cache
argument. Definition at line 116 of file SetOrGetIntegrationPointData.h.
References getIntegrationPointKelvinVectorData(), MathLib::KelvinVector::kelvin_vector_dimensions(), and transposeInPlace().
std::vector< double > const & ProcessLib::getIntegrationPointScalarData | ( | IntegrationPointDataVector const & | ip_data_vector, |
Accessor && | accessor, | ||
std::vector< double > & | cache ) |
Definition at line 188 of file SetOrGetIntegrationPointData.h.
References MathLib::createZeroedMatrix().
std::vector< double > const & ProcessLib::getIntegrationPointScalarData | ( | IntegrationPointDataVector const & | ip_data_vector, |
MemberType IpData::*const | member, | ||
std::vector< double > & | cache ) |
Definition at line 176 of file SetOrGetIntegrationPointData.h.
References getIntegrationPointScalarData().
Referenced by getIntegrationPointScalarData(), ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalLocalAssembler< ShapeFunction, DisplacementDim >::getIntPtDamage(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, GlobalDim >::getIntPtDryDensitySolid(), ProcessLib::WellboreSimulator::WellboreSimulatorFEM< ShapeFunction, GlobalDim >::getIntPtDryness(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getIntPtFluidDensity(), ProcessLib::LIE::HydroMechanics::HydroMechanicsLocalAssemblerFracture< ShapeFunctionDisplacement, ShapeFunctionPressure, GlobalDim >::getIntPtFractureAperture(), ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerFracture< ShapeFunction, DisplacementDim >::getIntPtFractureAperture(), ProcessLib::LIE::HydroMechanics::HydroMechanicsLocalAssemblerFracture< ShapeFunctionDisplacement, ShapeFunctionPressure, GlobalDim >::getIntPtFracturePermeability(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getIntPtIceVolume(), ProcessLib::WellboreSimulator::WellboreSimulatorFEM< ShapeFunction, GlobalDim >::getIntPtLiquidMassFlowRate(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, GlobalDim >::getIntPtPorosity(), ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, GlobalDim >::getIntPtSaturation(), ProcessLib::WellboreSimulator::WellboreSimulatorFEM< ShapeFunction, GlobalDim >::getIntPtTemperature(), ProcessLib::WellboreSimulator::WellboreSimulatorFEM< ShapeFunction, GlobalDim >::getIntPtVaporMassFlowRate(), ProcessLib::WellboreSimulator::WellboreSimulatorFEM< ShapeFunction, GlobalDim >::getIntPtVaporVolumeFraction(), and ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getIntPtViscosity().
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 164 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::LargeDeformation::LargeDeformationProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::LIE::HydroMechanics::HydroMechanicsProcess< GlobalDim >::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, ConstitutiveTraits >::initializeConcreteProcess(), ProcessLib::TwoPhaseFlowWithPP::TwoPhaseFlowWithPPProcess::initializeConcreteProcess(), ProcessLib::TwoPhaseFlowWithPrho::TwoPhaseFlowWithPrhoProcess::initializeConcreteProcess(), ProcessLib::WellboreSimulator::WellboreSimulatorProcess::initializeConcreteProcess(), ProcessLib::TES::TESProcess::initializeSecondaryVariables(), and makeExtrapolator2().
SecondaryVariableFunctions ProcessLib::makeExtrapolator2 | ( | const unsigned | num_components, |
NumLib::Extrapolator & | extrapolator, | ||
LocalAssemblerCollection const & | local_assemblers, | ||
IPDataAccessor && | accessor ) |
A variant that takes an accessor
function as a callback.
The accessor
must take a local assembler by const reference as its only argument and must return a std::vector<double>
of integration point data. The data returned by the accessor must be in "integration point
writer order", which is transposed compared to "extrapolator order".
Definition at line 213 of file SecondaryVariable.h.
References makeExtrapolator(), and transposeInPlace().
Referenced by ProcessLib::Reflection::addReflectedSecondaryVariables().
|
static |
Definition at line 24 of file CreateProcessData.cpp.
References OGS_FATAL.
Referenced by createPerProcessData().
std::ostream & ProcessLib::operator<< | ( | std::ostream & | os, |
Output const & | output ) |
Definition at line 447 of file Output.cpp.
std::ostream & ProcessLib::operator<< | ( | std::ostream & | os, |
OutputDataSpecification const & | o ) |
Definition at line 91 of file OutputDataSpecification.cpp.
References ProcessLib::OutputDataSpecification::fixed_output_times, ProcessLib::OutputDataSpecification::output_residuals, ProcessLib::OutputDataSpecification::output_variables, and ProcessLib::OutputDataSpecification::repeats_each_steps.
|
inline |
Definition at line 50 of file OutputFormat.h.
References ProcessLib::OutputFormat::compression, ProcessLib::OutputFormat::directory, ProcessLib::OutputFormat::prefix, and ProcessLib::OutputFormat::suffix.
std::ostream & ProcessLib::operator<< | ( | std::ostream & | os, |
PairRepeatEachSteps const & | pair ) |
Definition at line 84 of file OutputDataSpecification.cpp.
References ProcessLib::PairRepeatEachSteps::each_steps, and ProcessLib::PairRepeatEachSteps::repeat.
void ProcessLib::outputMeshVtk | ( | OutputVTKFormat const & | output_file, |
MeshLib::IO::PVDFile & | pvd_file, | ||
MeshLib::Mesh const & | mesh, | ||
double const | t, | ||
int const | timestep, | ||
int const | iteration ) |
Definition at line 57 of file OutputFormat.cpp.
References MeshLib::IO::PVDFile::addVTUFile(), ProcessLib::OutputFormat::compression, ProcessLib::OutputVTKFormat::constructFilename(), ProcessLib::OutputVTKFormat::data_mode, ProcessLib::OutputFormat::directory, MeshLib::Mesh::getName(), BaseLib::joinPaths(), and outputMeshVtk().
void ProcessLib::outputMeshVtk | ( | std::string const & | file_name, |
MeshLib::Mesh const & | mesh, | ||
bool const | compress_output, | ||
int const | data_mode ) |
Definition at line 48 of file OutputFormat.cpp.
References DBUG(), and MeshLib::IO::VtuInterface::writeToFile().
Referenced by ProcessLib::Output::doOutputNonlinearIteration(), ProcessLib::OutputVTKFormat::outputMeshes(), and outputMeshVtk().
|
static |
Returns a line segment represented by its begin and end points.
Definition at line 184 of file CreateDeactivatedSubdomain.cpp.
References DBUG(), BaseLib::ConfigTree::getConfigParameter(), and OGS_FATAL.
Referenced by createDeactivatedSubdomain().
|
static |
Definition at line 131 of file CreateDeactivatedSubdomain.cpp.
References DBUG(), BaseLib::getOrError(), and OGS_FATAL.
Referenced by createDeactivatedSubdomain().
void ProcessLib::postTimestepForAllProcesses | ( | NumLib::Time 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 ) |
Definition at line 94 of file TimeLoop.cpp.
Referenced by ProcessLib::TimeLoop::preTsNonlinearSolvePostTs().
void ProcessLib::preTimestepForAllProcesses | ( | NumLib::Time const & | t, |
double const | dt, | ||
std::vector< std::unique_ptr< ProcessData > > const & | per_process_data, | ||
std::vector< GlobalVector * > const & | _process_solutions ) |
Definition at line 81 of file TimeLoop.cpp.
Referenced by ProcessLib::TimeLoop::preTsNonlinearSolvePostTs().
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(), and PYBIND11_MODULE().
|
inline |
Removes the suffix '_ip' from the passed field name.
Definition at line 22 of file SetIPDataInitialConditions.h.
References OGS_FATAL.
Referenced by setIPDataInitialConditions().
void ProcessLib::setEquationSystem | ( | ProcessData const & | process_data | ) |
Definition at line 17 of file ProcessData.cpp.
References ProcessLib::ProcessData::conv_crit, ProcessLib::ProcessData::nonlinear_solver, ProcessLib::ProcessData::nonlinear_solver_tag, OGS_FATAL, and ProcessLib::ProcessData::tdisc_ode_sys.
Referenced by calculateNonEquilibriumInitialResiduum(), and solveOneTimeStepOneProcess().
std::pair< std::vector< GlobalVector * >, std::vector< GlobalVector * > > ProcessLib::setInitialConditions | ( | NumLib::Time const & | t0, |
std::vector< std::unique_ptr< ProcessData > > const & | per_process_data ) |
Definition at line 173 of file TimeLoop.cpp.
References NumLib::GlobalVectorProvider::provider.
Referenced by ProcessLib::TimeLoop::initialize().
std::size_t ProcessLib::setIntegrationPointDataMaterialStateVariables | ( | double const * | values, |
IntegrationPointDataVector & | ip_data_vector, | ||
MemberType | member, | ||
std::function< std::span< double >(MaterialStateVariables &)> | get_values_span ) |
Definition at line 270 of file SetOrGetIntegrationPointData.h.
Referenced by ProcessLib::LargeDeformation::LargeDeformationLocalAssemblerInterface< DisplacementDim >::setIPDataInitialConditions(), ProcessLib::RichardsMechanics::LocalAssemblerInterface< DisplacementDim >::setIPDataInitialConditions(), ProcessLib::SmallDeformation::SmallDeformationLocalAssemblerInterface< DisplacementDim >::setIPDataInitialConditions(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::setIPDataInitialConditions(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::setIPDataInitialConditions(), and ProcessLib::ThermoRichardsMechanics::LocalAssemblerInterface< DisplacementDim, ConstitutiveTraits >::setIPDataInitialConditions().
std::size_t ProcessLib::setIntegrationPointKelvinVectorData | ( | double const * | values, |
IntegrationPointDataVector & | ip_data_vector, | ||
Accessor && | accessor ) |
Definition at line 145 of file SetOrGetIntegrationPointData.h.
References MathLib::KelvinVector::kelvin_vector_dimensions(), and MathLib::KelvinVector::symmetricTensorToKelvinVector().
std::size_t ProcessLib::setIntegrationPointKelvinVectorData | ( | double const * | values, |
IntegrationPointDataVector & | ip_data_vector, | ||
MemberType IpData::*const | member ) |
Definition at line 133 of file SetOrGetIntegrationPointData.h.
References setIntegrationPointKelvinVectorData().
Referenced by ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, DisplacementDim >::setEpsilon(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, DisplacementDim >::setEpsilonMechanical(), setIntegrationPointKelvinVectorData(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::setIPDataInitialConditions(), ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, DisplacementDim >::setIPDataInitialConditions(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::setIPDataInitialConditions(), ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalLocalAssembler< ShapeFunction, DisplacementDim >::setSigma(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::setSigma(), and ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, DisplacementDim >::setSigma().
std::size_t ProcessLib::setIntegrationPointScalarData | ( | double const * | values, |
IntegrationPointDataVector & | ip_data_vector, | ||
Accessor && | accessor ) |
Definition at line 226 of file SetOrGetIntegrationPointData.h.
std::size_t ProcessLib::setIntegrationPointScalarData | ( | double const * | values, |
IntegrationPointDataVector & | ip_data_vector, | ||
MemberType IpData::*const | member ) |
Definition at line 215 of file SetOrGetIntegrationPointData.h.
References setIntegrationPointScalarData().
Referenced by setIntegrationPointScalarData(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::setIPDataInitialConditions(), ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalLocalAssembler< ShapeFunction, DisplacementDim >::setIPDataInitialConditions(), and ProcessLib::ThermoRichardsFlow::ThermoRichardsFlowLocalAssembler< ShapeFunction, GlobalDim >::setIPDataInitialConditions().
void ProcessLib::setIPDataInitialConditions | ( | std::vector< std::unique_ptr< MeshLib::IntegrationPointWriter > > const & | _integration_point_writer, |
MeshLib::Properties const & | mesh_properties, | ||
LocalAssemblersVector & | local_assemblers ) |
Definition at line 36 of file SetIPDataInitialConditions.h.
References MeshLib::Properties::existsPropertyVector(), INFO(), MeshLib::IntegrationPoint, OGS_FATAL, and removeIPFieldDataNameSuffix().
Referenced by ProcessLib::HydroMechanics::HydroMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::LargeDeformation::LargeDeformationProcess< DisplacementDim >::initializeConcreteProcess(), ProcessLib::PhaseField::PhaseFieldProcess< 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, ConstitutiveTraits >::initializeConcreteProcess().
void ProcessLib::setTimeDiscretizedODESystem | ( | ProcessData & | process_data | ) |
Definition at line 167 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 114 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 620 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, | ||
std::vector< Output > const & | outputs ) |
Definition at line 224 of file TimeLoop.cpp.
References ProcessLib::ProcessData::nonlinear_solver, ProcessLib::ProcessData::process, ProcessLib::ProcessData::process_id, setEquationSystem(), and ProcessLib::ProcessData::time_disc.
Referenced by ProcessLib::TimeLoop::solveCoupledEquationSystemsByStaggeredScheme(), and solveMonolithicProcess().
void ProcessLib::transposeInPlace | ( | std::vector< double > & | values | ) |
Definition at line 41 of file TransposeInPlace.h.
References MathLib::toMatrix().
|
inline |
Definition at line 53 of file TransposeInPlace.h.
References MathLib::toMatrix().
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().
Referenced by ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getEpsilon(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, DisplacementDim >::getEpsilon(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getEpsilonM(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, DisplacementDim >::getEpsilonMechanical(), getIntegrationPointKelvinVectorData(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::getSigma(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, DisplacementDim >::getSigma(), and makeExtrapolator2().
|
staticconstexpr |
Definition at line 638 of file TimeLoop.cpp.
Referenced by ProcessLib::TimeLoop::solveUncoupledEquationSystems().