BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
Public Member Functions | Data Fields
GMAD::PhysicsBiasing Class Reference

Physics biasing class for parser. More...

#include <physicsbiasing.h>

Inheritance diagram for GMAD::PhysicsBiasing:
Inheritance graph
Collaboration diagram for GMAD::PhysicsBiasing:
Collaboration graph

Public Member Functions

 PhysicsBiasing ()
 constructor
 
void PublishMembers ()
 publish members
 
void clear ()
 reset
 
void print () const
 print some properties
 
void set_value (const std::string &property, double value, bool bExit=true)
 set methods by property name, numeric values
 
void set_value (const std::string &property, Array *value, bool bExit=true)
 set methods by property name, list of numeric values
 
void set_value (const std::string &property, std::string value, bool bExit=true)
 set methods by property name, string values
 
std::list< std::variant< bool, int, double, std::string > > get_value_array (const std::string &)
 Get method for lists.
 
- Public Member Functions inherited from GMAD::Published< PhysicsBiasing >
bool NameExists (const std::string &name) const
 
std::set< std::string > AllNames ()
 
T get (const PhysicsBiasing *instance, const std::string &name) const
 Get method for class C.
 
Published< PhysicsBiasing >::template AttributeMap< T > & attribute_map () const
 

Data Fields

std::string name
 
std::string particle
 particle name
 
std::string process
 geant4 process: single string, but can have multiple processes separated with a space
 
std::vector< std::string > processList
 
std::vector< double > factor
 factors corresponding to process
 
std::vector< PhysicsBiasingType > flag
 flag which particles are biased
 

Additional Inherited Members

- Protected Types inherited from GMAD::Published< PhysicsBiasing >
using AttributeMap = typename std::unordered_map< std::string, T C::* >
 Define AttributeMap of string and class member pointer.
 
- Protected Member Functions inherited from GMAD::Published< PhysicsBiasing >
void publish (const std::string &name, T C::*mp)
 Make pointer to member from class C and type T with accessible with a name.
 
void set (PhysicsBiasing *instance, const PhysicsBiasing *instance2, const std::string &name)
 Set member with name of class instance to value of second instance.
 
AttributeMap< T > & attribute_map () const
 Access method to static map for type T and class C.
 
void set (PhysicsBiasing *instance, const std::string &name, double value)
 
void set (PhysicsBiasing *instance, const std::string &name, GMAD::Array *const &value)
 
void set (PhysicsBiasing *instance, const std::string &name, const T &value)
 

Detailed Description

Physics biasing class for parser.

Author
Jochem Snuverink

Definition at line 44 of file physicsbiasing.h.

Constructor & Destructor Documentation

◆ PhysicsBiasing()

PhysicsBiasing::PhysicsBiasing ( )

constructor

Definition at line 28 of file physicsbiasing.cc.

References PublishMembers().

Here is the call graph for this function:

Member Function Documentation

◆ clear()

void PhysicsBiasing::clear ( )

reset

Definition at line 42 of file physicsbiasing.cc.

References factor, flag, name, particle, and process.

◆ get_value_array()

std::list< std::variant< bool, int, double, std::string > > PhysicsBiasing::get_value_array ( const std::string &  property)

Get method for lists.

Definition at line 139 of file physicsbiasing.cc.

References factor, and flag.

◆ print()

void PhysicsBiasing::print ( ) const

print some properties

Definition at line 52 of file physicsbiasing.cc.

References factor, flag, name, particle, and process.

◆ PublishMembers()

void PhysicsBiasing::PublishMembers ( )

publish members

Definition at line 32 of file physicsbiasing.cc.

References factor, flag, name, particle, process, and GMAD::Published< PhysicsBiasing >::publish().

Referenced by PhysicsBiasing().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ set_value() [1/3]

void PhysicsBiasing::set_value ( const std::string &  property,
Array *  value,
bool  bExit = true 
)

set methods by property name, list of numeric values

Definition at line 81 of file physicsbiasing.cc.

References factor, flag, and GMAD::Array::set_vector().

Here is the call graph for this function:

◆ set_value() [2/3]

void PhysicsBiasing::set_value ( const std::string &  property,
double  value,
bool  bExit = true 
)

set methods by property name, numeric values

Definition at line 65 of file physicsbiasing.cc.

References factor, and flag.

◆ set_value() [3/3]

void PhysicsBiasing::set_value ( const std::string &  property,
std::string  value,
bool  bExit = true 
)

set methods by property name, string values

Definition at line 108 of file physicsbiasing.cc.

References name, particle, and process.

Field Documentation

◆ factor

std::vector<double> GMAD::PhysicsBiasing::factor

factors corresponding to process

Definition at line 54 of file physicsbiasing.h.

Referenced by BDSDetectorConstruction::BuildCrossSectionBias(), clear(), get_value_array(), print(), PublishMembers(), set_value(), and set_value().

◆ flag

std::vector<PhysicsBiasingType> GMAD::PhysicsBiasing::flag

flag which particles are biased

Definition at line 56 of file physicsbiasing.h.

Referenced by BDSDetectorConstruction::BuildCrossSectionBias(), clear(), get_value_array(), print(), PublishMembers(), set_value(), and set_value().

◆ name

std::string GMAD::PhysicsBiasing::name

◆ particle

std::string GMAD::PhysicsBiasing::particle

particle name

Definition at line 49 of file physicsbiasing.h.

Referenced by BDSDetectorConstruction::BuildCrossSectionBias(), clear(), print(), PublishMembers(), and set_value().

◆ process

std::string GMAD::PhysicsBiasing::process

geant4 process: single string, but can have multiple processes separated with a space

Definition at line 51 of file physicsbiasing.h.

Referenced by BDSDetectorConstruction::BuildCrossSectionBias(), clear(), print(), PublishMembers(), and set_value().

◆ processList

std::vector<std::string> GMAD::PhysicsBiasing::processList

Definition at line 52 of file physicsbiasing.h.


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