diff --git a/ProcessLib/ComponentTransport/ComponentTransportFEM.h b/ProcessLib/ComponentTransport/ComponentTransportFEM.h index 13e2f0d3e877b507c830923ffba5656f143278c5..776fc1c74fac97af12d4689ae346def77e023cc7 100644 --- a/ProcessLib/ComponentTransport/ComponentTransportFEM.h +++ b/ProcessLib/ComponentTransport/ComponentTransportFEM.h @@ -1807,7 +1807,9 @@ public: void postTimestepConcrete(Eigen::VectorXd const& /*local_x*/, Eigen::VectorXd const& /*local_x_dot*/, - double const /*t*/, double const /*dt*/) override + double const /*t*/, double const /*dt*/, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { unsigned const n_integration_points = _integration_method.getNumberOfPoints(); diff --git a/ProcessLib/ComponentTransport/ComponentTransportProcess.cpp b/ProcessLib/ComponentTransport/ComponentTransportProcess.cpp index 652647b12d105dc9a1fe0d4b9039477991a115a6..744f7eafad34d2ae0366d34a20124c95c36720c0 100644 --- a/ProcessLib/ComponentTransport/ComponentTransportProcess.cpp +++ b/ProcessLib/ComponentTransport/ComponentTransportProcess.cpp @@ -443,7 +443,7 @@ void ComponentTransportProcess::postTimestepConcreteProcess( GlobalExecutor::executeSelectedMemberOnDereferenced( &ComponentTransportLocalAssemblerInterface::postTimestep, _local_assemblers, pv.getActiveElementIDs(), dof_tables, x, x_dot, t, - dt); + dt, _use_monolithic_scheme, process_id); if (!_surfaceflux) // computing the surfaceflux is optional { diff --git a/ProcessLib/HydroMechanics/HydroMechanicsFEM.h b/ProcessLib/HydroMechanics/HydroMechanicsFEM.h index 4c8a249bf4b567e49d2777210babf638cac68307..7c902c4ca2a0a3a53737f8334a12fa8f34d7c452 100644 --- a/ProcessLib/HydroMechanics/HydroMechanicsFEM.h +++ b/ProcessLib/HydroMechanics/HydroMechanicsFEM.h @@ -257,8 +257,9 @@ public: void postTimestepConcrete(Eigen::VectorXd const& /*local_x*/, Eigen::VectorXd const& /*local_x_dot*/, - double const /*t*/, - double const /*dt*/) override + double const /*t*/, double const /*dt*/, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { unsigned const n_integration_points = _integration_method.getNumberOfPoints(); diff --git a/ProcessLib/HydroMechanics/HydroMechanicsProcess.cpp b/ProcessLib/HydroMechanics/HydroMechanicsProcess.cpp index 21623bc27a3026a6047af4fffd0d29e98c5998e8..e7add25eb2612ea5c0df7fc4c3a86a61fe6ed917 100644 --- a/ProcessLib/HydroMechanics/HydroMechanicsProcess.cpp +++ b/ProcessLib/HydroMechanics/HydroMechanicsProcess.cpp @@ -405,7 +405,8 @@ void HydroMechanicsProcess<DisplacementDim>::postTimestepConcreteProcess( ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0]; GlobalExecutor::executeSelectedMemberOnDereferenced( &LocalAssemblerIF::postTimestep, _local_assemblers, - pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt); + pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt, + _use_monolithic_scheme, process_id); } template <int DisplacementDim> diff --git a/ProcessLib/LIE/HydroMechanics/HydroMechanicsProcess.cpp b/ProcessLib/LIE/HydroMechanics/HydroMechanicsProcess.cpp index b542000a6375c427d5029ee194d94465273dafea..37fa1296607b17d598db4ce9eec941670db90e00 100644 --- a/ProcessLib/LIE/HydroMechanics/HydroMechanicsProcess.cpp +++ b/ProcessLib/LIE/HydroMechanics/HydroMechanicsProcess.cpp @@ -469,7 +469,7 @@ void HydroMechanicsProcess<GlobalDim>::postTimestepConcreteProcess( GlobalExecutor::executeSelectedMemberOnDereferenced( &HydroMechanicsLocalAssemblerInterface::postTimestep, _local_assemblers, pv.getActiveElementIDs(), dof_tables, x, x_dot, - t, dt); + t, dt, _use_monolithic_scheme, process_id); } DBUG("Compute the secondary variables for HydroMechanicsProcess."); diff --git a/ProcessLib/LIE/HydroMechanics/LocalAssembler/HydroMechanicsLocalAssemblerInterface.h b/ProcessLib/LIE/HydroMechanics/LocalAssembler/HydroMechanicsLocalAssemblerInterface.h index deee7e49ed8c829e1bd747b1a7a49aeed3be5332..8abab69a84d9daf4787957e0d1e0774149870108 100644 --- a/ProcessLib/LIE/HydroMechanics/LocalAssembler/HydroMechanicsLocalAssemblerInterface.h +++ b/ProcessLib/LIE/HydroMechanics/LocalAssembler/HydroMechanicsLocalAssemblerInterface.h @@ -101,8 +101,9 @@ public: void postTimestepConcrete(Eigen::VectorXd const& local_x_, Eigen::VectorXd const& /*local_x_dot*/, - const double t, - double const dt) override + const double t, double const dt, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { _local_u.setZero(); for (Eigen::Index i = 0; i < local_x_.rows(); i++) diff --git a/ProcessLib/LocalAssemblerInterface.cpp b/ProcessLib/LocalAssemblerInterface.cpp index 87e16e27072bbe4938463090db4f3fdd486b50ad..28e3a937e2591d3cf8678c5db38a016bb4437ee5 100644 --- a/ProcessLib/LocalAssemblerInterface.cpp +++ b/ProcessLib/LocalAssemblerInterface.cpp @@ -132,7 +132,8 @@ void LocalAssemblerInterface::postTimestep( std::size_t const mesh_item_id, std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_tables, std::vector<GlobalVector*> const& x, - std::vector<GlobalVector*> const& x_dot, double const t, double const dt) + std::vector<GlobalVector*> const& x_dot, double const t, double const dt, + bool const use_monolithic_scheme, int const process_id) { std::vector<double> local_x_vec; std::vector<double> local_x_dot_vec; @@ -155,7 +156,8 @@ void LocalAssemblerInterface::postTimestep( auto const local_x = MathLib::toVector(local_x_vec); auto const local_x_dot = MathLib::toVector(local_x_dot_vec); - postTimestepConcrete(local_x, local_x_dot, t, dt); + postTimestepConcrete(local_x, local_x_dot, t, dt, use_monolithic_scheme, + process_id); } void LocalAssemblerInterface::postNonLinearSolver( diff --git a/ProcessLib/LocalAssemblerInterface.h b/ProcessLib/LocalAssemblerInterface.h index fe30f2fd389e55377a4d7c98284aa228528b1804..5073bbd7bb5de6a53a79c8043b4d26ca246c88e1 100644 --- a/ProcessLib/LocalAssemblerInterface.h +++ b/ProcessLib/LocalAssemblerInterface.h @@ -92,7 +92,8 @@ public: std::vector<NumLib::LocalToGlobalIndexMap const*> const& dof_tables, std::vector<GlobalVector*> const& x, std::vector<GlobalVector*> const& x_dot, double const t, - double const dt); + double const dt, bool const use_monolithic_scheme, + int const process_id); void postNonLinearSolver(std::size_t const mesh_item_id, NumLib::LocalToGlobalIndexMap const& dof_table, @@ -137,7 +138,9 @@ private: virtual void postTimestepConcrete(Eigen::VectorXd const& /*local_x*/, Eigen::VectorXd const& /*local_x_dot*/, - double const /*t*/, double const /*dt*/) + double const /*t*/, double const /*dt*/, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) { } diff --git a/ProcessLib/PhaseField/PhaseFieldFEM.h b/ProcessLib/PhaseField/PhaseFieldFEM.h index 3865e5e5b10b4fbe593968fce227dc2a72eaf757..888d74db655a00d7492e769a706e69d2c40bcfda 100644 --- a/ProcessLib/PhaseField/PhaseFieldFEM.h +++ b/ProcessLib/PhaseField/PhaseFieldFEM.h @@ -291,8 +291,9 @@ public: void postTimestepConcrete(Eigen::VectorXd const& /*local_x*/, Eigen::VectorXd const& /*local_x_dot*/, - double const /*t*/, - double const /*dt*/) override + double const /*t*/, double const /*dt*/, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { unsigned const n_integration_points = _integration_method.getNumberOfPoints(); diff --git a/ProcessLib/RichardsMechanics/RichardsMechanicsFEM.h b/ProcessLib/RichardsMechanics/RichardsMechanicsFEM.h index 0f93231ebeb8f313d3507fe972f87fcaab4c33d3..7ba7308163cc973f9b1b3bd18a04b67b2d2e32b8 100644 --- a/ProcessLib/RichardsMechanics/RichardsMechanicsFEM.h +++ b/ProcessLib/RichardsMechanics/RichardsMechanicsFEM.h @@ -154,8 +154,9 @@ public: void postTimestepConcrete(Eigen::VectorXd const& /*local_x*/, Eigen::VectorXd const& /*local_x_dot*/, - double const /*t*/, - double const /*dt*/) override + double const /*t*/, double const /*dt*/, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { unsigned const n_integration_points = _integration_method.getNumberOfPoints(); diff --git a/ProcessLib/RichardsMechanics/RichardsMechanicsProcess.cpp b/ProcessLib/RichardsMechanics/RichardsMechanicsProcess.cpp index 5b15d385cc275fc53d2d8144a052f22919657ab7..783912828cb0f7daab1f1009faa6d5ebf4cb1d9f 100644 --- a/ProcessLib/RichardsMechanics/RichardsMechanicsProcess.cpp +++ b/ProcessLib/RichardsMechanics/RichardsMechanicsProcess.cpp @@ -436,7 +436,8 @@ void RichardsMechanicsProcess<DisplacementDim>::postTimestepConcreteProcess( getProcessVariables(process_id)[0]; GlobalExecutor::executeSelectedMemberOnDereferenced( &LocalAssemblerIF::postTimestep, _local_assemblers, - pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt); + pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt, + _use_monolithic_scheme, process_id); } } diff --git a/ProcessLib/SmallDeformation/SmallDeformationFEM.h b/ProcessLib/SmallDeformation/SmallDeformationFEM.h index 235cfea517f1a4839a3403f9670e95e5f93f8145..8ad387152761fe57a721fa0ccc17a5a14005b594 100644 --- a/ProcessLib/SmallDeformation/SmallDeformationFEM.h +++ b/ProcessLib/SmallDeformation/SmallDeformationFEM.h @@ -391,7 +391,9 @@ public: void postTimestepConcrete(Eigen::VectorXd const& local_x, Eigen::VectorXd const& local_x_dot, - double const t, double const dt) override + double const t, double const dt, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { unsigned const n_integration_points = _integration_method.getNumberOfPoints(); diff --git a/ProcessLib/SmallDeformation/SmallDeformationProcess.cpp b/ProcessLib/SmallDeformation/SmallDeformationProcess.cpp index 9095b97403e5be92528e2aea9f27fe83d12d6cf8..ea587887a636a9b18f022e9b26643c0ebca877d7 100644 --- a/ProcessLib/SmallDeformation/SmallDeformationProcess.cpp +++ b/ProcessLib/SmallDeformation/SmallDeformationProcess.cpp @@ -203,7 +203,8 @@ void SmallDeformationProcess<DisplacementDim>::postTimestepConcreteProcess( ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0]; GlobalExecutor::executeSelectedMemberOnDereferenced( &LocalAssemblerInterface::postTimestep, _local_assemblers, - pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt); + pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt, + _use_monolithic_scheme, process_id); std::unique_ptr<GlobalVector> material_forces; ProcessLib::SmallDeformation::writeMaterialForces( diff --git a/ProcessLib/SmallDeformationNonlocal/SmallDeformationNonlocalFEM.h b/ProcessLib/SmallDeformationNonlocal/SmallDeformationNonlocalFEM.h index e445b43af46e461e134facfb6c1c310372fc8eb8..402d34b43b8ea8af4e8ba066106e05ecced69fae 100644 --- a/ProcessLib/SmallDeformationNonlocal/SmallDeformationNonlocalFEM.h +++ b/ProcessLib/SmallDeformationNonlocal/SmallDeformationNonlocalFEM.h @@ -544,7 +544,9 @@ public: void postTimestepConcrete(Eigen::VectorXd const& /*local_x*/, Eigen::VectorXd const& /*local_x_dot*/, - double const /*t*/, double const /*dt*/) override + double const /*t*/, double const /*dt*/, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { unsigned const n_integration_points = _integration_method.getNumberOfPoints(); diff --git a/ProcessLib/SmallDeformationNonlocal/SmallDeformationNonlocalProcess.cpp b/ProcessLib/SmallDeformationNonlocal/SmallDeformationNonlocalProcess.cpp index 721b7067497d6fe327b2df52ba0fe33906ce8b44..ad0a58b2f0b33da4dc9269e78720f6fbbb46dc8e 100644 --- a/ProcessLib/SmallDeformationNonlocal/SmallDeformationNonlocalProcess.cpp +++ b/ProcessLib/SmallDeformationNonlocal/SmallDeformationNonlocalProcess.cpp @@ -286,7 +286,8 @@ void SmallDeformationNonlocalProcess<DisplacementDim>:: ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0]; GlobalExecutor::executeSelectedMemberOnDereferenced( &LocalAssemblerInterface::postTimestep, _local_assemblers, - pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt); + pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt, + _use_monolithic_scheme, process_id); } template <int DisplacementDim> diff --git a/ProcessLib/StokesFlow/StokesFlowProcess.cpp b/ProcessLib/StokesFlow/StokesFlowProcess.cpp index 14156ae390138792c36d820f0351f84fafb6b4ac..c0c78aeb6ed5e6bd9395e8c36ed612ea7e88fc6f 100644 --- a/ProcessLib/StokesFlow/StokesFlowProcess.cpp +++ b/ProcessLib/StokesFlow/StokesFlowProcess.cpp @@ -210,7 +210,8 @@ void StokesFlowProcess<GlobalDim>::postTimestepConcreteProcess( ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0]; GlobalExecutor::executeSelectedMemberOnDereferenced( &StokesFlowLocalAssemblerInterface::postTimestep, _local_assemblers, - pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt); + pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt, + _use_monolithic_scheme, process_id); } template <int GlobalDim> diff --git a/ProcessLib/TH2M/TH2MFEM.h b/ProcessLib/TH2M/TH2MFEM.h index cc077ef17ea8681d75b7d9bfed8900bf0b58c48d..bab4eaf8dae9583ddd5bdb7bd9e63211e978f7b6 100644 --- a/ProcessLib/TH2M/TH2MFEM.h +++ b/ProcessLib/TH2M/TH2MFEM.h @@ -150,8 +150,9 @@ private: void postTimestepConcrete(Eigen::VectorXd const& /*local_x*/, Eigen::VectorXd const& /*local_x_dot*/, - double const /*t*/, - double const /*dt*/) override + double const /*t*/, double const /*dt*/, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { unsigned const n_integration_points = _integration_method.getNumberOfPoints(); diff --git a/ProcessLib/TH2M/TH2MProcess.cpp b/ProcessLib/TH2M/TH2MProcess.cpp index 537d011d8a4ea5c367515a52398a846ac92a8a3e..632606aa0f061013342f6ef3aef67dc654cab772 100644 --- a/ProcessLib/TH2M/TH2MProcess.cpp +++ b/ProcessLib/TH2M/TH2MProcess.cpp @@ -373,7 +373,8 @@ void TH2MProcess<DisplacementDim>::postTimestepConcreteProcess( ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0]; GlobalExecutor::executeSelectedMemberOnDereferenced( &LocalAssemblerInterface::postTimestep, local_assemblers_, - pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt); + pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt, + _use_monolithic_scheme, process_id); } template <int DisplacementDim> diff --git a/ProcessLib/ThermoHydroMechanics/ThermoHydroMechanicsFEM.h b/ProcessLib/ThermoHydroMechanics/ThermoHydroMechanicsFEM.h index 90bb7886c90c1bb734e964a89753290576bf2d09..21728ec8ab786877f235967ebed75a1ccd24c3db 100644 --- a/ProcessLib/ThermoHydroMechanics/ThermoHydroMechanicsFEM.h +++ b/ProcessLib/ThermoHydroMechanics/ThermoHydroMechanicsFEM.h @@ -161,8 +161,9 @@ public: void postTimestepConcrete(Eigen::VectorXd const& /*local_x*/, Eigen::VectorXd const& /*local_x_dot*/, - double const /*t*/, - double const /*dt*/) override + double const /*t*/, double const /*dt*/, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { unsigned const n_integration_points = _integration_method.getNumberOfPoints(); diff --git a/ProcessLib/ThermoHydroMechanics/ThermoHydroMechanicsProcess.cpp b/ProcessLib/ThermoHydroMechanics/ThermoHydroMechanicsProcess.cpp index 3b19cff592dc4c5d72e2c140c9abc7907a853474..2d6aa4cdeb99f145c129346ad8d9938d4d2fff5e 100644 --- a/ProcessLib/ThermoHydroMechanics/ThermoHydroMechanicsProcess.cpp +++ b/ProcessLib/ThermoHydroMechanics/ThermoHydroMechanicsProcess.cpp @@ -390,7 +390,8 @@ void ThermoHydroMechanicsProcess<DisplacementDim>::postTimestepConcreteProcess( GlobalExecutor::executeSelectedMemberOnDereferenced( &LocalAssemblerInterface::postTimestep, _local_assemblers, - pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt); + pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt, + _use_monolithic_scheme, process_id); } template <int DisplacementDim> diff --git a/ProcessLib/ThermoMechanicalPhaseField/ThermoMechanicalPhaseFieldFEM.h b/ProcessLib/ThermoMechanicalPhaseField/ThermoMechanicalPhaseFieldFEM.h index c57fa88ff7f65a880d8af49c0905dbb6dcb4f653..7470198a693d950cd33755a71f6da3b2522e441c 100644 --- a/ProcessLib/ThermoMechanicalPhaseField/ThermoMechanicalPhaseFieldFEM.h +++ b/ProcessLib/ThermoMechanicalPhaseField/ThermoMechanicalPhaseFieldFEM.h @@ -254,7 +254,9 @@ public: void postTimestepConcrete(Eigen::VectorXd const& /*local_x*/, Eigen::VectorXd const& /*local_x_dot*/, - double const /*t*/, double const /*dt*/) override + double const /*t*/, double const /*dt*/, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { unsigned const n_integration_points = _integration_method.getNumberOfPoints(); diff --git a/ProcessLib/ThermoMechanicalPhaseField/ThermoMechanicalPhaseFieldProcess.cpp b/ProcessLib/ThermoMechanicalPhaseField/ThermoMechanicalPhaseFieldProcess.cpp index 1a948966d5a67862c512b944278b3905d1c88954..429eab489718a2b7a4404e28e90d094ad2754681 100644 --- a/ProcessLib/ThermoMechanicalPhaseField/ThermoMechanicalPhaseFieldProcess.cpp +++ b/ProcessLib/ThermoMechanicalPhaseField/ThermoMechanicalPhaseFieldProcess.cpp @@ -301,7 +301,7 @@ void ThermoMechanicalPhaseFieldProcess<DisplacementDim>:: GlobalExecutor::executeSelectedMemberOnDereferenced( &ThermoMechanicalPhaseFieldLocalAssemblerInterface::postTimestep, _local_assemblers, pv.getActiveElementIDs(), dof_tables, x, x_dot, t, - dt); + dt, _use_monolithic_scheme, process_id); } template <int DisplacementDim> diff --git a/ProcessLib/ThermoMechanics/ThermoMechanicsFEM.h b/ProcessLib/ThermoMechanics/ThermoMechanicsFEM.h index eae77e1a27ed740375413d815b4f779f66ad37c8..72a3660828de6df409f61a6f11f14b337cef19b9 100644 --- a/ProcessLib/ThermoMechanics/ThermoMechanicsFEM.h +++ b/ProcessLib/ThermoMechanics/ThermoMechanicsFEM.h @@ -226,7 +226,9 @@ public: void postTimestepConcrete(Eigen::VectorXd const& /*local_x*/, Eigen::VectorXd const& /*local_x_dot*/, - double const /*t*/, double const /*dt*/) override + double const /*t*/, double const /*dt*/, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { unsigned const n_integration_points = _integration_method.getNumberOfPoints(); diff --git a/ProcessLib/ThermoMechanics/ThermoMechanicsProcess.cpp b/ProcessLib/ThermoMechanics/ThermoMechanicsProcess.cpp index efd54a162508f740cce32627940f50dfcef08e5b..de19357e8d136eef1705de64a1255678b179c5bd 100644 --- a/ProcessLib/ThermoMechanics/ThermoMechanicsProcess.cpp +++ b/ProcessLib/ThermoMechanics/ThermoMechanicsProcess.cpp @@ -351,7 +351,8 @@ void ThermoMechanicsProcess<DisplacementDim>::postTimestepConcreteProcess( ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0]; GlobalExecutor::executeSelectedMemberOnDereferenced( &LocalAssemblerInterface::postTimestep, _local_assemblers, - pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt); + pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt, + _use_monolithic_scheme, process_id); } template <int DisplacementDim> diff --git a/ProcessLib/ThermoRichardsFlow/ThermoRichardsFlowFEM.h b/ProcessLib/ThermoRichardsFlow/ThermoRichardsFlowFEM.h index 0dd5422503e68307fcc27354e6cacd42d04b6568..8478acdc51862ad322cf771ed0349aee035ed295 100644 --- a/ProcessLib/ThermoRichardsFlow/ThermoRichardsFlowFEM.h +++ b/ProcessLib/ThermoRichardsFlow/ThermoRichardsFlowFEM.h @@ -97,8 +97,9 @@ public: void postTimestepConcrete(Eigen::VectorXd const& /*local_x*/, Eigen::VectorXd const& /*local_x_dot*/, - double const /*t*/, - double const /*dt*/) override + double const /*t*/, double const /*dt*/, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { unsigned const n_integration_points = _integration_method.getNumberOfPoints(); diff --git a/ProcessLib/ThermoRichardsFlow/ThermoRichardsFlowProcess.cpp b/ProcessLib/ThermoRichardsFlow/ThermoRichardsFlowProcess.cpp index ea855b43a2f748b68c0f07c30641630ea40267e5..e251502e9145a3b5e004137dad03c95763cd7f98 100644 --- a/ProcessLib/ThermoRichardsFlow/ThermoRichardsFlowProcess.cpp +++ b/ProcessLib/ThermoRichardsFlow/ThermoRichardsFlowProcess.cpp @@ -188,7 +188,8 @@ void ThermoRichardsFlowProcess::postTimestepConcreteProcess( ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0]; GlobalExecutor::executeSelectedMemberOnDereferenced( &LocalAssemblerIF::postTimestep, _local_assemblers, - pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt); + pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt, + _use_monolithic_scheme, process_id); } void ThermoRichardsFlowProcess::computeSecondaryVariableConcrete( diff --git a/ProcessLib/ThermoRichardsMechanics/LocalAssemblerInterface.h b/ProcessLib/ThermoRichardsMechanics/LocalAssemblerInterface.h index e3ba811b6d4ac7e4698fc83f5c8b3a12e9330bef..ceb4d78750bfd64d8f495bf1ad8c0af4480351e1 100644 --- a/ProcessLib/ThermoRichardsMechanics/LocalAssemblerInterface.h +++ b/ProcessLib/ThermoRichardsMechanics/LocalAssemblerInterface.h @@ -106,8 +106,9 @@ struct LocalAssemblerInterface : public ProcessLib::LocalAssemblerInterface, void postTimestepConcrete(Eigen::VectorXd const& /*local_x*/, Eigen::VectorXd const& /*local_x_dot*/, - double const /*t*/, - double const /*dt*/) override + double const /*t*/, double const /*dt*/, + bool const /*use_monolithic_scheme*/, + int const /*process_id*/) override { unsigned const n_integration_points = integration_method_.getNumberOfPoints(); diff --git a/ProcessLib/ThermoRichardsMechanics/ThermoRichardsMechanicsProcess.cpp b/ProcessLib/ThermoRichardsMechanics/ThermoRichardsMechanicsProcess.cpp index c4204f086ac487268d7cbefd04fa68743a8dfefa..feebf63accb9db4e3701562712eeae8336c575bc 100644 --- a/ProcessLib/ThermoRichardsMechanics/ThermoRichardsMechanicsProcess.cpp +++ b/ProcessLib/ThermoRichardsMechanics/ThermoRichardsMechanicsProcess.cpp @@ -288,7 +288,8 @@ void ThermoRichardsMechanicsProcess<DisplacementDim, ConstitutiveTraits>:: ProcessLib::ProcessVariable const& pv = getProcessVariables(process_id)[0]; GlobalExecutor::executeSelectedMemberOnDereferenced( &LocalAssemblerIF::postTimestep, local_assemblers_, - pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt); + pv.getActiveElementIDs(), dof_tables, x, x_dot, t, dt, + _use_monolithic_scheme, process_id); } template <int DisplacementDim, typename ConstitutiveTraits>