PhaData#
- class jinwu.core.PhaData(path: Path, header: Dict[str, Any], meta: Any, headers_dump: Any, channels: np.ndarray = <factory>, counts: np.ndarray = <factory>, rate: Optional[np.ndarray] = None, stat_err: Optional[np.ndarray] = None, exposure: float = 0.0, backscal: Optional[float] = None, areascal: Optional[float] = None, respfile: Optional[str] = None, ancrfile: Optional[str] = None, quality: Optional[np.ndarray] = None, grouping: Optional[np.ndarray] = None, ebounds: Optional[Tuple[np.ndarray, np.ndarray, np.ndarray]] = None, raw_spectrum_columns: Optional[Dict[str, np.ndarray]] = None, columns: Tuple[str, ...] = ())[source]#
Bases:
PhaBaseConcrete PHA data class with local behavior implementation.
Attributes Summary
Methods Summary
get_keyword_ci(key[, default])大小写不敏感地从 header 中读取关键字(若 header 为 dict).
group_by_min_counts(min_counts)grppha(*[, min_counts, groupfile, rebin, ...])plot(**kwargs)rebin(*[, factor, min_counts])slice(*[, emin, emax, ch_lo, ch_hi])validate()通用层:仅检查路径与 header 存在性。子类会扩展。
Attributes Documentation
- OPTIONAL_KEYS = ['FILTER', 'EXPOSURE', 'BACKSCAL', 'AREASCAL', 'RESPFILE', 'ANCRFILE', 'CORRFILE', 'CORRSCAL']#
- OPTIONAL_RATE_COLUMNS = ['COUNTS', 'RATE']#
- REQUIRED_COLUMNS = ['CHANNEL']#
- REQUIRED_KEYS = ['TELESCOP', 'INSTRUME', 'CHANTYPE']#
- count_rate#
- validation#
Methods Documentation
- get_keyword_ci(key: str, default: Any | None = None) Any#
大小写不敏感地从 header 中读取关键字(若 header 为 dict).
返回关键字值或提供的 default。便于统一处理 FITS 关键字的大小写差异。
- grppha(*, min_counts: float | None = None, groupfile: str | None = None, rebin: bool = False, outfile: str | None = None, overwrite: bool = False) PhaData[source]#