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

A class used to calculate the linear expansion coeffs of each FSR. More...

#include <TrackTraversingAlgorithms.h>

Public Member Functions

 LinearExpansionGenerator (CPULSSolver *solver)
 Constructor for LinearExpansionGenerator calls the TraverseSegments constructor, allocates memory for the linear expansion terms and initializes its own exponential evaluator. More...
 
virtual ~LinearExpansionGenerator ()
 Destructor for the LinearExpansionGenerator.
 
void execute ()
 When executed, the LinearExpansionGenerator Kernel loops over all Tracks to compute constant terms used to compute the linear source.
 
void onTrack (Track *track, segment *segments)
 Contributions to the linear source expansion terms and constant terms are calculated for every segment in the Track. 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 the linear expansion coeffs of each FSR.

"src/TrackTraversingAlgorithms.h"

A LinearExpansionGenerator loops through all tracks and computes : a linear source term that is constant through all iterations, matrix coefficients in each FSR that help compute the linear source.

Constructor & Destructor Documentation

◆ LinearExpansionGenerator()

LinearExpansionGenerator::LinearExpansionGenerator ( CPULSSolver solver)

Constructor for LinearExpansionGenerator calls the TraverseSegments constructor, allocates memory for the linear expansion terms and initializes its own exponential evaluator.

Parameters
solverthe linear source solver used

Member Function Documentation

◆ onTrack()

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

Contributions to the linear source expansion terms and constant terms are calculated for every segment in the Track.

Parameters
trackTrack the Kernel is acting on
segmentssegments on that Track

Implements TraverseSegments.


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