Galerkin: Steady#

Header: <pressio/rom_galerkin_steady.hpp>

API#

namespace pressio{ namespace rom{ namespace galerkin{

template<
  class TrialSubspaceType,
  class FomSystemType>
auto create_steady_problem(const TrialSubspaceType & trialSpace,   /*(1)*/
			   const FomSystemType & fomSystem)
{

  using reduced_state_t    = typename TrialSubspaceType::reduced_state_type;
  using reduced_r_t = impl::steady_galerkin_default_reduced_residual_t<TrialSubspaceType>;
  using reduced_j_t = impl::steady_galerkin_default_reduced_jacobian_t<TrialSubspaceType>;
auto create_steady_problem(const TrialSubspaceType & trialSpace,   /*(2)*/
			   const FomSystemType & fomSystem,
			   const HyperReducerType & hyperReducer)
{

  using reduced_state_t = typename TrialSubspaceType::reduced_state_type;
  using reduced_r_t = impl::steady_galerkin_default_reduced_residual_t<TrialSubspaceType>;
  using reduced_j_t = impl::steady_galerkin_default_reduced_jacobian_t<TrialSubspaceType>;
  using return_type = impl::GalerkinSteadyHypRedSystem<
    reduced_state_t, reduced_r_t, reduced_j_t,
    TrialSubspaceType, FomSystemType, HyperReducerType>;
  return return_type(trialSpace, fomSystem, hyperReducer);
}
{

  using reduced_state_t = typename TrialSubspaceType::reduced_state_type;
  using reduced_r_t = impl::steady_galerkin_default_reduced_residual_t<TrialSubspaceType>;
  using reduced_j_t = impl::steady_galerkin_default_reduced_jacobian_t<TrialSubspaceType>;
  using return_type = impl::GalerkinSteadyMaskedSystem<
    reduced_state_t, reduced_r_t, reduced_j_t,
    TrialSubspaceType, FomSystemType, MaskerType, HyperReducerType>;
  return return_type(trialSpace, fomSystem, masker, hyperReducer);
}

}}} // end pressio::rom::galerkin
#endif  // PRESSIO_ROM_GALERKIN_STEADY_HPP_