FITSでunsigned shortやunsigned intを扱う
この投稿の内容は「cfitsioで16-bit unsigned integerを扱う例」のエントリでより詳しく解説していますので、参照ください。
FAQらしいのですが、FITSの仕様ではunsigned整数が扱えません。
unsignedっぽく扱うために、TZEROというヘッダーキーワードが用意されていて、オフセットを指定できます。
http://heasarc.gsfc.nasa.gov/fitsio/c/c_user/node23.html
で説明されているように、
16-bit unsigned integer → TFORM=1I → TZERO=32768
32-bit unsigned integer → TFORM=1J → TZERO=2147483648
と指定すると、FITSIOでデータを書き込む際にunsignedとして扱ってくれるようになります。
注意:上記ページの16-bit unsigned integerの場合のTZEROにはtypoがあるように思われます。32768 ( = 2^15)が正しいです。2014年1月14日現在、上記ページでは「32678」となっています。
[browser-shot url=”http://heasarc.gsfc.nasa.gov/fitsio/c/c_user/node23.html” width=”450”]