This PR creates a directory litebird_sim/pointing_sys which includes pointing systematics framework.
I would like to discuss the implementation of it by this PR.
The pointing_sys.py
has a ConstantPointingOffset as a class with methods: add_offset_to_spacecraft, add_offset_to_telescope and add_offset_to_detector.
These method work as following:
add_offset_to_spacecraft: rotate entire spacecraft's pointing in the PLM coordinate.
add_offset_to_telescope: rotate telescope boresight in the aperture coordinate.
add_offset_to_detector: rotate detector's pointing in the detector coordinate.
Other functions are:
quat_rotation_specific_axis: generate a quaternion which describes rotation around specified axis. The function is inspired quat_rotation_*.
get_detector_orientation: return an orientation of detector which is defined by imo.
get_pointings_with_disturbance: return the time stream of pointings for the detector with specified disturbance. This function follows a structure of get_pointings. The function calls compute_pointing_and_polangle_with_disturb and all_compute_pointing_and_polangle_with_disturb which is complied by numba.
[ ] Explain the coordinate system to define a offset e.g. PLM-, aperture-, detector-coord by the litebird_sim language.
[ ] When we use add_offset_to_detector for MFT, the direction of offset has not coherent depends on the quaternion which is called by IMo. We need to understand what's going on in IMo.
[ ] How to implement more complex pointing systematics e.g. vibration with specific frequency, HWP non-ideality like a wedge angle etc. The discussion is related with New API for pointings.
This PR creates a directory
litebird_sim/pointing_sys
which includes pointing systematics framework. I would like to discuss the implementation of it by this PR.The pointing_sys.py has a
ConstantPointingOffset
as a class with methods:add_offset_to_spacecraft
,add_offset_to_telescope
andadd_offset_to_detector
. These method work as following:add_offset_to_spacecraft
: rotate entire spacecraft's pointing in the PLM coordinate.add_offset_to_telescope
: rotate telescope boresight in the aperture coordinate.add_offset_to_detector
: rotate detector's pointing in the detector coordinate.Other functions are:
quat_rotation_specific_axis
: generate a quaternion which describes rotation around specified axis. The function is inspiredquat_rotation_*
.get_detector_orientation
: return an orientation of detector which is defined by imo.get_pointings_with_disturbance
: return the time stream of pointings for the detector with specified disturbance. This function follows a structure ofget_pointings
. The function callscompute_pointing_and_polangle_with_disturb
andall_compute_pointing_and_polangle_with_disturb
which is complied by numba.[ ] Explain the coordinate system to define a offset e.g. PLM-, aperture-, detector-coord by the litebird_sim language.
[ ] When we use
add_offset_to_detector
for MFT, the direction of offset has not coherent depends on the quaternion which is called by IMo. We need to understand what's going on in IMo.[ ] How to implement more complex pointing systematics e.g. vibration with specific frequency, HWP non-ideality like a wedge angle etc. The discussion is related with New API for pointings.