5050#include < vector>
5151#include < math.h>
5252
53- #include " pressio/ode_steppers_implicit .hpp"
53+ #include " pressio/ode_steppers .hpp"
5454#include " pressio/rom_subspaces.hpp"
5555#include " pressio/rom_lspg_unsteady.hpp"
5656
@@ -63,7 +63,7 @@ namespace pschwarz {
6363
6464namespace pda = pressiodemoapps;
6565namespace pode = pressio::ode;
66- namespace pls = pressio::linearsolvers ;
66+ namespace pls = pressio::linsol ;
6767namespace prom = pressio::rom;
6868namespace plspg = pressio::rom::lspg;
6969
@@ -151,10 +151,10 @@ class SubdomainFOM: public SubdomainBase<mesh_t, typename app_type::state_type>
151151 std::declval<app_t &>())
152152 );
153153
154- using lin_solver_tag = pressio::linearsolvers ::iterative::Bicgstab;
155- using linsolver_t = pressio::linearsolvers ::Solver<lin_solver_tag, jacob_t >;
154+ using lin_solver_tag = pls ::iterative::Bicgstab;
155+ using linsolver_t = pls ::Solver<lin_solver_tag, jacob_t >;
156156 using nonlinsolver_t =
157- decltype ( pressio::create_newton_solver( std::declval<stepper_t &>(),
157+ decltype ( pressio::nlsol:: create_newton_solver( std::declval<stepper_t &>(),
158158 std::declval<linsolver_t &>()) );
159159
160160public:
@@ -179,7 +179,7 @@ class SubdomainFOM: public SubdomainBase<mesh_t, typename app_type::state_type>
179179 , m_state(m_app->initialCondition ())
180180 , m_stepper(pressio::ode::create_implicit_stepper(odeScheme, *(m_app)))
181181 , m_linSolverObj(std::make_shared<linsolver_t >())
182- , m_nonlinSolver(pressio::create_newton_solver(m_stepper, *m_linSolverObj))
182+ , m_nonlinSolver(pressio::nlsol:: create_newton_solver(m_stepper, *m_linSolverObj))
183183 {
184184 m_fullMeshDims = calc_mesh_dims (*m_mesh);
185185
@@ -201,7 +201,7 @@ class SubdomainFOM: public SubdomainBase<mesh_t, typename app_type::state_type>
201201 }
202202 }
203203
204- m_nonlinSolver.setStopCriterion (pressio::nonlinearsolvers ::Stop::WhenAbsolutel2NormOfCorrectionBelowTolerance);
204+ m_nonlinSolver.setStopCriterion (pressio::nlsol ::Stop::WhenAbsolutel2NormOfCorrectionBelowTolerance);
205205 m_nonlinSolver.setStopTolerance (1e-5 );
206206 }
207207
@@ -500,11 +500,11 @@ class SubdomainLSPG: public SubdomainROM<mesh_t, app_type, prob_t>
500500 using trial_t = typename base_t ::trial_t ;
501501
502502 using hessian_t = Eigen::Matrix<scalar_t , -1 , -1 >; // TODO: generalize?
503- using solver_tag = pressio::linearsolvers ::direct::HouseholderQR;
504- using linsolver_t = pressio::linearsolvers ::Solver<solver_tag, hessian_t >;
503+ using solver_tag = pls ::direct::HouseholderQR;
504+ using linsolver_t = pls ::Solver<solver_tag, hessian_t >;
505505
506506 using problem_t = decltype (plspg::create_unsteady_problem(pressio::ode::StepScheme(), std::declval<trial_t &>(), std::declval<app_t &>()));
507- using nonlinsolver_t = decltype (pressio::create_gauss_newton_solver(std::declval<problem_t &>(), std::declval<linsolver_t &>()));
507+ using nonlinsolver_t = decltype (pressio::nlsol:: create_gauss_newton_solver(std::declval<problem_t &>(), std::declval<linsolver_t &>()));
508508
509509public:
510510
@@ -528,10 +528,10 @@ class SubdomainLSPG: public SubdomainROM<mesh_t, app_type, prob_t>
528528 transRoot, basisRoot, nmodes)
529529 , m_problem(plspg::create_unsteady_problem(odeScheme, this ->m_trialSpace, *(this ->m_app)))
530530 , m_linSolverObj(std::make_shared<linsolver_t >())
531- , m_nonlinSolver(pressio::create_gauss_newton_solver(m_problem, *m_linSolverObj))
531+ , m_nonlinSolver(pressio::nlsol:: create_gauss_newton_solver(m_problem, *m_linSolverObj))
532532 {
533533
534- m_nonlinSolver.setStopCriterion (pressio::nonlinearsolvers ::Stop::WhenAbsolutel2NormOfCorrectionBelowTolerance);
534+ m_nonlinSolver.setStopCriterion (pressio::nlsol ::Stop::WhenAbsolutel2NormOfCorrectionBelowTolerance);
535535 m_nonlinSolver.setStopTolerance (1e-5 );
536536
537537 }
@@ -833,8 +833,8 @@ class SubdomainLSPGHyper: public SubdomainHyper<mesh_t, app_type, prob_t>
833833 using weigh_t = Weigher<scalar_t >;
834834
835835 using hessian_t = Eigen::Matrix<scalar_t , -1 , -1 >; // TODO: generalize?
836- using solver_tag = pressio::linearsolvers ::direct::HouseholderQR;
837- using linsolver_t = pressio::linearsolvers ::Solver<solver_tag, hessian_t >;
836+ using solver_tag = pls ::direct::HouseholderQR;
837+ using linsolver_t = pls ::Solver<solver_tag, hessian_t >;
838838
839839 using trialHyp_t = typename base_t ::trialHyp_t;
840840
@@ -845,10 +845,10 @@ class SubdomainLSPGHyper: public SubdomainHyper<mesh_t, app_type, prob_t>
845845 std::declval<app_t &>(),
846846 std::declval<updaterHyp_t&>()));
847847
848- using tag_t = pressio::nonlinearsolvers ::impl::CompactWeightedGaussNewtonNormalEqTag;
848+ using tag_t = pressio::nlsol ::impl::CompactWeightedGaussNewtonNormalEqTag;
849849
850850 using nonlinsolverHyp_t =
851- decltype (pressio::create_gauss_newton_solver(
851+ decltype (pressio::nlsol:: create_gauss_newton_solver(
852852 std::declval<problemHyp_t&>(),
853853 std::declval<linsolver_t &>(),
854854 std::declval<weigh_t &>(),
@@ -924,12 +924,12 @@ class SubdomainLSPGHyper: public SubdomainHyper<mesh_t, app_type, prob_t>
924924 );
925925
926926 m_nonlinSolverHyper = std::make_shared<nonlinsolverHyp_t>(
927- pressio::create_gauss_newton_solver (
927+ pressio::nlsol:: create_gauss_newton_solver (
928928 *m_problemHyper, *m_linSolverObjHyper, *m_weigher, *m_tag
929929 )
930930 );
931931
932- m_nonlinSolverHyper->setStopCriterion (pressio::nonlinearsolvers ::Stop::WhenAbsolutel2NormOfCorrectionBelowTolerance);
932+ m_nonlinSolverHyper->setStopCriterion (pressio::nlsol ::Stop::WhenAbsolutel2NormOfCorrectionBelowTolerance);
933933 m_nonlinSolverHyper->setStopTolerance (1e-5 );
934934 }
935935
0 commit comments