35 std::unique_ptr<AbstractJacobianAssembler>&& asm1,
36 std::unique_ptr<AbstractJacobianAssembler>&& asm2,
40 std::string
const& log_file_path)
41 :
_asm1(std::move(asm1)),
42 _asm2(std::move(asm2)),
48 _log_file.precision(std::numeric_limits<double>::digits10);
50 "import numpy as np\n"
51 "from numpy import nan\n"
56 double const t,
double const dt,
57 std::vector<double>
const& local_x,
58 std::vector<double>
const& local_x_prev,
59 std::vector<double>& local_M_data,
60 std::vector<double>& local_K_data,
61 std::vector<double>& local_b_data,
62 std::vector<double>& local_Jac_data)
override;
64 std::unique_ptr<AbstractJacobianAssembler>
copy()
const override;
67 std::unique_ptr<AbstractJacobianAssembler>
_asm1;
68 std::unique_ptr<AbstractJacobianAssembler>
_asm2;
87std::unique_ptr<CompareJacobiansJacobianAssembler>
Base class for Jacobian assemblers.
bool const _fail_on_error
Whether to abort if the tolerances are exceeded.
std::unique_ptr< AbstractJacobianAssembler > _asm2
void assembleWithJacobian(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_M_data, std::vector< double > &local_K_data, std::vector< double > &local_b_data, std::vector< double > &local_Jac_data) override
std::unique_ptr< AbstractJacobianAssembler > copy() const override
CompareJacobiansJacobianAssembler(std::unique_ptr< AbstractJacobianAssembler > &&asm1, std::unique_ptr< AbstractJacobianAssembler > &&asm2, double abs_tol, double rel_tol, bool fail_on_error, std::string const &log_file_path)
std::unique_ptr< AbstractJacobianAssembler > _asm1
std::unique_ptr< CompareJacobiansJacobianAssembler > createCompareJacobiansJacobianAssembler(BaseLib::ConfigTree const &config)