From 0b4159ed41db87b8d66383a3d5212fc670c94998 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Keck <Jean-Baptiste.Keck@imag.fr> Date: Tue, 14 Aug 2018 20:31:56 +0200 Subject: [PATCH] fixed all examples: VorticityField and default discretization --- examples/bubble/periodic_bubble.py | 4 +-- examples/bubble/periodic_bubble_levelset.py | 4 +-- .../periodic_bubble_levelset_penalization.py | 4 +-- examples/bubble/periodic_jet_levelset.py | 4 +-- .../particles_above_salt_periodic.py | 4 +-- .../particles_above_salt_symmetrized.py | 6 ++-- examples/shear_layer/shear_layer.py | 4 +-- examples/taylor_green/taylor_green.py | 2 +- test_examples.sh | 32 +++++++++++++++++++ 9 files changed, 48 insertions(+), 16 deletions(-) create mode 100755 test_examples.sh diff --git a/examples/bubble/periodic_bubble.py b/examples/bubble/periodic_bubble.py index 6ae304e04..14ed5a839 100644 --- a/examples/bubble/periodic_bubble.py +++ b/examples/bubble/periodic_bubble.py @@ -111,7 +111,7 @@ def compute(args): # Define parameters and field (time, timestep, velocity, vorticity, enstrophy) t, dt = TimeParameters(dtype=args.dtype) velo = VelocityField(domain=box, dtype=args.dtype) - vorti = VorticityField(domain=box, dtype=args.dtype) + vorti = VorticityField(velocity=velo) rho = DensityField(domain=box, dtype=args.dtype) mu = ViscosityField(domain=box, dtype=args.dtype, mu=True) @@ -394,7 +394,7 @@ if __name__=='__main__': parser = PeriodicBubbleArgParser() - parser.set_defaults(impl='cl', ndim=2, npts=(257,), + parser.set_defaults(impl='cl', ndim=2, npts=(256,), box_origin=(0.0,), box_length=(1.0,), tstart=0.0, tend=0.51, dt=1e-5, cfl=0.5, lcfl=0.125, diff --git a/examples/bubble/periodic_bubble_levelset.py b/examples/bubble/periodic_bubble_levelset.py index 6ddcae08c..062747feb 100644 --- a/examples/bubble/periodic_bubble_levelset.py +++ b/examples/bubble/periodic_bubble_levelset.py @@ -99,7 +99,7 @@ def compute(args): # Define parameters and field (time, timestep, velocity, vorticity, enstrophy) t, dt = TimeParameters(dtype=args.dtype) velo = VelocityField(domain=box, dtype=args.dtype) - vorti = VorticityField(domain=box, dtype=args.dtype) + vorti = VorticityField(velocity=velo) phi = LevelSetField(domain=box, dtype=args.dtype) rho = DensityField(domain=box, dtype=args.dtype) mu = ViscosityField(domain=box, dtype=args.dtype, mu=True) @@ -394,7 +394,7 @@ if __name__=='__main__': parser = PeriodicBubbleArgParser() - parser.set_defaults(impl='cl', ndim=2, npts=(257,), + parser.set_defaults(impl='cl', ndim=2, npts=(256,), box_origin=(0.0,), box_length=(1.0,), tstart=0.0, tend=0.51, dt=1e-6, cfl=0.5, lcfl=0.125, diff --git a/examples/bubble/periodic_bubble_levelset_penalization.py b/examples/bubble/periodic_bubble_levelset_penalization.py index 1c6e8b72d..13edae9d3 100644 --- a/examples/bubble/periodic_bubble_levelset_penalization.py +++ b/examples/bubble/periodic_bubble_levelset_penalization.py @@ -107,7 +107,7 @@ def compute(args): # Define parameters and field (time, timestep, velocity, vorticity, enstrophy) t, dt = TimeParameters(dtype=args.dtype) velo = VelocityField(domain=box, dtype=args.dtype) - vorti = VorticityField(domain=box, dtype=args.dtype) + vorti = VorticityField(velocity=velo) phi = LevelSetField(domain=box, dtype=args.dtype) _lambda = PenalizationField(domain=box, dtype=args.dtype) rho = DensityField(domain=box, dtype=args.dtype) @@ -433,7 +433,7 @@ if __name__=='__main__': parser = PeriodicBubbleArgParser() - parser.set_defaults(impl='cl', ndim=2, npts=(244,), + parser.set_defaults(impl='cl', ndim=2, npts=(256,), box_origin=(0.0,), box_length=(1.0,), tstart=0.0, tend=1.75, dt=1e-6, cfl=0.5, lcfl=0.125, diff --git a/examples/bubble/periodic_jet_levelset.py b/examples/bubble/periodic_jet_levelset.py index 2d1653b75..c923e5a88 100644 --- a/examples/bubble/periodic_jet_levelset.py +++ b/examples/bubble/periodic_jet_levelset.py @@ -93,7 +93,7 @@ def compute(args): # Define parameters and field (time, timestep, velocity, vorticity, enstrophy) t, dt = TimeParameters(dtype=args.dtype) velo = VelocityField(domain=box, dtype=args.dtype) - vorti = VorticityField(domain=box, dtype=args.dtype) + vorti = VorticityField(velocity=velo) phi = LevelSetField(domain=box, dtype=args.dtype) rho = DensityField(domain=box, dtype=args.dtype) @@ -339,7 +339,7 @@ if __name__=='__main__': parser = PeriodicJetArgParser() - parser.set_defaults(impl='cl', ndim=2, npts=(129,), + parser.set_defaults(impl='cl', ndim=2, npts=(128,), box_origin=(0.0,), box_length=(1.0,), tstart=0.0, tend=0.66, dt=1e-5, cfl=0.5, lcfl=0.125, diff --git a/examples/particles_above_salt/particles_above_salt_periodic.py b/examples/particles_above_salt/particles_above_salt_periodic.py index f1d3b3422..d9075ad73 100644 --- a/examples/particles_above_salt/particles_above_salt_periodic.py +++ b/examples/particles_above_salt/particles_above_salt_periodic.py @@ -118,7 +118,7 @@ def compute(args): # Define parameters and field (time, timestep, velocity, vorticity, enstrophy) t, dt = TimeParameters(dtype=args.dtype) velo = VelocityField(domain=box, dtype=args.dtype) - vorti = VorticityField(domain=box, dtype=args.dtype) + vorti = VorticityField(velocity=velo) _lambda = PenalizationField(domain=box, dtype=args.dtype) C = Field(domain=box, name='C', dtype=args.dtype) S = Field(domain=box, name='S', dtype=args.dtype) @@ -365,7 +365,7 @@ if __name__=='__main__': parser = ParticleAboveSaltArgParser() - parser.set_defaults(impl='cl', ndim=2, npts=(65,), + parser.set_defaults(impl='cl', ndim=2, npts=(64,), box_origin=(0.0,), box_length=(1.0,), tstart=0.0, tend=500.0, dt=1e-6, cfl=0.5, lcfl=0.125, diff --git a/examples/particles_above_salt/particles_above_salt_symmetrized.py b/examples/particles_above_salt/particles_above_salt_symmetrized.py index 53afffa57..f12160052 100644 --- a/examples/particles_above_salt/particles_above_salt_symmetrized.py +++ b/examples/particles_above_salt/particles_above_salt_symmetrized.py @@ -77,7 +77,7 @@ def compute(args): # Define the domain dim = args.ndim - npts = (3073,513) + npts = (3072,512) Xo = (0,0) Xn = (2400,750) box = Box(origin=Xo, length=np.subtract(Xn,Xo)) @@ -113,7 +113,7 @@ def compute(args): # Define parameters and field (time, timestep, velocity, vorticity, enstrophy) t, dt = TimeParameters(dtype=args.dtype) velo = VelocityField(domain=box, dtype=args.dtype) - vorti = VorticityField(domain=box, dtype=args.dtype) + vorti = VorticityField(velocity=velo) C = Field(domain=box, name='C', dtype=args.dtype) S = Field(domain=box, name='S', dtype=args.dtype) @@ -352,7 +352,7 @@ if __name__=='__main__': parser = ParticleAboveSaltArgParser() - parser.set_defaults(impl='cl', ndim=2, npts=(65,), + parser.set_defaults(impl='cl', ndim=2, npts=(64,), box_origin=(0.0,), box_length=(1.0,), tstart=0.0, tend=500.0, dt=1e-6, cfl=0.5, lcfl=0.125, diff --git a/examples/shear_layer/shear_layer.py b/examples/shear_layer/shear_layer.py index aae070005..3a847be71 100644 --- a/examples/shear_layer/shear_layer.py +++ b/examples/shear_layer/shear_layer.py @@ -77,7 +77,7 @@ def compute(args): # Define parameters and field (time, timestep, viscosity, velocity, vorticity) t, dt = TimeParameters(dtype=args.dtype) velo = VelocityField(domain=box, dtype=args.dtype) - vorti = VorticityField(domain=box, dtype=args.dtype) + vorti = VorticityField(velocity=velo) nu = ViscosityParameter(initial_value=args.nu, const=True, dtype=args.dtype) ### Build the directional operators @@ -277,7 +277,7 @@ if __name__=='__main__': parser = ShearLayerArgParser() - parser.set_defaults(impl='cl', ndim=2, npts=(257,), + parser.set_defaults(impl='cl', ndim=2, npts=(256,), box_origin=(0.0,), box_length=(1.0,), tstart=0.0, tend=1.25, dt=1e-4, cfl=0.5, lcfl=0.125, diff --git a/examples/taylor_green/taylor_green.py b/examples/taylor_green/taylor_green.py index 21115b59d..29dc40502 100644 --- a/examples/taylor_green/taylor_green.py +++ b/examples/taylor_green/taylor_green.py @@ -372,7 +372,7 @@ if __name__=='__main__': parser = TaylorGreenArgParser() - parser.set_defaults(impl='cl', ndim=3, npts=(65,), + parser.set_defaults(impl='cl', ndim=3, npts=(64,), box_origin=(0.0,), box_length=(2*pi,), tstart=0.0, tend=20.01, dt=1e-5, diff --git a/test_examples.sh b/test_examples.sh new file mode 100755 index 000000000..c4abfbb60 --- /dev/null +++ b/test_examples.sh @@ -0,0 +1,32 @@ +#!/bin/bash +set -e + +if [ -z "$HYSOP_ROOT" ]; then + HYSOP_ROOT=$(pwd) + echo "Warning: HYSOP_ROOT has not been set." + echo "Setting HYSOP_ROOT to '$HYSOP_ROOT'" +fi + +export HYSOP_VERBOSE=1 +export HYSOP_DEBUG=0 +export HYSOP_PROFILE=0 +export HYSOP_KERNEL_DEBUG=0 +python -c 'import hysop; print hysop' + +EXAMPLE_DIR="$HYSOP_ROOT/examples" +EXAMPLE_OPTIONS='-cp default -maxit 2' +python "$EXAMPLE_DIR/analytic/analytic.py" $EXAMPLE_OPTIONS +python "$EXAMPLE_DIR/scalar_diffusion/scalar_diffusion.py" $EXAMPLE_OPTIONS +python "$EXAMPLE_DIR/scalar_advection/scalar_advection.py" $EXAMPLE_OPTIONS +python "$EXAMPLE_DIR/shear_layer/shear_layer.py" $EXAMPLE_OPTIONS +python "$EXAMPLE_DIR/taylor_green/taylor_green.py" -impl python $EXAMPLE_OPTIONS +python "$EXAMPLE_DIR/taylor_green/taylor_green.py" -impl opencl $EXAMPLE_OPTIONS +python -c "from hysop.f2hysop import scales2py as scales" && python "$EXAMPLE_DIR/taylor_green/taylor_green.py" -impl fortran $EXAMPLE_OPTIONS +python "$EXAMPLE_DIR/bubble/periodic_bubble.py" $EXAMPLE_OPTIONS +python "$EXAMPLE_DIR/bubble/periodic_bubble_levelset.py" $EXAMPLE_OPTIONS +python "$EXAMPLE_DIR/bubble/periodic_bubble_levelset_penalization.py" $EXAMPLE_OPTIONS +python "$EXAMPLE_DIR/bubble/periodic_jet_levelset.py" $EXAMPLE_OPTIONS +python "$EXAMPLE_DIR/particles_above_salt/particles_above_salt_periodic.py" $EXAMPLE_OPTIONS +python "$EXAMPLE_DIR/particles_above_salt/particles_above_salt_symmetrized.py" $EXAMPLE_OPTIONS + +exit 0 -- GitLab