Documentation for v0.1 version (#199)
* Adding Equations, solving typos * improve _code.rst * the team rst and restuctore index.rst * fixing errors --------- Co-authored-by: Dario Coscia <dariocoscia@dhcp-015.eduroam.sissa.it>
This commit is contained in:
committed by
Nicola Demo
parent
3f9305d475
commit
8b7b61b3bd
@@ -14,14 +14,17 @@ class TimeDependentProblem(AbstractProblem):
|
||||
:Example:
|
||||
>>> from pina.problem import SpatialProblem, TimeDependentProblem
|
||||
>>> from pina.operators import grad, laplacian
|
||||
>>> from pina import Condition, Span
|
||||
>>> from pina.equations import Equation, FixedValue
|
||||
>>> from pina import Condition
|
||||
>>> from pina.geometry import CartesianDomain
|
||||
>>> import torch
|
||||
>>>
|
||||
>>>
|
||||
>>> class Wave(TimeDependentSpatialProblem):
|
||||
>>>
|
||||
>>> output_variables = ['u']
|
||||
>>> spatial_domain = Span({'x': [0, 3]})
|
||||
>>> temporal_domain = Span({'t': [0, 1]})
|
||||
>>> spatial_domain = CartesianDomain({'x': [0, 3]})
|
||||
>>> temporal_domain = CartesianDomain({'t': [0, 1]})
|
||||
>>>
|
||||
>>> def wave_equation(input_, output_):
|
||||
>>> u_t = grad(output_, input_, components=['u'], d=['t'])
|
||||
@@ -29,10 +32,6 @@ class TimeDependentProblem(AbstractProblem):
|
||||
>>> delta_u = laplacian(output_, input_, components=['u'], d=['x'])
|
||||
>>> return delta_u - u_tt
|
||||
>>>
|
||||
>>> def nil_dirichlet(input_, output_):
|
||||
>>> value = 0.0
|
||||
>>> return output_.extract(['u']) - value
|
||||
>>>
|
||||
>>> def initial_condition(input_, output_):
|
||||
>>> u_expected = (-3*torch.sin(2*torch.pi*input_.extract(['x']))
|
||||
>>> + 5*torch.sin(8/3*torch.pi*input_.extract(['x'])))
|
||||
@@ -40,10 +39,10 @@ class TimeDependentProblem(AbstractProblem):
|
||||
>>> return u - u_expected
|
||||
>>>
|
||||
>>> conditions = {
|
||||
>>> 't0': Condition(Span({'x': [0, 3], 't':0}), initial_condition),
|
||||
>>> 'gamma1': Condition(Span({'x':0, 't':[0, 1]}), nil_dirichlet),
|
||||
>>> 'gamma2': Condition(Span({'x':3, 't':[0, 1]}), nil_dirichlet),
|
||||
>>> 'D': Condition(Span({'x': [0, 3], 't':[0, 1]}), wave_equation)}
|
||||
>>> 't0': Condition(CartesianDomain({'x': [0, 3], 't':0}), Equation(initial_condition)),
|
||||
>>> 'gamma1': Condition(CartesianDomain({'x':0, 't':[0, 1]}), FixedValue(0.)),
|
||||
>>> 'gamma2': Condition(CartesianDomain({'x':3, 't':[0, 1]}), FixedValue(0.)),
|
||||
>>> 'D': Condition(CartesianDomain({'x': [0, 3], 't':[0, 1]}), Equation(wave_equation))}
|
||||
|
||||
"""
|
||||
|
||||
|
||||
Reference in New Issue
Block a user