libera_utils.footprint_matching.geometry.ViewingFrame#
- class libera_utils.footprint_matching.geometry.ViewingFrame(satellite: ndarray, b_hat: ndarray, c_hat: ndarray, n_hat: ndarray)#
Bases:
objectRadiometer viewing frames of
Nfootprints.The angular-frame PSF projection (
project_to_angular()) needs, per footprint, the satellite ECEF position and the three orthonormal look axes(b_hat, c_hat, n_hat).compute_viewing_frames()builds allNtogether so the orchestrator can hand each footprint its single-footprint frame viafor_index().- Variables:
satellite (np.ndarray) –
(N, 3)satellite ECEF positions, km.b_hat (np.ndarray) –
(N, 3)boresight look-direction unit vectors (delta = beta = 0).c_hat (np.ndarray) –
(N, 3)cross-scan unit axes (perpendicular to the scan plane).n_hat (np.ndarray) –
(N, 3)in-scan-plane unit axes (= c_hat x b_hat).
Methods
for_index(i)Return the single-footprint frame at index
i(arrays of shape(1, 3)).- for_index(i: int) ViewingFrame#
Return the single-footprint frame at index
i(arrays of shape(1, 3)).