Chi-Tech
chi_mesh::sweep_management::SweepBoundary Class Reference

#include <sweep_boundaries.h>

Inheritance diagram for chi_mesh::sweep_management::SweepBoundary:
chi_mesh::sweep_management::BoundaryIncidentHeterogeneous chi_mesh::sweep_management::BoundaryIsotropicHomogenous chi_mesh::sweep_management::BoundaryReflecting chi_mesh::sweep_management::BoundaryVaccuum

Public Member Functions

 SweepBoundary (BoundaryType bndry_type, size_t in_num_groups, chi_math::CoordinateSystemType coord_type)
 
virtual ~SweepBoundary ()=default
 
BoundaryType Type () const
 
chi_math::CoordinateSystemType CoordType () const
 
bool IsReflecting () const
 
double GetEvaluationTime () const
 
void SetEvaluationTime (double time)
 
virtual double * HeterogeneousPsiIncoming (uint64_t cell_local_id, unsigned int face_num, unsigned int fi, unsigned int angle_num, int group_num, size_t gs_ss_begin)
 
virtual double * HeterogeneousPsiOutgoing (uint64_t cell_local_id, unsigned int face_num, unsigned int fi, unsigned int angle_num, size_t gs_ss_begin)
 
virtual void UpdateAnglesReadyStatus (const std::vector< size_t > &angles, size_t gs_ss)
 
virtual bool CheckAnglesReadyStatus (const std::vector< size_t > &angles, size_t gs_ss)
 
virtual void Setup (const chi_mesh::MeshContinuum &grid, const chi_math::AngularQuadrature &quadrature)
 
double * ZeroFlux (int group_num)
 

Protected Attributes

std::vector< double > zero_boundary_flux_
 
size_t num_groups_
 

Private Attributes

const chi_mesh::sweep_management::BoundaryType type_
 
const chi_math::CoordinateSystemType coord_type_
 
double evaluation_time_ = 0.0
 Time value passed to boundary functions. More...
 

Detailed Description

Base class for sweep related boundaries.

Definition at line 23 of file sweep_boundaries.h.

Constructor & Destructor Documentation

◆ SweepBoundary()

chi_mesh::sweep_management::SweepBoundary::SweepBoundary ( BoundaryType  bndry_type,
size_t  in_num_groups,
chi_math::CoordinateSystemType  coord_type 
)
inlineexplicit

Definition at line 34 of file sweep_boundaries.h.

◆ ~SweepBoundary()

virtual chi_mesh::sweep_management::SweepBoundary::~SweepBoundary ( )
virtualdefault

Member Function Documentation

◆ CheckAnglesReadyStatus()

virtual bool chi_mesh::sweep_management::SweepBoundary::CheckAnglesReadyStatus ( const std::vector< size_t > &  angles,
size_t  gs_ss 
)
inlinevirtual

Reimplemented in chi_mesh::sweep_management::BoundaryReflecting.

Definition at line 70 of file sweep_boundaries.h.

◆ CoordType()

chi_math::CoordinateSystemType chi_mesh::sweep_management::SweepBoundary::CoordType ( ) const
inline

Definition at line 46 of file sweep_boundaries.h.

◆ GetEvaluationTime()

double chi_mesh::sweep_management::SweepBoundary::GetEvaluationTime ( ) const
inline

Definition at line 50 of file sweep_boundaries.h.

◆ HeterogeneousPsiIncoming()

double * chi_mesh::sweep_management::SweepBoundary::HeterogeneousPsiIncoming ( uint64_t  cell_local_id,
unsigned int  face_num,
unsigned int  fi,
unsigned int  angle_num,
int  group_num,
size_t  gs_ss_begin 
)
virtual

◆ HeterogeneousPsiOutgoing()

double * chi_mesh::sweep_management::SweepBoundary::HeterogeneousPsiOutgoing ( uint64_t  cell_local_id,
unsigned int  face_num,
unsigned int  fi,
unsigned int  angle_num,
size_t  gs_ss_begin 
)
virtual

Returns a pointer to a heterogeneous flux storage location.

Reimplemented in chi_mesh::sweep_management::BoundaryReflecting.

Definition at line 26 of file sweep_boundary.cc.

◆ IsReflecting()

bool chi_mesh::sweep_management::SweepBoundary::IsReflecting ( ) const
inline

Definition at line 47 of file sweep_boundaries.h.

◆ SetEvaluationTime()

void chi_mesh::sweep_management::SweepBoundary::SetEvaluationTime ( double  time)
inline

Definition at line 51 of file sweep_boundaries.h.

◆ Setup()

virtual void chi_mesh::sweep_management::SweepBoundary::Setup ( const chi_mesh::MeshContinuum grid,
const chi_math::AngularQuadrature quadrature 
)
inlinevirtual

◆ Type()

BoundaryType chi_mesh::sweep_management::SweepBoundary::Type ( ) const
inline

Definition at line 45 of file sweep_boundaries.h.

◆ UpdateAnglesReadyStatus()

virtual void chi_mesh::sweep_management::SweepBoundary::UpdateAnglesReadyStatus ( const std::vector< size_t > &  angles,
size_t  gs_ss 
)
inlinevirtual

Reimplemented in chi_mesh::sweep_management::BoundaryReflecting.

Definition at line 67 of file sweep_boundaries.h.

◆ ZeroFlux()

double * chi_mesh::sweep_management::SweepBoundary::ZeroFlux ( int  group_num)
inline

Definition at line 76 of file sweep_boundaries.h.

Field Documentation

◆ coord_type_

const chi_math::CoordinateSystemType chi_mesh::sweep_management::SweepBoundary::coord_type_
private

Definition at line 27 of file sweep_boundaries.h.

◆ evaluation_time_

double chi_mesh::sweep_management::SweepBoundary::evaluation_time_ = 0.0
private

Time value passed to boundary functions.

Definition at line 28 of file sweep_boundaries.h.

◆ num_groups_

size_t chi_mesh::sweep_management::SweepBoundary::num_groups_
protected

Definition at line 31 of file sweep_boundaries.h.

◆ type_

const chi_mesh::sweep_management::BoundaryType chi_mesh::sweep_management::SweepBoundary::type_
private

Definition at line 26 of file sweep_boundaries.h.

◆ zero_boundary_flux_

std::vector<double> chi_mesh::sweep_management::SweepBoundary::zero_boundary_flux_
protected

Definition at line 30 of file sweep_boundaries.h.


The documentation for this class was generated from the following files: