1 #ifndef _fei_impl_utils_hpp_
2 #define _fei_impl_utils_hpp_
30 namespace impl_utils {
40 const std::vector<int>& targets,
41 std::vector<int>& offsets);
53 bool clear_mat_on_entry =
true,
54 bool overwrite_entries =
true);
60 const std::vector<double>& coefs);
63 const std::vector<double>& coefs,
64 std::vector<char>& buffer,
65 bool resize_buffer=
true);
68 std::vector<int>& indices,
69 std::vector<double>& coefs);
72 std::vector<int>& bcEqns,
73 std::vector<double>& bcVals);
76 std::multimap<int,int>& crmap);
void unpack_indices_coefs(const std::vector< char > &buffer, std::vector< int > &indices, std::vector< double > &coefs)
void translate_to_reduced_eqns(const fei::Reducer &reducer, fei::CSRMat &mat)
bool unpack_CSRMat(const char *buffer_begin, const char *buffer_end, fei::CSRMat &mat)
void add_to_matrix(const fei::CSRMat &inmat, bool sum_into, fei::Matrix &matrix)
void pack_indices_coefs(const std::vector< int > &indices, const std::vector< double > &coefs, std::vector< char > &buffer, bool resize_buffer)
void find_offsets(const std::vector< int > &sources, const std::vector< int > &targets, std::vector< int > &offsets)
void global_union(MPI_Comm comm, const fei::FillableMat &localMatrix, fei::FillableMat &globalUnionMatrix)
void unpack_FillableMat(const char *buffer_begin, const char *buffer_end, fei::FillableMat &mat, bool clear_mat_on_entry, bool overwrite_entries)
void pack_FillableMat(const fei::FillableMat &mat, char *buffer)
size_t num_bytes_indices_coefs(const std::vector< int > &indices, const std::vector< double > &coefs)
void add_to_graph(const fei::CSRMat &inmat, fei::Graph &graph)
size_t num_bytes_FillableMat(const fei::FillableMat &mat)
void separate_BC_eqns(const fei::FillableMat &mat, std::vector< int > &bcEqns, std::vector< double > &bcVals)
void create_col_to_row_map(const fei::FillableMat &mat, std::multimap< int, int > &crmap)
int remove_couplings(fei::FillableMat &mat)