ArfBase#

class jinwu.core.ArfBase(path: Path, header: Dict[str, Any], meta: Any, headers_dump: Any, energ_lo: np.ndarray = <factory>, energ_hi: np.ndarray = <factory>, specresp: np.ndarray = <factory>, columns: Tuple[str, ...] = ())[source]#

Bases: OgipResponseBase

Pure field-only base dataclass for ARF response data.

Attributes Summary

Methods Summary

get_keyword_ci(key[, default])

大小写不敏感地从 header 中读取关键字(若 header 为 dict).

validate()

通用层:仅检查路径与 header 存在性。子类会扩展。

Attributes Documentation

REQUIRED_COLUMNS_ARF = ['ENERG_LO', 'ENERG_HI', 'SPECRESP']#
REQUIRED_COLUMNS_RMF_MIN = ['ENERG_LO', 'ENERG_HI', 'MATRIX']#
REQUIRED_KEYS_ANY = [['TELESCOP'], ['INSTRUME'], ['DETNAM', 'DETNAME']]#
columns: Tuple[str, ...]#
energ_hi: ndarray#
energ_lo: ndarray#
header: Dict[str, Any]#
headers_dump: Any#
kind: ClassVar[Literal['arf']] = 'arf'#
meta: Any#
path: Path#
specresp: ndarray#
validation#

Methods Documentation

get_keyword_ci(key: str, default: Any | None = None) Any#

大小写不敏感地从 header 中读取关键字(若 header 为 dict).

返回关键字值或提供的 default。便于统一处理 FITS 关键字的大小写差异。

validate() ValidationReport#

通用层:仅检查路径与 header 存在性。子类会扩展。