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

A class used to calculate FSR volumes. More...

#include <TrackTraversingAlgorithms.h>

Public Member Functions

 VolumeCalculator (TrackGenerator *track_generator)
 Constructor for SegmentSplitter calls the TraverseSegments constructor. More...
 
void execute ()
 FSR volumes are calculated and saved in the TrackGenerator's FSR volumes buffer. More...
 
void onTrack (Track *track, segment *segments)
 No functionality is applied for each Track during the execution of the VolumeCalculator. 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 calculate FSR volumes.

"src/TrackTraversingAlgorithms.h"

A VolumeCalculator imports a buffer to store FSR volumes from the provided TrackGenerator and the allocates VolumeKernels to calculate and update the volumes in each FSR, implicitly writing the calculated volumes back to the TrackGenerator.

Constructor & Destructor Documentation

◆ VolumeCalculator()

VolumeCalculator::VolumeCalculator ( TrackGenerator track_generator)

Constructor for SegmentSplitter calls the TraverseSegments constructor.

Parameters
track_generatorThe TrackGenerator to pull tracking information from

Member Function Documentation

◆ execute()

void VolumeCalculator::execute ( )
virtual

FSR volumes are calculated and saved in the TrackGenerator's FSR volumes buffer.

VolumeKernels are created and used to loop over all segments and tally each segments contribution to FSR volumes.

Implements TraverseSegments.

◆ onTrack()

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

No functionality is applied for each Track during the execution of the VolumeCalculator.

Parameters
trackThe current Track
segmentsThe segments associated with the Track

Implements TraverseSegments.


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