# Copyright (C) 2015-2020 by the RBniCS authors
#
# This file is part of RBniCS.
#
# SPDX-License-Identifier: LGPL-3.0-or-later

from rbnics.problems.elliptic_optimal_control.elliptic_optimal_control_reduced_problem import (
    EllipticOptimalControlReducedProblem)
from rbnics.utils.decorators import ReducedProblemFor
from rbnics.problems.elliptic_optimal_control.elliptic_optimal_control_problem import EllipticOptimalControlProblem
from rbnics.problems.base import LinearPODGalerkinReducedProblem, ParametrizedReducedDifferentialProblem
from rbnics.reduction_methods.elliptic_optimal_control import EllipticOptimalControlPODGalerkinReduction

EllipticOptimalControlPODGalerkinReducedProblem_Base = LinearPODGalerkinReducedProblem(
    EllipticOptimalControlReducedProblem(
        ParametrizedReducedDifferentialProblem))


@ReducedProblemFor(EllipticOptimalControlProblem,
                   EllipticOptimalControlPODGalerkinReduction)
class EllipticOptimalControlPODGalerkinReducedProblem(
        EllipticOptimalControlPODGalerkinReducedProblem_Base):
    pass
Beispiel #2
0
# Copyright (C) 2015-2020 by the RBniCS authors
#
# This file is part of RBniCS.
#
# SPDX-License-Identifier: LGPL-3.0-or-later

from rbnics.problems.base import LinearPODGalerkinReducedProblem, ParametrizedReducedDifferentialProblem
from rbnics.utils.decorators import ReducedProblemFor
from .geostrophic_reduced_problem import GeostrophicReducedProblem
from .geostrophic_problem import GeostrophicProblem
from reduction_methods import GeostrophicPODGalerkinReduction

GeostrophicPODGalerkinReducedProblem_Base = LinearPODGalerkinReducedProblem(
    GeostrophicReducedProblem(ParametrizedReducedDifferentialProblem))


@ReducedProblemFor(GeostrophicProblem, GeostrophicPODGalerkinReduction)
class GeostrophicPODGalerkinReducedProblem(
        GeostrophicPODGalerkinReducedProblem_Base):
    pass
Beispiel #3
0
# Copyright (C) 2015-2020 by the RBniCS authors
#
# This file is part of RBniCS.
#
# SPDX-License-Identifier: LGPL-3.0-or-later

from rbnics.problems.stokes.stokes_reduced_problem import StokesReducedProblem
from rbnics.utils.decorators import ReducedProblemFor
from rbnics.problems.stokes.stokes_problem import StokesProblem
from rbnics.problems.base import LinearPODGalerkinReducedProblem, ParametrizedReducedDifferentialProblem
from rbnics.reduction_methods.stokes import StokesPODGalerkinReduction

StokesPODGalerkinReducedProblem_Base = LinearPODGalerkinReducedProblem(
    StokesReducedProblem(ParametrizedReducedDifferentialProblem))


@ReducedProblemFor(StokesProblem, StokesPODGalerkinReduction)
class StokesPODGalerkinReducedProblem(StokesPODGalerkinReducedProblem_Base):
    pass
Beispiel #4
0
# Copyright (C) 2015-2020 by the RBniCS authors
#
# This file is part of RBniCS.
#
# SPDX-License-Identifier: LGPL-3.0-or-later

from rbnics.problems.base import LinearPODGalerkinReducedProblem, ParametrizedReducedDifferentialProblem
from rbnics.problems.elliptic.elliptic_problem import EllipticProblem
from rbnics.problems.elliptic.elliptic_reduced_problem import EllipticReducedProblem
from rbnics.reduction_methods.elliptic import EllipticPODGalerkinReduction
from rbnics.utils.decorators import ReducedProblemFor

EllipticPODGalerkinReducedProblem_Base = LinearPODGalerkinReducedProblem(
    EllipticReducedProblem(ParametrizedReducedDifferentialProblem))


# Base class containing the interface of a projection based ROM
# for elliptic problems.
@ReducedProblemFor(EllipticProblem, EllipticPODGalerkinReduction)
class EllipticPODGalerkinReducedProblem(EllipticPODGalerkinReducedProblem_Base
                                        ):
    pass