#!/bin/bash
#SBATCH --job-name=peppar_sgrb2
#SBATCH --account=astronomy-dept
#SBATCH --qos=astronomy-dept-b
#SBATCH --partition=hpg-default
#SBATCH --cpus-per-task=8
#SBATCH --mem=32gb
#SBATCH --time=48:00:00
#SBATCH --array=1-10
#SBATCH --output=/orange/adamginsburg/jwst/sgrb2/peppar/logs/peppar_%A_%a.log
#SBATCH --error=/orange/adamginsburg/jwst/sgrb2/peppar/logs/peppar_%A_%a.log

# peppar PSF photometry/astrometry for Sgr B2 F212N + F480M.
# One SLURM array task per (filter, detector); combos in combos.txt.

set -euo pipefail

BASE=/orange/adamginsburg/jwst/sgrb2/peppar
PEPPAR_REPO=/orange/adamginsburg/repos/peppar
PY=/orange/adamginsburg/miniconda3/envs/peppar/bin/python

# Clean PYTHONPATH: ONLY the peppar repo, so the env's pinned photutils 1.12
# is used (user's global PYTHONPATH points at dev repos w/ photutils 3.x).
export PYTHONPATH=$PEPPAR_REPO
export WEBBPSF_PATH=/orange/adamginsburg/repos/webbpsf/data/
export STPSF_PATH=/orange/adamginsburg/repos/webbpsf/data/
# CDBS reference tree for stsynphot phoenix models (PSF source spectrum).
export PYSYN_CDBS=/orange/adamginsburg/synphot/grp/hst/cdbs

# Pick the combo for this array index.
LINE=$(sed -n "${SLURM_ARRAY_TASK_ID}p" "$BASE/scripts/combos.txt")
FILT=$(echo "$LINE" | awk '{print $1}')
DET=$(echo "$LINE" | awk '{print $2}')

echo "=== $(date) host=$(hostname) task=$SLURM_ARRAY_TASK_ID FILT=$FILT DET=$DET ==="

# Rename job for readability (visible after launch).
scontrol update JobId="${SLURM_JOB_ID}" JobName="peppar_${FILT}_${DET}" 2>/dev/null || true

cd "$BASE"
$PY "$BASE/scripts/run_peppar_sgrb2.py" "$FILT" "$DET"

echo "=== DONE $(date) FILT=$FILT DET=$DET ==="
