ikarus-project / ikarus

Ikarus is a C++-based library that uses DUNE modules to solve partial differential equations with the finite element method and more.
https://ikarus-project.github.io/
Other
6 stars 3 forks source link

replace infos passed to loggers from int and double to a struct #206

Open tarun-mitruka opened 10 months ago

tarun-mitruka commented 10 months ago

Example: here in ikarus/solver/nonlinearsolver/newtonraphsonwithscalarsubsidiaryfunction.hh,

this->notify(NonLinearSolverMessages::SOLUTION_CHANGED, lambda);
this->notify(NonLinearSolverMessages::CORRECTIONNORM_UPDATED, dNorm);
this->notify(NonLinearSolverMessages::RESIDUALNORM_UPDATED, rNorm);

Instead of passing lambda, dNorm, and rNorm, a struct messageInformation can be passed similar to solverInformation

Unify it in all control routines. Currently lambda is not printed correctly for Ikarus::LoadControl when compared to Ikarus::PathFollowing