Functions |
int | tpltz_init (int n, int lambda, int *nfft, int *blocksize, fftw_complex **T_fft, double *T, fftw_complex **V_fft, double **V_rfft, fftw_plan *plan_f, fftw_plan *plan_b) |
int | tpltz_cleanup (fftw_complex **T_fft, fftw_complex **V_fft, double **V_rfft, fftw_plan *plan_f, fftw_plan *plan_b) |
| Cleans fftw workspace used in the Toeplitz matrix matrix product's computation.
|
int | stmm_core (double **V, int n, int m, fftw_complex *T_fft, int blocksize, int lambda, fftw_complex *V_fft, double *V_rfft, int nfft, fftw_plan plan_f, fftw_plan plan_b, int flag_offset) |
int | stmm (double **V, int n, int m, int id0, int l, fftw_complex *T_fft, int lambda, fftw_complex *V_fft, double *V_rfft, fftw_plan plan_f, fftw_plan plan_b, int blocksize, int nfft) |
int | gstmm (double **V, int n, int m, int id0, int l, fftw_complex *T_fft, int lambda, fftw_complex *V_fft, double *V_rfft, fftw_plan plan_f, fftw_plan plan_b, int blocksize, int nfft, int *id0gap, int *lgap, int ngap) |
int | gap_masking (double **V, int l, int *id0gap, int *lgap, int ngap) |
| Reduce the vector and mask the defined gaps.
|
int | gap_filling (double **V, int l, int *id0gap, int *lgap, int ngap) |
| Extend the vector and add zeros on the gaps locations.
|
int | reset_gaps (double **V, int id0, int local_V_size, int m, int nrow, int *id0gap, int *lgap, int ngap) |
int | mpi_stmm (double **V, int n, int m, int id0, int l, double *T, int lambda, MPI_Comm comm) |
int | mpi_stbmm (double **V, int *n, int m, int nrow, double *T, int nb_blocks_local, int nb_blocks_all, int *lambda, int *idv, int idp, int local_V_size, MPI_Comm comm) |
int | mpi_gstbmm (double **V, int *n, int m, int nrow, double *T, int nb_blocks_local, int nb_blocks_all, int *lambda, int *idv, int id0p, int local_V_size, int *id0gap, int *lgap, int ngap, MPI_Comm comm) |
int | optimal_blocksize (int n, int lambda, int bs_flag) |
int | fftw_init_omp_threads () |
int | rhs_init_fftw (int *nfft, int fft_size, fftw_complex **V_fft, double **V_rfft, fftw_plan *plan_f, fftw_plan *plan_b, int fftw_flag) |
| Initializes fftw array and plan for the right hand side, general matrix V.
|
int | circ_init_fftw (double *T, int fft_size, int lambda, fftw_complex **T_fft) |
| Initializes fftw array and plan for the circulant matrix T_circ obtained from T.
|
int | scmm_direct (int fft_size, fftw_complex *C_fft, int ncol, double *V_rfft, double **CV, fftw_complex *V_fft, fftw_plan plan_f_V, fftw_plan plan_b_CV) |
int | scmm_basic (double **V, int blocksize, int m, fftw_complex *C_fft, int lambda, double **CV, fftw_complex *V_fft, double *V_rfft, int nfft, fftw_plan plan_f_V, fftw_plan plan_b_CV) |
int | stmm_reshape (double **V, int n, int m, int id0, int l, fftw_complex *T_fft, int lambda, fftw_complex *V_fft, double *V_rfft, fftw_plan plan_f, fftw_plan plan_b, int blocksize, int nfft) |
int | build_gappy_blocks (int *n, int m, int nrow, double *T, int nb_blocks_local, int nb_blocks_all, int *lambda, int *idv, int *id0gap, int *lgap, int ngap, int *nb_blocks_gappy_final, double *Tgappy, int *idvgappy, int *ngappy, int *lambdagappy, int flag_param_distmin_fixed) |
int | print_error_message (int error_number, char const *file, int line) |
| Prints error message corresponding to an error number.
|
int | copy_block (int ninrow, int nincol, double *Vin, int noutrow, int noutcol, double *Vout, int inrow, int incol, int nblockrow, int nblockcol, int outrow, int outcol, double norm, int set_zero_flag) |
| Copies (and potentially reshapes) a selected block of the input matrix to a specified position of the output matrix.
|
int | vect2nfftblock (double *V1, int v1_size, double *V2, int fft_size, int nfft, int lambda) |
int | nfftblock2vect (double *V2, int fft_size, int nfft, int lambda, double *V1, int v1_size) |
int | gap_reduce (double **V, int id0, int l, int lambda, int *id0gap, int *lgap, int ngap, int *newl, int id0out) |
| ...convert the data vector structure into a matrix structure optimized for nfft
|
int | get_overlapping_blocks_params (int nbloc, int *idv, int *n, int local_V_size, int nrow, int idp, int *idpnew, int *local_V_size_new, int *nnew, int *ifirstBlock, int *ilastBlock) |