1#ifndef CHITECH_CBC_FLUDS_H
2#define CHITECH_CBC_FLUDS_H
13class SpatialDiscretization;
30 std::vector<double>& local_psi_data,
42 unsigned int face_id)
const;
45 unsigned int face_node_mapped,
46 unsigned int angle_set_index);
56 size_t num_loc_sucs)
override
63 size_t num_loc_deps)
override
68 size_t num_loc_deps)
override
std::vector< std::vector< double > > & DeplocIOutgoingPsi() override
CBC_FLUDS(size_t num_groups, size_t num_angles, const CBC_FLUDSCommonData &common_data, std::vector< double > &local_psi_data, const chi_math::UnknownManager &psi_uk_man, const chi_math::SpatialDiscretization &sdm)
std::vector< std::vector< double > > delayed_prelocI_outgoing_psi_
const double * GetLocalCellUpwindPsi(const std::vector< double > &psi_data_block, const chi_mesh::Cell &cell)
const std::vector< double > & GetNonLocalUpwindData(uint64_t cell_global_id, unsigned int face_id) const
std::pair< uint64_t, unsigned int > CellFaceKey
void ClearSendPsi() override
std::vector< double > & DelayedLocalPsiOld() override
std::vector< std::vector< double > > & DelayedPrelocIOutgoingPsi() override
void AllocatePrelocIOutgoingPsi(size_t num_grps, size_t num_angles, size_t num_loc_deps) override
std::vector< std::vector< double > > & PrelocIOutgoingPsi() override
std::map< CellFaceKey, std::vector< double > > & DeplocsOutgoingMessages()
std::reference_wrapper< std::vector< double > > local_psi_data_
std::vector< double > delayed_local_psi_old_
void AllocateDelayedPrelocIOutgoingPsi(size_t num_grps, size_t num_angles, size_t num_loc_deps) override
std::vector< double > delayed_local_psi_
void AllocateOutgoingPsi(size_t num_grps, size_t num_angles, size_t num_loc_sucs) override
const chi_mesh::sweep_management::FLUDSCommonData & CommonData() const
const std::vector< double > & GetLocalUpwindDataBlock() const
const chi_math::SpatialDiscretization & sdm_
std::vector< std::vector< double > > delayed_prelocI_outgoing_psi_old_
void AllocateDelayedLocalPsi(size_t num_grps, size_t num_angles) override
std::map< CellFaceKey, std::vector< double > > deplocs_outgoing_messages_
void AllocateInternalLocalPsi(size_t num_grps, size_t num_angles) override
std::vector< std::vector< double > > prelocI_outgoing_psi_
std::vector< std::vector< double > > deplocI_outgoing_psi_
const chi_math::UnknownManager & psi_uk_man_
const CBC_FLUDSCommonData & common_data_
const double * GetNonLocalUpwindPsi(const std::vector< double > &psi_data, unsigned int face_node_mapped, unsigned int angle_set_index)
std::vector< std::vector< double > > & DelayedPrelocIOutgoingPsiOld() override
void ClearLocalAndReceivePsi() override
std::vector< std::vector< double > > boundryI_incoming_psi_
std::vector< double > & DelayedLocalPsi() override