DDPM-6param / scripts /shell /plot_r2_cosmology_lhs.sh
collins909's picture
Upload 6-parameter conditional DDPM (HI emulation, CAMELS LH params_6, best checkpoint) with full training/eval/posterior toolchain
1f3e7a2 verified
#!/bin/bash
#SBATCH --account=<your-slurm-account>
#SBATCH --partition=l40s
#SBATCH --nodes=1
#SBATCH --ntasks=8
#SBATCH --gres=gpu:l40s:1
#SBATCH --time=12:00:00
#SBATCH --job-name=ddpm_r2_lhs
#SBATCH --mail-user=<your-email> # replace before submitting
#SBATCH --output=slurm-r2-lhs-%j.out
#SBATCH --error=slurm-r2-lhs-%j.err
# Latin-hypercube R² figure (plot_r2_cosmology_lhs.py): μ(P) and σ(P) vs (Ωm, σ8).
#
# Submit (full DDIM run — slow):
# sbatch <DDPM_ROOT>/Models/6param_ddpm_hi_lh6/scripts/shell/plot_r2_cosmology_lhs.sh
#
# Plot only from saved NPZ (fast):
# sbatch --export=FROM_NPZ=/path/to/r2_lhs_data.npz /scratch/.../plot_r2_cosmology_lhs.sh
#
# Optional env vars:
# CHECKPOINT, DATA_DIR, OUTPUT_PNG, SAVE_NPZ, LHS_N, MAPS_PER_POINT, DDIM_STEPS, SEED
REPO="<DDPM_ROOT>/Models/6param_ddpm_hi_lh6"
cd "${REPO}" || exit 1
module load python/miniconda3-py3.12-usr
DATA_DIR="${DATA_DIR:-<DDPM_ROOT>/data/LH_data/params_6}"
CHECKPOINT="${CHECKPOINT:-<DDPM_ROOT>/april_26/ddpm_hi_lh6/outputs_conditional_6param_20260413_132226/checkpoints/best_model.pt}"
OUTPUT_PNG="${OUTPUT_PNG:-${REPO}/ddpm_eval_notebook_out/r2_cosmology_lhs50_ddpm.png}"
FROM_NPZ="${FROM_NPZ:-}"
SAVE_NPZ="${SAVE_NPZ:-}"
LHS_N="${LHS_N:-50}"
MAPS_PER_POINT="${MAPS_PER_POINT:-15}"
DDIM_STEPS="${DDIM_STEPS:-50}"
SEED="${SEED:-42}"
echo "==============================================="
echo "Job ID: ${SLURM_JOB_ID:-local}"
echo "Job Name: ${SLURM_JOB_NAME:-plot_r2_cosmology_lhs}"
echo "Node: ${SLURM_NODELIST:-$(hostname)}"
echo "GPU: ${CUDA_VISIBLE_DEVICES:-n/a}"
echo "Starting Time: $(date)"
echo "OUTPUT_PNG: ${OUTPUT_PNG}"
echo "FROM_NPZ: ${FROM_NPZ:-(none — full compute)}"
echo "==============================================="
PY_ARGS=(
python plot_r2_cosmology_lhs.py
--output "${OUTPUT_PNG}"
--lhs-n "${LHS_N}"
--maps-per-point "${MAPS_PER_POINT}"
--ddim-steps "${DDIM_STEPS}"
--seed "${SEED}"
)
if [[ -n "${FROM_NPZ}" ]]; then
PY_ARGS+=(--from-npz "${FROM_NPZ}")
else
PY_ARGS+=(--checkpoint "${CHECKPOINT}" --data-dir "${DATA_DIR}")
if [[ -n "${SAVE_NPZ}" ]]; then
PY_ARGS+=(--save-npz "${SAVE_NPZ}")
fi
fi
"${PY_ARGS[@]}"
echo "==============================================="
echo "Finished at: $(date)"
echo "Figure: ${OUTPUT_PNG}"
echo "==============================================="