#!/bin/bash if [[ $1 == "lcl" ]]; then prog=(openmc-inst01.py hpmr.py -l -g $2 -e) elif [[ $1 == "nolcl" ]]; then prog=(./hpmr.py -g $2 -e) else echo "Error: first CLI input must be [lcl/nolcl], and second [pin/ass/core]. Example usage:" echo " ./triso_study_driver.sh lcl pin (run pin-level on LCL)" echo " ./triso_study_driver.sh nolcl ass (run assembly-level)" echo " ./triso_study_driver.sh nolcl core (run core-level)" exit -1 fi mkdir -p results/ results/rpt results/rrpt touch results/rpt_table results/rrpt_table echo "\#" $(date) > results/rpt_table echo "\#" $(date) > results/rrpt_table # 1. Basic calculation without homogenization echo -n "Running explicit TRISO calculation..." "${prog[@]}" -t none > results/explicit.out keff=$(cat results/explicit.out| grep "Combined k-effective" | cut -d "=" -f 2 | cut -d "+" -f 1) pm=$(cat results/explicit.out | grep "Combined k-effective" | cut -d "=" -f 2 | cut -d "-" -f 2) echo Found $keff +/- $pm # 2. VWH calculation echo -n "Running VWH homogenization calculation..." "${prog[@]}" -t vwh > results/vwh.out keff=$(cat results/vwh.out| grep "Combined k-effective" | cut -d "=" -f 2 | cut -d "+" -f 1) pm=$(cat results/vwh.out | grep "Combined k-effective" | cut -d "=" -f 2 | cut -d "-" -f 2) echo found $keff +/- $pm # 3. RPT # 0.025 step size -> 21 iterations for rad in $(seq 0.65 0.025 1.15); do echo -n "Running RPT with $rad cm... " "${prog[@]}" -t rpt -r $rad > results/rpt/$rad.out keff=$(cat results/rpt/$rad.out | grep "Combined k-effective" | cut -d "=" -f 2 | cut -d "+" -f 1) pm=$(cat results/rpt/$rad.out | grep "Combined k-effective" | cut -d "=" -f 2 | cut -d "-" -f 2) md5=$(cat results/rpt/$rad.out | grep "MD5:" | cut -d ":" -f 2 | sed "s/ //g") echo found $keff +/- $pm echo $rad $keff $pm $(hostname) $md5 \($(date)\) >> results/rpt_table done # 4. RRPT # 0.025 step size -> 35 iterations for rad in $(seq 0.1 0.025 0.95); do echo -n "Running RRPT with $rad cm... " "${prog[@]}" -t rrpt -r $rad > results/rrpt/$rad.out keff=$(cat results/rrpt/$rad.out | grep "Combined k-effective" | cut -d "=" -f 2 | cut -d "+" -f 1) pm=$(cat results/rrpt/$rad.out | grep "Combined k-effective" | cut -d "=" -f 2 | cut -d "-" -f 2) md5=$(cat results/rrpt/$rad.out | grep "MD5:" | cut -d ":" -f 2 | sed "s/ //g") echo found $keff +/- $pm echo $rad $keff $pm $(hostname) $md5 \($(date)\) >> results/rrpt_table done