An open source method of characteristics neutron transport code.
|
Forms segment data associated with a 3D track. More...
#include "src/MOCKernel.h"
Public Member Functions | |
SegmentationKernel (TrackGenerator *track_generator) | |
Constructor for the SegmentationKernel assigns default values, calls the MOCKernel constructor, and pulls a reference to temporary segment data from the provided TrackGenerator. More... | |
void | execute (FP_PRECISION length, Material *mat, long fsr_id, int track_idx, int cmfd_surface_fwd, int cmfd_surface_bwd, FP_PRECISION x_start, FP_PRECISION y_start, FP_PRECISION z_start, FP_PRECISION phi, FP_PRECISION theta) |
Writes segment information to the segmentation data array. More... | |
Public Member Functions inherited from MOCKernel | |
MOCKernel (TrackGenerator *track_generator) | |
Constructor for the MOCKernel assigns default values. More... | |
virtual | ~MOCKernel () |
Destructor for MOCKernel. | |
int | getCount () |
Reads and returns the current count. More... | |
void | setMaxOpticalLength (FP_PRECISION max_tau) |
Resets the maximum optcal path length for a segment. More... | |
virtual void | newTrack (Track *track) |
Prepares an MOCKernel for a new Track. More... | |
Additional Inherited Members | |
Protected Attributes inherited from MOCKernel | |
int | _count |
FP_PRECISION | _max_tau |
int | _num_groups |
Forms segment data associated with a 3D track.
A SegmentationKernel inherets from MOCKernel and is a kernel which is initialized with a pointer to segment data. Input data of the "execute" function is saved to the segment data, forming explicit segments.
SegmentationKernel::SegmentationKernel | ( | TrackGenerator * | track_generator | ) |
Constructor for the SegmentationKernel assigns default values, calls the MOCKernel constructor, and pulls a reference to temporary segment data from the provided TrackGenerator.
track_generator | the TrackGenerator used to pull relevant tracking data from |
|
virtual |
Writes segment information to the segmentation data array.
The SegmentationKernel execute function writes segment information to the segmentation data referenced by _segments. Due to restrictions on maximum optical path length, the counter may be incremented by more than one to account for splitting of the segment into segments of allowed optical path length.
length | segment length |
mat | Material associated with the segment |
fsr_id | the FSR ID of the FSR associated with the segment |
track_idx | the track index in stack |
cmfd_surface_fwd | CMFD surface at the end of the segment in the forward direction |
cmfd_surface_bwd | CMFD surface at the end of the segment in the backward direction |
x_start | x coordinate of the start of the segment |
y_start | y coordinate of the start of the segment |
z_start | z coordinate of the start of the sement |
phi | azimuthal angle of this segment |
theta | polar angle of this segment |
Implements MOCKernel.