From 74603405e4c73fbbb556ef1a92985e0269f24e31 Mon Sep 17 00:00:00 2001 From: Felix Koehler Date: Wed, 13 Mar 2024 16:00:30 +0100 Subject: [PATCH] Add range of 2d linear scenarios --- validation/qualitative_rollouts.py | 74 +++++++++++++++++++++++++++++- 1 file changed, 73 insertions(+), 1 deletion(-) diff --git a/validation/qualitative_rollouts.py b/validation/qualitative_rollouts.py index bf5fffd..7607f37 100644 --- a/validation/qualitative_rollouts.py +++ b/validation/qualitative_rollouts.py @@ -154,13 +154,85 @@ CONFIGURATIONS_2D = [ # Linear ( - ex.stepper.Advection(2, 3.0, 110, 0.1, velocity=jnp.array([0.3, -0.5])), + ex.stepper.Advection(2, 3.0, 75, 0.1, velocity=jnp.array([0.3, -0.5])), "advection", ex.ic.RandomTruncatedFourierSeries(2, cutoff=5), 0, 30, (-1.0, 1.0), ), + ( + ex.stepper.Diffusion(2, 3.0, 75, 0.1, diffusivity=0.01), + "diffusion", + ex.ic.RandomTruncatedFourierSeries(2, cutoff=5), + 0, + 30, + (-1.0, 1.0), + ), + ( + ex.stepper.Diffusion(2, 3.0, 75, 0.1, diffusivity=jnp.array([0.01, 0.05])), + "diffusion_diagonal", + ex.ic.RandomTruncatedFourierSeries(2, cutoff=5), + 0, + 30, + (-1.0, 1.0), + ), + ( + ex.stepper.Diffusion( + 2, 3.0, 75, 0.1, diffusivity=jnp.array([[0.02, 0.01], [0.01, 0.05]]) + ), + "diffusion_anisotropic", + ex.ic.RandomTruncatedFourierSeries(2, cutoff=5), + 0, + 30, + (-1.0, 1.0), + ), + ( + ex.stepper.AdvectionDiffusion( + 2, 3.0, 75, 0.1, diffusivity=0.01, velocity=jnp.array([0.3, -0.5]) + ), + "advection_diffusion", + ex.ic.RandomTruncatedFourierSeries(2, cutoff=5), + 0, + 30, + (-1.0, 1.0), + ), + ( + ex.stepper.Dispersion(2, 3.0, 75, 0.1, dispersivity=0.01), + "dispersion", + ex.ic.RandomTruncatedFourierSeries(2, cutoff=3), + 0, + 30, + (-1.0, 1.0), + ), + ( + ex.stepper.Dispersion( + 2, 3.0, 75, 0.1, dispersivity=0.01, advect_on_diffusion=True + ), + "dispersion_advect_on_diffuse", + ex.ic.RandomTruncatedFourierSeries(2, cutoff=3), + 0, + 30, + (-1.0, 1.0), + ), + ( + ex.stepper.HyperDiffusion(2, 3.0, 75, 0.1, hyper_diffusivity=0.0001), + "hyper_diffusion", + ex.ic.RandomTruncatedFourierSeries(2, cutoff=5), + 0, + 30, + (-1.0, 1.0), + ), + ( + ex.stepper.HyperDiffusion( + 2, 3.0, 75, 0.1, hyper_diffusivity=0.0001, diffuse_on_diffuse=True + ), + "hyper_diffusion_diffuse_on_diffuse", + ex.ic.RandomTruncatedFourierSeries(2, cutoff=5), + 0, + 30, + (-1.0, 1.0), + ), # Nonlinear ( ex.stepper.Burgers(2, 3.0, 65, 0.05, diffusivity=0.02),