Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

FluxSource Class Reference

FluxSource: class which manages to compute flux from various particle source configurations. More...

#include <FluxSource.h>

Inheritance diagram for FluxSource:

EventSource List of all members.

Public Types

enum  LaunchType {
  NONE, POINT, DIRECTION, SURFACE,
  SPECTRUM, PATCHFIXED, GALACTIC
}
 choices for generating incoming particle trajectory. More...

enum  PointType { NOPOINT, SINGLE, PATCH }

Public Methods

 FluxSource ( Spectrum* aSpec = 0, double aFlux = 1 )
 constructor. More...

 FluxSource ( const DOM_Element& xelem )
virtual ~FluxSource ()
 destructor. More...

virtual FluxSource* event ()
 generate an event from a Flux object ??//. More...

virtual std::string fullTitle () const
 full-length title description of this EventSource. More...

virtual std::string displayTitle () const
 brief title description (for display) for this event source. More...

virtual void computeLaunch ()
 getLaunch - compute launch point, direction, & energy. More...

virtual double flux () const
 flux for this source in (p/(m^2*sr*sec)). More...

double solidAngle () const
 return effective solid angle. More...

void setPhiRange (double min_phi, double max_phi)
 set parameters solid angle coverage and generation area. More...

void setCosThetaRange (double min_cos, double max_cos)
void useSpectrumDirection ()
 set the mode for calculating direction to use the spectrum object. it then must implement a solidAngle(double)const to return the effective solid angle. More...

void setAcceptance ()
void setLaunch (const Vector& dir, const Point& pos)
 provide posibility of overriding box for specific launch direction and point. if only dir specified, will coose randomly. More...

void setLaunch (const Vector& dir)
void setLaunch (double theta, double phi)
void setLaunch (double xMax, double xMin, double yMax, double yMin, double zTop, double zBot, bool fan)
void setLaunch (double theta, double phi, double xMax, double xMin, double yMax, double yMin, double zTop, double zBot)
void unSetLaunch ()
double minPhi () const
double maxPhi () const
double minCosTheta () const
double maxCosTheta () const
double phi () const
double theta () const
void getSurfacePosDir ()
std::string title () const
 return a title describing the spectrum and angles. More...

void printOn ( std::ostream& out )
 print facility. More...

void spectrum (Spectrum* s, double emax=-1)
 set spectrum, with optional parameter to set the maximum energy? More...

Spectrumspectrum () const
void getGalacticDir (double l,double b)
double maxEnergy () const
 acess to the maximum energy (kinetic). More...

void setMaxEnergy (double e)
virtual int eventNumber () const
 virtual event number: should be filled in by subclass. More...

double energy () const
const Vector& launchDir () const
const Point& launchPoint () const
void refLaunch (LaunchType launch)
void refPoint (PointType point)
int refLaunch () const
int refPoint () const

Public Attributes

enum FluxSource::LaunchType  m_launch
 choices for generating incoming particle trajectory.

enum FluxSource::PointType  m_pointtype

Private Methods

void randomLaunchPoint ()

Private Attributes

double s_backoff
Spectrumm_spectrum
double m_maxEnergy
double _minCos
double _maxCos
double _minPhi
double _maxPhi
double m_rmin
double m_rmax
double _phi
double _theta
double m_galb
double m_gall
double patchHeight
double patchBottom
double patchTop
double patchXmax
double patchXmin
double patchYmax
double patchYmin
double patchWidX
double patchWidY
double Fratio
double patchRange
double patchOffset
bool sidePatch
bool fanBeam
Box* illumBox
Vector m_launchDir
Point m_launchPoint
double m_energy

Static Private Attributes

double s_radius = 1.0

Detailed Description

FluxSource: class which manages to compute flux from various particle source configurations.

Definition at line 20 of file FluxSource.h.


Member Enumeration Documentation

enum FluxSource::LaunchType
 

choices for generating incoming particle trajectory.

Enumeration values:
NONE  
POINT   random direction.
DIRECTION   fixed pointand direction(unused).
SURFACE   fixed direction.
SPECTRUM   random point and direction within a fixed surface.
PATCHFIXED   direction calculated by the spectrum object.
GALACTIC   fixed direction with respect to the galactic coordinate system.

Definition at line 102 of file FluxSource.h.

enum FluxSource::PointType
 

Enumeration values:
NOPOINT  
SINGLE   random point.
PATCH   , fixed surface.

Definition at line 112 of file FluxSource.h.


Constructor & Destructor Documentation

FluxSource::FluxSource ( Spectrum * aSpec = 0,
double aFlux = 1 )
 

constructor.

Definition at line 32 of file FluxSource.cxx.

FluxSource::FluxSource ( const DOM_Element & xelem )
 

Definition at line 45 of file FluxSource.cxx.

FluxSource::~FluxSource ( ) [virtual]
 

destructor.

Definition at line 190 of file FluxSource.cxx.


Member Function Documentation

void FluxSource::computeLaunch ( ) [virtual]
 

getLaunch - compute launch point, direction, & energy.

Definition at line 289 of file FluxSource.cxx.

Referenced by event().

std::string FluxSource::displayTitle ( ) const [virtual]
 

brief title description (for display) for this event source.

Reimplemented from EventSource.

Definition at line 439 of file FluxSource.cxx.

double FluxSource::energy ( ) const [inline]
 

Definition at line 124 of file FluxSource.h.

Referenced by FluxMgr::test().

FluxSource * FluxSource::event ( ) [virtual]
 

generate an event from a Flux object ??//.

Reimplemented from EventSource.

Definition at line 239 of file FluxSource.cxx.

int FluxSource::eventNumber ( ) const [virtual]
 

virtual event number: should be filled in by subclass.

Reimplemented from EventSource.

Definition at line 449 of file FluxSource.cxx.

double FluxSource::flux ( ) const [virtual]
 

flux for this source in (p/(m^2*sr*sec)).

Reimplemented from EventSource.

Definition at line 276 of file FluxSource.cxx.

Referenced by title().

std::string FluxSource::fullTitle ( ) const [virtual]
 

full-length title description of this EventSource.

Reimplemented from EventSource.

Definition at line 434 of file FluxSource.cxx.

void FluxSource::getGalacticDir ( double l,
double b )
 

Definition at line 878 of file FluxSource.cxx.

Referenced by FluxSource(), and computeLaunch().

void FluxSource::getSurfacePosDir ( )
 

Definition at line 754 of file FluxSource.cxx.

Referenced by computeLaunch().

const Vector & FluxSource::launchDir ( ) const [inline]
 

Definition at line 125 of file FluxSource.h.

Referenced by FluxSource(), and FluxMgr::test().

const Point & FluxSource::launchPoint ( ) const [inline]
 

Definition at line 126 of file FluxSource.h.

Referenced by FluxMgr::test().

double FluxSource::maxCosTheta ( ) const [inline]
 

Definition at line 75 of file FluxSource.h.

double FluxSource::maxEnergy ( ) const [inline]
 

acess to the maximum energy (kinetic).

Definition at line 97 of file FluxSource.h.

double FluxSource::maxPhi ( ) const [inline]
 

Definition at line 73 of file FluxSource.h.

double FluxSource::minCosTheta ( ) const [inline]
 

Definition at line 74 of file FluxSource.h.

double FluxSource::minPhi ( ) const [inline]
 

Definition at line 72 of file FluxSource.h.

double FluxSource::phi ( ) const [inline]
 

Definition at line 76 of file FluxSource.h.

Referenced by title().

void FluxSource::printOn ( std::ostream & out ) [inline]
 

print facility.

Definition at line 86 of file FluxSource.h.

void FluxSource::randomLaunchPoint ( ) [private]
 

Definition at line 246 of file FluxSource.cxx.

Referenced by computeLaunch().

int FluxSource::refLaunch ( ) const [inline]
 

Definition at line 130 of file FluxSource.h.

Referenced by FluxMgr::test().

void FluxSource::refLaunch ( LaunchType launch )
 

Definition at line 931 of file FluxSource.cxx.

int FluxSource::refPoint ( ) const [inline]
 

Definition at line 131 of file FluxSource.h.

Referenced by FluxMgr::test().

void FluxSource::refPoint ( PointType point )
 

Definition at line 932 of file FluxSource.cxx.

void FluxSource::setAcceptance ( )
 

Definition at line 200 of file FluxSource.cxx.

Referenced by FluxSource(), setCosThetaRange(), setLaunch(), and setPhiRange().

void FluxSource::setCosThetaRange ( double minc,
double maxc )
 

Definition at line 454 of file FluxSource.cxx.

Referenced by FluxSource().

void FluxSource::setLaunch ( double theta,
double phi,
double xMax,
double xMin,
double yMax,
double yMin,
double zTop,
double zBot )
 

Definition at line 506 of file FluxSource.cxx.

void FluxSource::setLaunch ( double xMax,
double xMin,
double yMax,
double yMin,
double zTop,
double zBot,
bool fan )
 

Definition at line 582 of file FluxSource.cxx.

void FluxSource::setLaunch ( double theta,
double phi )
 

Definition at line 487 of file FluxSource.cxx.

void FluxSource::setLaunch ( const Vector & dir )
 

Definition at line 496 of file FluxSource.cxx.

void FluxSource::setLaunch ( const Vector & dir,
const Point & pos )
 

provide posibility of overriding box for specific launch direction and point. if only dir specified, will coose randomly.

Definition at line 474 of file FluxSource.cxx.

Referenced by FluxSource(), getGalacticDir(), and setLaunch().

void FluxSource::setMaxEnergy ( double e ) [inline]
 

Definition at line 98 of file FluxSource.h.

Referenced by spectrum().

void FluxSource::setPhiRange ( double min_phi,
double max_phi )
 

set parameters solid angle coverage and generation area.

Definition at line 466 of file FluxSource.cxx.

double FluxSource::solidAngle ( ) const [virtual]
 

return effective solid angle.

Reimplemented from EventSource.

Definition at line 282 of file FluxSource.cxx.

Spectrum * FluxSource::spectrum ( ) const [inline]
 

Definition at line 90 of file FluxSource.h.

Referenced by FluxSource(), and computeLaunch().

void FluxSource::spectrum ( Spectrum * s,
double emax = -1 )
 

set spectrum, with optional parameter to set the maximum energy?

Definition at line 227 of file FluxSource.cxx.

double FluxSource::theta ( ) const [inline]
 

Definition at line 77 of file FluxSource.h.

Referenced by title().

std::string FluxSource::title ( ) const
 

return a title describing the spectrum and angles.

Definition at line 892 of file FluxSource.cxx.

Referenced by displayTitle(), and fullTitle().

void FluxSource::unSetLaunch ( )
 

void FluxSource::useSpectrumDirection ( )
 

set the mode for calculating direction to use the spectrum object. it then must implement a solidAngle(double)const to return the effective solid angle.

Definition at line 481 of file FluxSource.cxx.

Referenced by FluxSource().


Member Data Documentation

double FluxSource::Fratio [private]
 

Definition at line 154 of file FluxSource.h.

double FluxSource::_maxCos [private]
 

Definition at line 141 of file FluxSource.h.

double FluxSource::_maxPhi [private]
 

Definition at line 141 of file FluxSource.h.

double FluxSource::_minCos [private]
 

Definition at line 141 of file FluxSource.h.

double FluxSource::_minPhi [private]
 

Definition at line 141 of file FluxSource.h.

double FluxSource::_phi [private]
 

Definition at line 147 of file FluxSource.h.

double FluxSource::_theta [private]
 

Definition at line 147 of file FluxSource.h.

bool FluxSource::fanBeam [private]
 

Definition at line 158 of file FluxSource.h.

Box * FluxSource::illumBox [private]
 

Definition at line 159 of file FluxSource.h.

double FluxSource::m_energy [private]
 

Definition at line 164 of file FluxSource.h.

double FluxSource::m_galb [private]
 

Definition at line 151 of file FluxSource.h.

double FluxSource::m_gall [private]
 

Definition at line 151 of file FluxSource.h.

enum FluxSource::LaunchType FluxSource::m_launch
 

choices for generating incoming particle trajectory.

Vector FluxSource::m_launchDir [private]
 

Definition at line 162 of file FluxSource.h.

Point FluxSource::m_launchPoint [private]
 

Definition at line 163 of file FluxSource.h.

double FluxSource::m_maxEnergy [private]
 

Definition at line 139 of file FluxSource.h.

enum FluxSource::PointType FluxSource::m_pointtype
 

double FluxSource::m_rmax [private]
 

Definition at line 144 of file FluxSource.h.

double FluxSource::m_rmin [private]
 

Definition at line 144 of file FluxSource.h.

Spectrum * FluxSource::m_spectrum [private]
 

Definition at line 137 of file FluxSource.h.

double FluxSource::patchBottom [private]
 

Definition at line 153 of file FluxSource.h.

double FluxSource::patchHeight [private]
 

Definition at line 153 of file FluxSource.h.

double FluxSource::patchOffset [private]
 

Definition at line 155 of file FluxSource.h.

double FluxSource::patchRange [private]
 

Definition at line 155 of file FluxSource.h.

double FluxSource::patchTop [private]
 

Definition at line 153 of file FluxSource.h.

double FluxSource::patchWidX [private]
 

Definition at line 154 of file FluxSource.h.

double FluxSource::patchWidY [private]
 

Definition at line 154 of file FluxSource.h.

double FluxSource::patchXmax [private]
 

Definition at line 153 of file FluxSource.h.

double FluxSource::patchXmin [private]
 

Definition at line 153 of file FluxSource.h.

double FluxSource::patchYmax [private]
 

Definition at line 154 of file FluxSource.h.

double FluxSource::patchYmin [private]
 

Definition at line 154 of file FluxSource.h.

double FluxSource::s_backoff [private]
 

Definition at line 22 of file FluxSource.cxx.

double FluxSource::s_radius = 1.0 [static, private]
 

Definition at line 23 of file FluxSource.cxx.

bool FluxSource::sidePatch [private]
 

Definition at line 158 of file FluxSource.h.


The documentation for this class was generated from the following files:
Generated at Wed Nov 21 12:20:36 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000