#!/bin/bash # List each test that should be run declare -a TEST_LIST=(test27cells test27cells_subset) # Run same test for each executable for TEST in "${TEST_LIST[@]}" do # Test for particles with the same smoothing length for v in {0..3} do echo "" rm -f brute_force_27_standard.dat swift_dopair_27_standard.dat echo "Running ./$TEST -n 6 -r 1 -d 0 -f standard -v $v" ./$TEST -n 6 -r 1 -d 0 -f standard -v $v if [ -e brute_force_27_standard.dat ] then if python3 @srcdir@/difffloat.py brute_force_27_standard.dat swift_dopair_27_standard.dat @srcdir@/tolerance_27_normal.dat 6 then echo "Accuracy test passed" else echo "Accuracy test failed" exit 1 fi else echo "Error Missing test output file" exit 1 fi echo "------------" done # Test for particles with random smoothing lengths for v in {0..3} do echo "" rm -f brute_force_27_standard.dat swift_dopair_27_standard.dat echo "Running ./$TEST -n 6 -r 1 -d 0 -f standard -v $v -p 1.1" ./$TEST -n 6 -r 1 -d 0 -f standard -v $v -p 1.1 if [ -e brute_force_27_standard.dat ] then if python3 @srcdir@/difffloat.py brute_force_27_standard.dat swift_dopair_27_standard.dat @srcdir@/tolerance_27_perturbed_h.dat 6 then echo "Accuracy test passed" else echo "Accuracy test failed" exit 1 fi else echo "Error Missing test output file" exit 1 fi echo "------------" done # Test for particles with random smoothing lengths for v in {0..3} do echo "" rm -f brute_force_27_standard.dat swift_dopair_27_standard.dat echo "Running ./$TEST -n 6 -r 1 -d 0 -f standard -v $v -p 1.3" ./$TEST -n 6 -r 1 -d 0 -f standard -v $v -p 1.3 if [ -e brute_force_27_standard.dat ] then if python3 @srcdir@/difffloat.py brute_force_27_standard.dat swift_dopair_27_standard.dat @srcdir@/tolerance_27_perturbed_h2.dat 6 then echo "Accuracy test passed" else echo "Accuracy test failed" exit 1 fi else echo "Error Missing test output file" exit 1 fi echo "------------" done done exit $?