はじめに
Chandra CIAO を使っていると、コマンド実行時に次のようなエラーが出ることがあります。
ERROR: The parameter file '~/.cxcds_param4/xxxx.par'
is missing the following parameters: ...
これは、CIAO をアップデートしたときに、以前のパラメータファイル (.par) が残っていて、仕様と合わなくなることで発生することが多い気がします。
解決ログとして、ここに手短に整理しておきます。
詳しくは公式ドキュメントも参照:
原因
CIAO のツールは、実行時の設定を $HOME/cxcds_param4/ に .par ファイルとして保存し、以降はその設定が優先されます。
そのため、環境更新や CIAO のアップデートを行っても、古い .par が残っているとそちらが使われ続けてしまい、
ツール本体が要求する新しいパラメータ(例:maxsize など、後述の筆者の実例を参照)が不足してエラーとなります。
解決方法
該当コマンドのパラメータ設定をリセットします:
punlearn コマンド名
筆者の実例
筆者の環境では、CIAO 4.15 → 4.17 に更新した際に、simulate_psf のパラメータ仕様が変わっていたことが原因でした。
CIAO 4.16.2(August 2024)のアップデートで、simulate_psf に maxsize パラメータが新たに追加されています:
maxsize — 出力 PSF イメージの最大サイズを指定するためのパラメータ
(参考:https://cxc.cfa.harvard.edu/ciao/ahelp/simulate_psf.html)
そのため、古い .par には maxsize が存在せず、次のようなエラーが発生しました。
# simulate_psf: ERROR: The parameter file '~/.cxcds_param4/simulate_psf.par'
is missing the following parameters: maxsize
以下を実行して解決:
punlearn simulate_psf
まとめ
- CIAO は
.parを Home ディレクトリに保存して再利用する仕組みになっている - アップデート後も古い
.parが優先されることがある - その結果、新しいパラメータが読み込まれず
missing parameterが発生する - 環境を変更したときは、基本的に
punlearnを実行しておくと安全