From 3274281c2d80259a7113dc67a10af20a44cda1c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Torbj=C3=B8rn=20Skille?= Date: Sun, 5 Dec 2021 12:09:19 +0100 Subject: [PATCH] multiple restart tests --- compareECLFiles.cmake | 8 ++++++++ tests/run-regressionTest.sh | 20 +++++++++++--------- tests/update_reference_data.sh | 22 ++++++++++++++++------ 3 files changed, 35 insertions(+), 15 deletions(-) diff --git a/compareECLFiles.cmake b/compareECLFiles.cmake index 98dbf68eb..02e9902f1 100755 --- a/compareECLFiles.cmake +++ b/compareECLFiles.cmake @@ -1024,6 +1024,14 @@ add_test_compareECLFiles(CASENAME 0b_rocktab_model6 REL_TOL ${rel_tol} DIR model6) +add_test_compareECLFiles(CASENAME base_wt_tracer + FILENAME BASE_WT_TRACER + SIMULATOR flow + ABS_TOL ${abs_tol} + REL_TOL ${rel_tol} + DIR tracer + RESTART_STEP 1,3,7) + # Restart tests opm_set_test_driver(${PROJECT_SOURCE_DIR}/tests/run-restart-regressionTest.sh "") diff --git a/tests/run-regressionTest.sh b/tests/run-regressionTest.sh index 1c6b9ae30..a71b5a077 100755 --- a/tests/run-regressionTest.sh +++ b/tests/run-regressionTest.sh @@ -22,7 +22,7 @@ then exit 1 fi -RESTART_STEP=0 +RESTART_STEP="" OPTIND=1 while getopts "i:r:b:f:a:t:c:d:s:e:h:" OPT do @@ -66,27 +66,29 @@ then ${COMPARE_ECL_COMMAND} ${ignore_extra_kw} -a ${INPUT_DATA_PATH}/opm-simulation-reference/${EXE_NAME}/${FILENAME} ${RESULT_PATH}/${FILENAME} ${ABS_TOL} ${REL_TOL} fi -if test $RESTART_STEP -ne 0 -then - echo "=== Executing restart run ===" +RSTEPS=(${RESTART_STEP//,/ }) + +for STEP in "${RSTEPS[@]}" +do + echo "=== Executing restart run from step: ${STEP} ===" mkdir -p ${RESULT_PATH}/restart cp -f ${RESULT_PATH}/${FILENAME}.UNRST ${RESULT_PATH}/restart - ${RST_DECK_COMMAND} ${INPUT_DATA_PATH}/${FILENAME}.DATA ${FILENAME}:${RESTART_STEP} -m inline -s > ${RESULT_PATH}/restart/${FILENAME}_RESTART.DATA + ${RST_DECK_COMMAND} ${INPUT_DATA_PATH}/${FILENAME}.DATA ${FILENAME}:${STEP} -m inline -s > ${RESULT_PATH}/restart/${FILENAME}_RESTART_${STEP}.DATA cd ${RESULT_PATH}/restart if test -n "$RESTART_SCHED" then sched_rst="--sched-restart=${RESTART_SCHED}" fi - ${BINPATH}/${EXE_NAME} ${TEST_ARGS} ${sched_rst} --output-dir=${RESULT_PATH}/restart ${FILENAME}_RESTART + ${BINPATH}/${EXE_NAME} ${TEST_ARGS} ${sched_rst} --output-dir=${RESULT_PATH}/restart ${FILENAME}_RESTART_${STEP} test $? -eq 0 || exit 1 echo "=== Executing comparison for EGRID, INIT, UNRST and RFT files for restarted run ===" - ${COMPARE_ECL_COMMAND} ${ignore_extra_kw} ${INPUT_DATA_PATH}/opm-simulation-reference/${EXE_NAME}/restart/${FILENAME}_RESTART ${RESULT_PATH}/restart/${FILENAME}_RESTART ${ABS_TOL} ${REL_TOL} + ${COMPARE_ECL_COMMAND} ${ignore_extra_kw} ${INPUT_DATA_PATH}/opm-simulation-reference/${EXE_NAME}/restart/${FILENAME}_RESTART_${STEP} ${RESULT_PATH}/restart/${FILENAME}_RESTART_${STEP} ${ABS_TOL} ${REL_TOL} if [ $? -ne 0 ] then ecode=1 - ${COMPARE_ECL_COMMAND} ${ignore_extra_kw} -a ${INPUT_DATA_PATH}/opm-simulation-reference/${EXE_NAME}/restart/${FILENAME}_RESTART ${RESULT_PATH}/restart/${FILENAME}_RESTART ${ABS_TOL} ${REL_TOL} + ${COMPARE_ECL_COMMAND} ${ignore_extra_kw} -a ${INPUT_DATA_PATH}/opm-simulation-reference/${EXE_NAME}/restart/${FILENAME}_RESTART_${STEP} ${RESULT_PATH}/restart/${FILENAME}_RESTART_${STEP} ${ABS_TOL} ${REL_TOL} fi -fi +done exit $ecode diff --git a/tests/update_reference_data.sh b/tests/update_reference_data.sh index a2cadd022..5081fd138 100755 --- a/tests/update_reference_data.sh +++ b/tests/update_reference_data.sh @@ -58,6 +58,7 @@ declare -A tests # The key in the dictionary must agree with the name given to the test when # registering it with cmake in compareEclFiles.cmake. The SIMULATION_CASE should # be the basename of the .DATA file used for the simulation. + tests[spe1]="flow spe1 SPE1CASE1" tests[spe12]="flow spe1 SPE1CASE2" tests[spe1_2p]="flow spe1 SPE1CASE2_2P" @@ -171,6 +172,7 @@ tests[micp]="flow micp MICP" tests[0_base_model6]="flow model6 0_BASE_MODEL6" tests[0a_aquct_model6]="flow model6 0A_AQUCT_MODEL6" tests[0b_rocktab_model6]="flow model6 0B_ROCKTAB_MODEL6" +tests[base_wt_tracer]="flow tracer BASE_WT_TRACER" changed_tests="" @@ -198,12 +200,20 @@ do if [ -d $configuration/build-opm-simulators/tests/results/$binary+$test_name/restart ] then - copyToReferenceDir \ - $BUILD_DIR/tests/results/$binary+$test_name/restart/ \ - $OPM_TESTS_ROOT/$dirname/opm-simulation-reference/$binary/restart \ - ${casename}_RESTART \ - EGRID INIT RFT SMSPEC UNRST UNSMRY - test $? -eq 0 && changed_tests="$changed_tests $test_name(restart)" + + RSTEPS=`ls -1 $BUILD_DIR/tests/results/$binary+$test_name/restart/*.UNRST | sed -e 's/.*RESTART_*//' | sed 's/[.].*//' ` + result=0 + for RSTEP in $RSTEPS + do + copyToReferenceDir \ + $BUILD_DIR/tests/results/$binary+$test_name/restart/ \ + $OPM_TESTS_ROOT/$dirname/opm-simulation-reference/$binary/restart \ + ${casename}_RESTART_${RSTEP} \ + EGRID INIT RFT SMSPEC UNRST UNSMRY + res=$? + test $result -eq 0 || result=$res + done + test $result -eq 0 && changed_tests="$changed_tests $test_name(restart)" fi fi done