EGSnrc C++ class library  Report PIRS-898 (2021)
Iwan Kawrakow, Ernesto Mainegra-Hing, Frederic Tessier, Reid Townson and Blake Walters
Classes | Namespaces | Typedefs | Enumerations | Functions
volcor.h File Reference

Region discovery/volume correction functionality for EGS_AEnvelope geometries. More...

#include <map>
#include <set>
#include <cstdlib>
#include <fstream>
#include "egs_base_geometry.h"
#include "egs_functions.h"
#include "egs_input.h"
#include "egs_timer.h"
#include "egs_rndm.h"
#include "egs_shapes.h"

Go to the source code of this file.

Classes

class  volcor::VCOptions
 Volume correction initialization helper class. More...
 
struct  volcor::VCResults
 Struct used to collect and output results about a volume correction run. More...
 

Namespaces

 volcor
 Region discovery/volume correction for auto envelope geometries.
 

Typedefs

typedef pair< EGS_BaseGeometry
*, int > 
volcor::GeomRegPairT
 
typedef std::map< int, EGS_I64 > volcor::HitCounterT
 
typedef map< int, set
< EGS_BaseGeometry * > > 
volcor::RegionGeomSetT
 
typedef pair< int, EGS_Float > volcor::RegVolume
 RegVolumeT is a pair of the form (RegionNumber, Volume)
 

Enumerations

enum  volcor::VolCorMode { volcor::DISCOVERY_ONLY, volcor::ZERO_VOL, volcor::CORRECT_VOLUME }
 

Functions

EGS_Float volcor::getShapeVolume (EGS_Input *shape_inp)
 
vector< EGS_Float > volcor::applyVolumeCorrections (VCOptions *opts, HitCounterT hit_counter, vector< EGS_Float > uncorrected)
 Apply volume corrections to base regions. More...
 
vector< EGS_Float > volcor::applyFileVolumeCorrections (VCOptions *opts, vector< RegVolume > &reg_volumes, vector< EGS_Float > uncorrected)
 Apply file volume corrections to base regions. More...
 
vector< EGS_Float > volcor::getUncorrectedVolumes (EGS_BaseGeometry *base)
 
VCResults volcor::findRegionsWithInscribed (VCOptions *opts, EGS_BaseGeometry *base, vector< EGS_BaseGeometry * > inscribed, vector< EGS_AffineTransform * > transforms)
 Run the MC simulation. More...
 
bool volcor::isGZip (istream &vfile)
 
void volcor::readVolumes (istream &vfile, vector< RegVolume > &reg_volumes, RegionGeomSetT &reg_with_inscribed, vector< EGS_BaseGeometry * > inscribed)
 
int volcor::loadVolumes (string fname, vector< RegVolume > &reg_volumes, RegionGeomSetT &reg_with_inscribed, vector< EGS_BaseGeometry * > inscribed)
 
VCResults volcor::loadFileResults (VCOptions *opts, EGS_BaseGeometry *base, vector< EGS_BaseGeometry * > inscribed, vector< EGS_AffineTransform * > transforms)
 Load volume corrections from external file.
 

Detailed Description

Region discovery/volume correction functionality for EGS_AEnvelope geometries.

Author
Randle Taylor (randl.nosp@m.e.ta.nosp@m.ylor@.nosp@m.gmai.nosp@m.l.com)
Version
1.0
Date
2015/03/09

Definition in file volcor.h.