OGS
AnalyticalJacobianAssembler.cpp
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
5
7
8namespace ProcessLib
9{
11 std::size_t const /*mesh_item_id*/,
12 LocalAssemblerInterface& local_assembler, double const t, double const dt,
13 std::vector<double> const& local_x, std::vector<double> const& local_x_prev,
14 std::vector<double>& local_b_data, std::vector<double>& local_Jac_data)
15{
16 local_assembler.assembleWithJacobian(t, dt, local_x, local_x_prev,
17 local_b_data, local_Jac_data);
18}
19
21 LocalAssemblerInterface& local_assembler, double const t, double const dt,
22 Eigen::VectorXd const& local_x, Eigen::VectorXd const& local_x_prev,
23 int const process_id, std::vector<double>& local_b_data,
24 std::vector<double>& local_Jac_data)
25{
27 t, dt, local_x, local_x_prev, process_id, local_b_data, local_Jac_data);
28}
29
30std::unique_ptr<AbstractJacobianAssembler> AnalyticalJacobianAssembler::copy()
31 const
32{
33 return std::make_unique<AnalyticalJacobianAssembler>(*this);
34}
35
36} // namespace ProcessLib
void assembleWithJacobian(std::size_t const mesh_item_id, LocalAssemblerInterface &local_assembler, double const t, double const dt, std::vector< double > const &local_x, std::vector< double > const &local_x_prev, std::vector< double > &local_b_data, std::vector< double > &local_Jac_data) override
void assembleWithJacobianForStaggeredScheme(LocalAssemblerInterface &local_assembler, double const t, double const dt, Eigen::VectorXd const &local_x, Eigen::VectorXd const &local_x_prev, int const process_id, std::vector< double > &local_b_data, std::vector< double > &local_Jac_data) override
std::unique_ptr< AbstractJacobianAssembler > copy() const override
virtual void assembleWithJacobian(double const t, double const dt, std::vector< double > const &local_x, std::vector< double > const &local_x_prev, std::vector< double > &local_b_data, std::vector< double > &local_Jac_data)
virtual void assembleWithJacobianForStaggeredScheme(double const t, double const dt, Eigen::VectorXd const &local_x, Eigen::VectorXd const &local_x_prev, int const process_id, std::vector< double > &local_b_data, std::vector< double > &local_Jac_data)