An open source method of characteristics neutron transport code.
|
A class used to split explicit segments along Tracks. More...
#include <TrackTraversingAlgorithms.h>
Public Member Functions | |
SegmentSplitter (TrackGenerator *track_generator) | |
Constructor for SegmentSplitter calls the TraverseSegments constructor. More... | |
void | execute () |
Splits segments stored explicity along each Track. More... | |
void | onTrack (Track *track, segment *segments) |
Segments for the provided Track are split so that no segment has a larger optical path length than the maximum optical path length. 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 > | |
MOCKernel * | getKernel () |
Protected Attributes inherited from TraverseSegments | |
TrackGenerator * | _track_generator |
TrackGenerator3D * | _track_generator_3D |
double * | _global_z_mesh |
int | _mesh_size |
segmentationType | _segment_formation |
A class used to split explicit segments along Tracks.
"src/TrackTraversingAlgorithms.h"
A SegmentSplitter imports a maximum optical path length from the provided TrackGenerator and then ensures all segments have an optical path length less than the maximum optical path length by splitting segments stored in the Tracks.
SegmentSplitter::SegmentSplitter | ( | TrackGenerator * | track_generator | ) |
Constructor for SegmentSplitter calls the TraverseSegments constructor.
track_generator | The TrackGenerator to pull tracking information from |
|
virtual |
Splits segments stored explicity along each Track.
No MOCKernels are initialized for this function.
Implements TraverseSegments.
Segments for the provided Track are split so that no segment has a larger optical path length than the maximum optical path length.
track | The Track whose segments are potentially split |
segments | The segments associated with the Track |
Implements TraverseSegments.