Source code for monalisa.fourier._fc_conj
"""Port of src/fourier123/prep_function/bmFC_conj.m."""
import numpy as np
from monalisa._mat import double, int32, isempty, single, vec
from monalisa.array._col_reshape import col_reshape
[docs]
def fc_conj(C_conj, N_u, n_u, dK_u):
"""Fourier scaling ``1/prod(dK_u)`` times ``C_conj``, column format, single."""
if isempty(n_u):
n_u = N_u
C_conj = single(C_conj)
n_u = double(int32(vec(n_u)))
dK_u = double(single(vec(dK_u)))
F_conj = np.float32(1 / np.prod(dK_u))
return single(F_conj * single(col_reshape(C_conj, n_u)))