Implementation of a single particle. More...
#include <particle.h>
Public Member Functions | |
Particle (const TmodelInformation &, const Tproperties &) | |
Constructor. | |
virtual | ~Particle () |
Destructor. | |
long | simulate (Random &) |
Simulate trajectory from the earth to the heliospheric boundary. | |
double | getR () const |
Getter for r. | |
double | getT () const |
Getter for kinetic energy T. | |
double | getHeliosphereBoundary () const |
Getter for the boundary of the heliosphere in AU. | |
double | getISFlux (int) const |
Getter for local interstellar flux. | |
double | getISFlux (bool) const |
Getter for local interstellar flux. | |
double | getISFlux (bool, int) const |
Getter for local interstellar flux. |
Protected Member Functions | |
virtual double | getDeltaR (Random &) const =0 |
double | getDeltaTheta (Random &) const |
Getter for delta theta. | |
double | getDeltaPhi () const |
Getter for delta phi. | |
void | calculate () |
Method to calculate all quantities which are needed several times in one step. | |
double | getV () const |
Getter for solar wind in AU*s^-1. | |
double | getP2 () const |
Getter for rigidity^2 in GV^2. | |
double | getRigidity () const |
Getter for rigidity in GV. | |
double | getBeta () const |
Getter for beta (particle speed) | |
double | getPolarity () const |
Getter for solar polarity. | |
double | getAngle () const |
Getter for tilt angle. | |
double | getTanPsi () const |
Getter for tan(psi) | |
double | convertDeg (double) const |
Conversion method from deg to rad. | |
double | getLarmorRadius () const |
Getter for Larmor radius. | |
double | getB0OverB () const |
Getter for B0/B (needed in many models for the diffusion tensor) | |
double | getB () const |
Getter for absolute value of B field. | |
double | getTheta () const |
Getter for angle theta. | |
double | getPhi () const |
Getter for angle phi. | |
double | getTime () const |
Getter for time. | |
double | getMass () const |
Getter for mass. | |
double | getCharge () const |
Getter for charge. | |
int | getHeaviside () const |
Getter for Heaviside function. | |
double | getKappaPerpendicular () const |
Getter for perpendicular part of the diffusion tensor. | |
double | getKappaThetaTheta () const |
Getter for angular part of the diffusion tensor. |
Protected Attributes | |
double | r |
radial coordinate | |
double | theta |
angular (theta) coordinate | |
double | phi |
angular (phi) coordinate | |
double | time |
time coordinate | |
Tproperties | spec |
Particle properties. | |
TstepData | data |
Data which are calculated in method void calculate() | |
double | dt |
dt from control file | |
double | heliosphereBoundary |
Boundary of the heliosphere (model dependent) | |
double | perPart |
Coefficient between the parallel and perpendicular diffusion tensor. | |
double | kappa0 |
Normalization of the diffusion tensor. | |
double | BfieldScaling |
Normalization of the solar magnetic field. | |
int | polarity |
Solar magnetic field polarity. | |
double | angle |
HCS tilt angle. |
Implementation of a single particle.
Particle::Particle | ( | const TmodelInformation & | modelInfo, |
const Tproperties & | sp | ||
) |
Constructor.
modelInfo | Model information from import.cc |
sp | CR properties (mass and charge) |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Getter for delta theta.
rNum | random number class |
Implements IParticle.
|
protectedvirtual |
|
virtual |
Getter for the boundary of the heliosphere in AU.
Implements IParticle.
|
virtual |
Getter for local interstellar flux.
Z | Charge of the CR species |
Implements IParticle.
Reimplemented in PotgieterMoraal, Standard2D, BurgerPotgieter, JokipiiKopriva, and Yamada.
|
virtual |
Getter for local interstellar flux.
check | Parameter if warning should be displayed |
Implements IParticle.
|
virtual |
Getter for local interstellar flux.
check | Parameter if warning should be displayed |
Z | Charge of the CR species |
Implements IParticle.
|
protectedvirtual |
Getter for perpendicular part of the diffusion tensor.
Implements IParticle.
|
protectedvirtual |
Getter for angular part of the diffusion tensor.
Implements IParticle.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
virtual |
|
protectedvirtual |
|
virtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
virtual |
Simulate trajectory from the earth to the heliospheric boundary.
rNum | random number class |
Implements IParticle.