An open source method of characteristics neutron transport code.
TransportSweep Class Reference

A class used to apply the MOC transport equations to all segments. More...

#include <TrackTraversingAlgorithms.h>

Public Member Functions

 TransportSweep (CPUSolver *cpu_solver)
 Constructor for TransportSweep calls the TraverseSegments constructor and initializes the associated CPUSolver to NULL. More...
 
virtual ~TransportSweep ()
 Destructor for the TransportSweep.
 
void execute ()
 MOC equations are applied to every segment in the TrackGenerator. More...
 
void onTrack (Track *track, segment *segments)
 Applies the MOC equations the Track and segments. More...
 

Additional Inherited Members

- Protected Member Functions inherited from TraverseSegments
 TraverseSegments (TrackGenerator *track_generator)
 Constructor for the TraverseSegments class assigns the TrackGenerator and pulls relevant information from it.
 
virtual ~TraverseSegments ()
 Destructor for TraverseSegments.
 
void loopOverTracks (MOCKernel *kernel)
 Loops over Tracks, applying the provided kernel to all segments and the functionality described in onTrack(...) to all Tracks. More...
 
void loopOverTracksByStackTwoWay (TransportKernel *kernel)
 Loops over all 3D Tracks using axial on-the-fly ray tracking by z-stack, going forward then backward on each 3D Track. More...
 
template<class KernelType >
MOCKernelgetKernel ()
 
- Protected Attributes inherited from TraverseSegments
TrackGenerator_track_generator
 
TrackGenerator3D_track_generator_3D
 
double * _global_z_mesh
 
int _mesh_size
 
segmentationType _segment_formation
 

Detailed Description

A class used to apply the MOC transport equations to all segments.

"src/TrackTraversingAlgorithms.h"

TransportSweep imports data from the provided TrackGenerator and using a provided CPUSolver, it applies the MOC equations to each segment, tallying the contributions to each FSR. At the end of each Track, boundary fluxes are exchanged based on boundary conditions.

Constructor & Destructor Documentation

◆ TransportSweep()

TransportSweep::TransportSweep ( CPUSolver cpu_solver)

Constructor for TransportSweep calls the TraverseSegments constructor and initializes the associated CPUSolver to NULL.

Parameters
cpu_solverThe CPUSolver to use for propagating angular fluxes

Member Function Documentation

◆ execute()

void TransportSweep::execute ( )
virtual

MOC equations are applied to every segment in the TrackGenerator.

SegmentationKernels are allocated to temporarily save segments. Then onTrack(...) applies the MOC equations to each segment and transfers boundary fluxes for the corresponding Track.

Implements TraverseSegments.

◆ onTrack()

void TransportSweep::onTrack ( Track track,
segment segments 
)
virtual

Applies the MOC equations the Track and segments.

The MOC equations are applied to each segment, attenuating the Track's angular flux and tallying FSR contributions. Finally, Track boundary fluxes are transferred.

Parameters
trackThe Track for which the angular flux is attenuated and transferred
segmentsThe segments over which the MOC equations are applied

Implements TraverseSegments.


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