validate_frames

sofia_redux.scan.frames.frames_numba_functions.validate_frames(valid, cos_a, sin_a, native_sin_lat, native_cos_lat, validated, has_telescope_info, mount, left_nasmyth, right_nasmyth)[source]

Checks validity of frame data and updates the angles based on mount type.

The cos(latitude) and sin(latitude) values will be updated at this point if frames contain telescope data (has_telescope_info`=`True) and the current values are non-finite. the sin(latitude), cos(latitude) angles will be updated based on the mount type from the native sin(latitude) and cos(latitude) angles:

mount            sin(latitude)    cos(latitude)
-------------    -------------    -------------
Left Nasmyth     -sin(latitude)   cos(latitude)
Right Nasmyth    sin(latitude)    cos(latitude)
Other            0                1

Note that latitude is in native coordinates (no reversal by coordinate axis will be applied).

Parameters:
validnumpy.ndarray (bool)

Set to True if a frame is valid and False otherwise.

cos_anumpy.ndarray (float)

The cos(angle) values of shape (n_frames,). Updated in-place.

sin_anumpy.ndarray (float)

The sin(angle) values of shape (n_frames,). Updated in-place.

native_sin_latnumpy.ndarray (float)

The sin(latitude) values of the native coordinates with shape (n_frames,).

native_cos_latnumpy.ndarray (float)

The cos(latitude) values of the native coordinates with shape (n_frames,).

validatednumpy.ndarray (bool)

Indicates if a frame has been checked. If True, no action is taken. Otherwise, the validated flag will be set to True and cos_a/sin_a values will be fixed if NaN.

has_telescope_infonumpy.ndarray (bool)

If True, indicates that telescope information is available. If so, the sin_a and cos_a values will be updated depending on the mount type.

mountint

The mount flag.

left_nasmythint

The left Nasmyth mount flag.

right_nasmythint

The right Nasmyth mount flag.

Returns:
None