partially fix documentation (#80)

This commit is contained in:
Anna Ivagnes
2023-04-18 10:49:01 +02:00
committed by GitHub
parent c536f8267f
commit da33aeae3a
11 changed files with 222 additions and 4 deletions

View File

@@ -1,9 +1,45 @@
"""Module for the ParametricProblem class"""
from abc import abstractmethod
from .abstract_problem import AbstractProblem
class ParametricProblem(AbstractProblem):
"""
The class for the definition of parametric problems, i.e., problems
with parameters among the input variables.
Here's an example of a spatial parametric ODE problem, i.e., a spatial
ODE problem with an additional parameter `alpha` as coefficient of the
derivative term.
:Example:
>>> from pina.problem import SpatialProblem, ParametricProblem
>>> from pina.operators import grad
>>> from pina import Condition, Span
>>> import torch
>>> class ParametricODE(SpatialProblem, ParametricProblem):
>>> output_variables = ['u']
>>> spatial_domain = Span({'x': [0, 1]})
>>> parameter_domain = Span({'alpha': {1, 10}})
>>> def ode_equation(input_, output_):
>>> u_x = grad(output_, input_, components=['u'], d=['x'])
>>> u = output_.extract(['u'])
>>> alpha = input_.extract(['alpha'])
>>> return alpha * u_x - u
>>> def initial_condition(input_, output_):
>>> value = 1.0
>>> u = output_.extract(['u'])
>>> return u - value
>>> conditions = {
>>> 'x0': Condition(Span({'x': 0, 'alpha':[1, 10]}), initial_condition),
>>> 'D': Condition(Span({'x': [0, 1], 'alpha':[1, 10]}), ode_equation)}
"""
@abstractmethod
def parameter_domain(self):