minor fix, add few tests (#38)

This commit is contained in:
Nicola Demo
2022-11-29 12:42:01 +01:00
committed by GitHub
parent a1e947fede
commit 936f5e1043
4 changed files with 52 additions and 12 deletions

View File

@@ -38,8 +38,8 @@ class Poisson(SpatialProblem):
truth_solution = poisson_sol
problem = Poisson()
model = FeedForward(2, 1)
model = FeedForward(problem.input_variables, problem.output_variables)
def test_constructor():
PINN(problem, model)
@@ -59,3 +59,23 @@ def test_span_pts():
assert pinn.input_pts['D'].shape[0] == n**2
pinn.span_pts(n, 'random', locations=['D'])
assert pinn.input_pts['D'].shape[0] == n
def test_train():
pinn = PINN(problem, model)
boundaries = ['gamma1', 'gamma2', 'gamma3', 'gamma4']
n = 10
pinn.span_pts(n, 'grid', boundaries)
pinn.span_pts(n, 'grid', locations=['D'])
pinn.train(5)
def test_train():
boundaries = ['gamma1', 'gamma2', 'gamma3', 'gamma4']
n = 10
expected_keys = [[], list(range(0, 50, 3))]
param = [0, 3]
for i, truth_key in zip(param, expected_keys):
pinn = PINN(problem, model)
pinn.span_pts(n, 'grid', boundaries)
pinn.span_pts(n, 'grid', locations=['D'])
pinn.train(50, save_loss=i)
assert list(pinn.history_loss.keys()) == truth_key