4.8. utils.py¶
General utility/convenience functions
- utils.circularize_next_index(i, i_max)¶
Make an index cyclic.
- Parameters
i (int) – Integer index to be converted to a cyclic index
i_max (int) – The maximum valid value of i.
- Returns
i – If input i is equal to i_max + 1, return 0, otherwise return the input i.
- Return type
int
Note
In python, list[-1] will automatically give you the last element of a list, so checking for i == -1 is redundant.
- utils.closed_segment_intersect(a, b, c, d)¶
Verifies if closed segments a, b, c, d do intersect.
- utils.covariance(data_1, data_2)¶
Two-pass numerically stable covariance calculation
- utils.cyclic_sort(list_)¶
Find the lowest member of list and perform cyclic permuting so that the lowest member is first.
Assumes unique members.
- utils.gen_de_framed_mat(temp_mat, r)¶
Return input matrix de-framed by width r.
- Parameters
temp_mat (np.array) – Matrix to be de-padded.
r (int) – Width of frame
- Returns De-framed matrix
- Rtype np.array
- utils.gen_fft(mat)¶
Generate the fast Fourier transform of a matrix.
- utils.gen_framed_mat(mat, r)¶
Return input matrix padded with a frame of zeros and width r.
- Parameters
mat (np.array) – Matrix to be padded.
r (int) – Width of frame
- Returns Framed matrix
- Rtype np.array
- utils.is_circularly_identical(list_1, list_2)¶
Returns a boolean indicating whether list_1 and list_2 are the same in any cyclic perturbation of each other.
- utils.is_point_in_closed_segment(a, b, c)¶
Returns True if c is inside closed segment, False otherwise. a, b, c are expected to be collinear
- utils.make_int_from_list(list_)¶
Concatenate the menbers of a list of integers into a integer.
- utils.mean_val(data)¶
Return the mean of the given data
- Parameters
data ([float] or np.array) – list or 1-d np.array with data values
- Returns mean
- Rtype float
- utils.multivariate_normal_dist(x, means, covar_determinant, inverse_covar_matrix)¶
All arguments assumed to be python lists
- utils.normalize_static(mat)¶
Normalize matrix such that its elements are in [0, 1]
- utils.side(a, b, c)¶
Returns a position of the point c relative to the line going through a and b Points a, b are expected to be different
- utils.variance(data)¶
Return the var of the given data
- Parameters
data ([float] or np.array) – list or 1-d np.array with data values
- Returns mean
- Rtype float