diff --git a/examples/bubble/periodic_bubble.py b/examples/bubble/periodic_bubble.py
index 6ae304e04def3f64bb743f9ed532f232f600d580..14ed5a8391636a58747fc46e9cfacc0333c25b2e 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 6ddcae08c93686bf78acaaa8f7da3345758dd9d2..062747febe0d66b0396cedbff4825a0ebe4026c9 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 1c6e8b72d1296781bc332e953e4278d7aae36801..13edae9d3c0154eba97b866f6bd945d6144a00ce 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 2d1653b75c33ebf0312af9f527ad98116fde5af4..c923e5a8876b65fd4e2864602b76fedee0e8e887 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 f1d3b34225d00bc04c58026410fd51f3d102193d..d9075ad7332edd8e5171ecd1740a54e4a91c4fe9 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 53afffa57b0222509c8bc808ff6016f1fb2a9453..f12160052a948ed9892dd99113d63b2c25e3b733 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 aae07000558b5a281eea1389cfd3a97a5d6ed3df..3a847be719c20884e18650152d437cfa32d5ec35 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 21115b59dac1890b215d0e1bc9d336108c9172c6..29dc4050218b9b10178e72843e7893df05978a9a 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 0000000000000000000000000000000000000000..c4abfbb60224ebc8b1e545ad71252c3e70e196fc
--- /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