pybsm.otf.functional.common_OTFs
- pybsm.otf.functional.common_OTFs(*, sensor: Sensor, scenario: Scenario, uu: ndarray, vv: ndarray, mtf_wavelengths: ndarray, mtf_weights: ndarray, slant_range: float, int_time: float) OTF
Returns optical transfer functions for the most common sources.
This code originally served the NIIRS model but has been abstracted for other uses. OTFs for the aperture, detector, turbulence, jitter, drift, wavefront errors, and image filtering are all explicitly considered.
- Parameters:
sensor – an object from the class sensor
scenario – an object from the class scenario
uu – spatial frequency arrays in the x directions respectively (cycles/radian)
vv – spatial frequency arrays in the y directions respectively (cycles/radian)
mtf_wavelengths – a numpy array of wavelengths (m)
mtf_weights – a numpy array of weights for each wavelength contribution (arb)
slant_range – distance between the sensor and the target (m)
int_time – integration time (s)
- Returns:
- otf:
an object containing results of the OTF calculations along with many intermediate calculations; the full system OTF is contained in otf.system_OTF
- Raises:
- ZeroDivisionError:
if slant_range is 0
- IndexError:
if uu or vv are empty