34 std::unique_ptr<AbstractJacobianAssembler>&& asm1,
35 std::unique_ptr<AbstractJacobianAssembler>&& asm2,
39 std::string
const& log_file_path)
40 :
_asm1(std::move(asm1)),
41 _asm2(std::move(asm2)),
47 _log_file.precision(std::numeric_limits<double>::digits10);
49 "import numpy as np\n"
50 "from numpy import nan\n"
55 double const t,
double const dt,
56 std::vector<double>
const& local_x,
57 std::vector<double>
const& local_xdot,
58 const double dxdot_dx,
const double dx_dx,
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;
65 std::unique_ptr<AbstractJacobianAssembler>
_asm1;
66 std::unique_ptr<AbstractJacobianAssembler>
_asm2;
85 std::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
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
void assembleWithJacobian(LocalAssemblerInterface &local_assembler, double const t, double const dt, std::vector< double > const &local_x, std::vector< double > const &local_xdot, const double dxdot_dx, const double dx_dx, 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< CompareJacobiansJacobianAssembler > createCompareJacobiansJacobianAssembler(BaseLib::ConfigTree const &config)