mirror of
https://github.com/pfloos/quack
synced 2025-05-06 15:14:55 +02:00
38 lines
944 B
Bash
Executable File
38 lines
944 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# Starting, ending, and step size
|
|
eta_start=0.00005
|
|
eta_end=0.007
|
|
eta_step=0.00005
|
|
|
|
# Job script name
|
|
job_script="$QUACK_ROOT/submission_scripts/submit_script_eta_scan.sh"
|
|
|
|
# Number format for eta
|
|
format="%.6f"
|
|
|
|
# Function to compare floating point values
|
|
float_ge() { awk -v n1="$1" -v n2="$2" 'BEGIN {exit !(n1 >= n2)}'; }
|
|
|
|
eta=$eta_start
|
|
while float_ge "$eta_end" "$eta"; do
|
|
|
|
echo "Running with eta = $eta"
|
|
|
|
# Write eta to eta_opt.dat (adjust if more complex format is needed)
|
|
echo "$eta" > "$QUACK_ROOT/input/eta_opt.dat"
|
|
|
|
# Submit job and capture job ID
|
|
job_id=$(sbatch --parsable "$job_script")
|
|
echo "Submitted job $job_id"
|
|
|
|
# Wait for job to finish
|
|
while squeue -j "$job_id" > /dev/null 2>&1 && squeue -j "$job_id" | grep -q "$job_id"; do
|
|
sleep 10 # Check every 10 seconds
|
|
done
|
|
|
|
# Increase eta
|
|
eta=$(awk -v a="$eta" -v s="$eta_step" 'BEGIN {printf "%.6f", a + s}')
|
|
done
|
|
|