diff --git a/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler-impl.h b/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler-impl.h index 34c42024fdb6badc912870991fdd1e4e6221b3b1..388d69d93b906e1af1d220d0761bc35e245347d6 100644 --- a/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler-impl.h +++ b/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler-impl.h @@ -150,6 +150,15 @@ void LiquidFlowLocalAssembler<ShapeFunction, IntegrationMethod, GlobalDim>:: fac * rho_g * sm.dNdx.transpose() * perm.col(gravitational_axis_id); } } + +template <typename ShapeFunction, typename IntegrationMethod, + unsigned GlobalDim> +void LiquidFlowLocalAssembler<ShapeFunction, IntegrationMethod, GlobalDim>:: + computeSecondaryVariable(std::vector<double> const& local_x) +{ + (void) local_x; +} + } // end of namespace } // end of namespace diff --git a/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler.h b/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler.h index 6b34deaa09d3a3d943147f8d9bb0672be49daf96..39a20ecf653cbb6877b664ddff1ee34c2ddb623b 100644 --- a/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler.h +++ b/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler.h @@ -85,6 +85,8 @@ public: std::vector<double>& local_K_data, std::vector<double>& local_b_data) override; + void computeSecondaryVariable(std::vector<double> const& local_x) override; + Eigen::Map<const Eigen::RowVectorXd> getShapeMatrix( const unsigned integration_point) const override { diff --git a/ProcessLib/LocalAssemblerInterface.cpp b/ProcessLib/LocalAssemblerInterface.cpp index 5e572b76b0521637cdaedf49b57dfdbfc2f3bd43..6ce33e700734f74cd3c9d19f1f5131bc3d9962c1 100644 --- a/ProcessLib/LocalAssemblerInterface.cpp +++ b/ProcessLib/LocalAssemblerInterface.cpp @@ -26,6 +26,13 @@ void LocalAssemblerInterface::assembleWithJacobian( "assembler."); } +void LocalAssemblerInterface::computeSecondaryVariable(std::vector<double> const& /*local_x*/) +{ + OGS_FATAL( + "computeSecondaryVariable(...) function is not implemented in the local " + "assembler."); +} + void LocalAssemblerInterface::preTimestep( std::size_t const mesh_item_id, NumLib::LocalToGlobalIndexMap const& dof_table, GlobalVector const& x, diff --git a/ProcessLib/LocalAssemblerInterface.h b/ProcessLib/LocalAssemblerInterface.h index fc0520fd0005a190e9c8a1ec06fbdcdf490f9322..83084e12bea1e5c62081635f8c1b6d8317966438 100644 --- a/ProcessLib/LocalAssemblerInterface.h +++ b/ProcessLib/LocalAssemblerInterface.h @@ -45,6 +45,8 @@ public: std::vector<double>& local_b_data, std::vector<double>& local_Jac_data); + virtual void computeSecondaryVariable(std::vector<double> const& local_x); + virtual void preTimestep(std::size_t const mesh_item_id, NumLib::LocalToGlobalIndexMap const& dof_table, GlobalVector const& x, double const t,