8#include <kernel/lafem/arch/unit_filter_blocked.hpp>
12using namespace FEAT::LAFEM::Arch;
15template void UnitFilterBlocked::filter_rhs_generic<float, std::uint64_t>(
float * v,
int block_size,
const float *
const sv_elements,
const std::uint64_t *
const sv_indices,
const Index ue,
bool ign_nans);
16template void UnitFilterBlocked::filter_rhs_generic<double, std::uint64_t>(
double * v,
int block_size,
const double *
const sv_elements,
const std::uint64_t *
const sv_indices,
const Index ue,
bool ign_nans);
17template void UnitFilterBlocked::filter_rhs_generic<float, std::uint32_t>(
float * v,
int block_size,
const float *
const sv_elements,
const std::uint32_t *
const sv_indices,
const Index ue,
bool ign_nans);
18template void UnitFilterBlocked::filter_rhs_generic<double, std::uint32_t>(
double * v,
int block_size,
const double *
const sv_elements,
const std::uint32_t *
const sv_indices,
const Index ue,
bool ign_nans);
20template void UnitFilterBlocked::filter_def_generic<float, std::uint64_t>(
float * v,
int block_size,
const float *
const sv_elements,
const std::uint64_t *
const sv_indices,
const Index ue,
bool ign_nans);
21template void UnitFilterBlocked::filter_def_generic<double, std::uint64_t>(
double * v,
int block_size,
const double *
const sv_elements,
const std::uint64_t *
const sv_indices,
const Index ue,
bool ign_nans);
22template void UnitFilterBlocked::filter_def_generic<float, std::uint32_t>(
float * v,
int block_size,
const float *
const sv_elements,
const std::uint32_t *
const sv_indices,
const Index ue,
bool ign_nans);
23template void UnitFilterBlocked::filter_def_generic<double, std::uint32_t>(
double * v,
int block_size,
const double *
const sv_elements,
const std::uint32_t *
const sv_indices,
const Index ue,
bool ign_nans);
25template void UnitFilterBlocked::filter_unit_mat_generic<float, std::uint64_t>(
float* mat,
const std::uint64_t*
const row_ptr,
const std::uint64_t*
const col_idx,
int block_height,
int block_width,
const float *
const sv_elements,
const std::uint64_t *
const sv_indices,
const Index ue,
bool ign_nans);
26template void UnitFilterBlocked::filter_unit_mat_generic<double, std::uint64_t>(
double* mat,
const std::uint64_t*
const row_ptr,
const std::uint64_t*
const col_idx,
int block_height,
int block_width,
const double *
const sv_elements,
const std::uint64_t *
const sv_indices,
const Index ue,
bool ign_nans);
27template void UnitFilterBlocked::filter_unit_mat_generic<float, std::uint32_t>(
float* mat,
const std::uint32_t*
const row_ptr,
const std::uint32_t*
const col_idx,
int block_height,
int block_width,
const float *
const sv_elements,
const std::uint32_t *
const sv_indices,
const Index ue,
bool ign_nans);
28template void UnitFilterBlocked::filter_unit_mat_generic<double, std::uint32_t>(
double* mat,
const std::uint32_t*
const row_ptr,
const std::uint32_t*
const col_idx,
int block_height,
int block_width,
const double *
const sv_elements,
const std::uint32_t *
const sv_indices,
const Index ue,
bool ign_nans);
30template void UnitFilterBlocked::filter_offdiag_row_mat_generic<float, std::uint64_t>(
float* mat,
const std::uint64_t*
const row_ptr,
int block_height,
int block_width,
const float *
const sv_elements,
const std::uint64_t *
const sv_indices,
const Index ue,
bool ign_nans);
31template void UnitFilterBlocked::filter_offdiag_row_mat_generic<double, std::uint64_t>(
double* mat,
const std::uint64_t*
const row_ptr,
int block_height,
int block_width,
const double *
const sv_elements,
const std::uint64_t *
const sv_indices,
const Index ue,
bool ign_nans);
32template void UnitFilterBlocked::filter_offdiag_row_mat_generic<float, std::uint32_t>(
float* mat,
const std::uint32_t*
const row_ptr,
int block_height,
int block_width,
const float *
const sv_elements,
const std::uint32_t *
const sv_indices,
const Index ue,
bool ign_nans);
33template void UnitFilterBlocked::filter_offdiag_row_mat_generic<double, std::uint32_t>(
double* mat,
const std::uint32_t*
const row_ptr,
int block_height,
int block_width,
const double *
const sv_elements,
const std::uint32_t *
const sv_indices,
const Index ue,
bool ign_nans);
35template void UnitFilterBlocked::filter_weak_matrix_rows_generic<float, std::uint64_t>(
float* mat_a,
const float*
const mat_m,
const std::uint64_t*
const row_ptr,
int block_height,
int block_width,
const float *
const sv_elements,
const std::uint64_t *
const sv_indices,
const Index ue);
36template void UnitFilterBlocked::filter_weak_matrix_rows_generic<double, std::uint64_t>(
double* mat_a,
const double*
const mat_m,
const std::uint64_t*
const row_ptr,
int block_height,
int block_width,
const double *
const sv_elements,
const std::uint64_t *
const sv_indices,
const Index ue);
37template void UnitFilterBlocked::filter_weak_matrix_rows_generic<float, std::uint32_t>(
float* mat_a,
const float*
const mat_m,
const std::uint32_t*
const row_ptr,
int block_height,
int block_width,
const float *
const sv_elements,
const std::uint32_t *
const sv_indices,
const Index ue);
38template void UnitFilterBlocked::filter_weak_matrix_rows_generic<double, std::uint32_t>(
double* mat_a,
const double*
const mat_m,
const std::uint32_t*
const row_ptr,
int block_height,
int block_width,
const double *
const sv_elements,
const std::uint32_t *
const sv_indices,
const Index ue);
std::uint64_t Index
Index data type.