#!/bin/bash
#SBATCH --job-name=SDtrain
#SBATCH --nodes=1
#SBATCH --exclusive
#SBATCH --time=08:00:00
#SBATCH --array=1-6
#SBATCH --output=/home/tanpv/Progs/claude/HW_EC_10/logs/sd_train_%a_%j.out
#SBATCH --error=/home/tanpv/Progs/claude/HW_EC_10/logs/sd_train_%a_%j.err
set -euo pipefail
cd /home/tanpv/Progs/claude/HW_EC_10
export LD_LIBRARY_PATH=/home/tanpv/.conda/envs/ehd/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
export PYTHONPATH=src/sd
export OMP_NUM_THREADS=1 MKL_NUM_THREADS=1 PYTHONWARNINGS=ignore
PY=/home/tanpv/.conda/envs/ehd/bin/python
W="W${SLURM_ARRAY_TASK_ID}"
PACK=/home/tanpv/Progs/claude/HW_EC_10/outputs_sd/operational_ope1b

# Ope1b stage-2 reweighting, per ../HW developing.txt (2359):
#   W1 equal (empty); W2/W4/W5/W6 LogReg_L2=.3333 LGBM_clf=.3333 others .0833;
#   W3 five families .1833, ANN_16 .0833.
case "$W" in
  W1) WT="" ;;
  W3) WT="LogReg_L2=0.1833:LogReg_EN=0.1833:LGBM_clf=0.1833:LGBM_clf_slow=0.1833:HistGB_clf=0.1833:ANN_16=0.0833" ;;
  *)  WT="LogReg_L2=0.3333:LGBM_clf=0.3333:LogReg_EN=0.0833:LGBM_clf_slow=0.0833:HistGB_clf=0.0833:ANN_16=0.0833" ;;
esac

echo "[SDtrain] $W  weights='${WT:-equal}'  $(date '+%F %T')"
$PY src/sd/operational_train.py --window "$W" --jobs 20 --years train \
    --pack-dir "$PACK" ${WT:+--s2-weights "$WT"}
echo "[SDtrain] $W done $(date '+%F %T')"
