Chi-Tech
lbs_curvilinear_sweepchunk_pwl.h
Go to the documentation of this file.
1#ifndef LBS_CURVILINEAR_SWEEPCHUNK_PWL2_H
2#define LBS_CURVILINEAR_SWEEPCHUNK_PWL2_H
3
6
7namespace lbs
8{
9
10/** A sweep-chunk in point-symmetric and axial-symmetric
11 * curvilinear coordinates. */
13{
14 // Attributes
15private:
16 const std::vector<lbs::UnitCellMatrices>& secondary_unit_cell_matrices_;
17 /** Unknown manager. */
19 /** Sweeping dependency angular intensity (for each polar level). */
20 std::vector<double> psi_sweep_;
21 /** Mapping from direction linear index to direction polar level. */
22 std::map<unsigned int, unsigned int> map_polar_level_;
23 /** Normal vector to determine symmetric boundary condition. */
25
26 // Runtime params
27 const MatDbl* Maux_ = nullptr;
28
29 unsigned int polar_level_ = 0;
32
33 // Methods
34public:
35 /** Constructor. */
37 const chi_mesh::MeshContinuum& grid,
38 const chi_math::SpatialDiscretization& discretization_primary,
39 const std::vector<lbs::UnitCellMatrices>& unit_cell_matrices,
40 const std::vector<lbs::UnitCellMatrices>& secondary_unit_cell_matrices,
41 std::vector<lbs::CellLBSView>& cell_transport_views,
42 std::vector<double>& destination_phi,
43 std::vector<double>& destination_psi,
44 const std::vector<double>& source_moments,
45 lbs::LBSGroupset& groupset,
46 const std::map<int, lbs::XSPtr>& xs,
47 int num_moments,
48 int max_num_cell_dofs);
49
50protected:
51 // operations
52 void CellDataCallback();
55
56 // rz kernels
59};
60
61} // namespace lbs
62
63#endif // LBS_CURVILINEAR_SWEEPCHUNK_PWL2_H
std::vector< double > * destination_psi
std::vector< double > * destination_phi
SweepChunkPWLRZ(const chi_mesh::MeshContinuum &grid, const chi_math::SpatialDiscretization &discretization_primary, const std::vector< lbs::UnitCellMatrices > &unit_cell_matrices, const std::vector< lbs::UnitCellMatrices > &secondary_unit_cell_matrices, std::vector< lbs::CellLBSView > &cell_transport_views, std::vector< double > &destination_phi, std::vector< double > &destination_psi, const std::vector< double > &source_moments, lbs::LBSGroupset &groupset, const std::map< int, lbs::XSPtr > &xs, int num_moments, int max_num_cell_dofs)
chi_math::UnknownManager unknown_manager_
const std::vector< lbs::UnitCellMatrices > & secondary_unit_cell_matrices_
std::map< unsigned int, unsigned int > map_polar_level_
std::vector< VecDbl > MatDbl
Definition: lbs_structs.h:19