criptic v1
Cosmic Ray Interstellar Propagation Tool using Itô Calculus
Loading...
Searching...
No Matches
PropPowerlaw.H
Go to the documentation of this file.
1
12#ifndef _PROPPOWERLAW_H_
13#define _PROPPOWERLAW_H_
14
15#include "Propagation.H"
16#include "../IO/ParmParser.H"
17
18namespace criptic {
19 namespace propagation {
20
46 class PropPowerlaw : public Propagation {
47
48 public:
49
54 PropPowerlaw(const ParmParser& pp);
55
59 virtual ~PropPowerlaw() { };
60
71#ifdef TRACK_PITCH_ANGLE
72 return noFieldQty;
73#else
75 else return noFieldQty;
76#endif
77 }
78
93 virtual PropagationData
94 operator()(const RealVec& x,
95 const Real t,
96 const gas::GasData& gd,
97 const CRPacket& packet,
98 const FieldQty& qty,
99 const FieldQtyGrad& qtyGrad) const;
100
101 private:
102
112#ifndef TRACK_PITCH_ANGLE
116 bool vAStream;
118#else
119 Real kMu0;
120 Real kMuIdx;
122#endif
123 };
124 }
125}
126
127#endif
128// _PROPPOWERLAW_H_
Interface used to describe a model for CR propagation parameters.
A class that holds data to describe a CR packet.
Definition CRPacket.H:28
Class to hold and compute gradients of field quantities.
Definition FieldQty.H:293
Class to hold and compute field quantities.
Definition FieldQty.H:53
Class to parse the criptic input deck.
Definition ParmParser.H:37
Trivial class to hold gas data.
Definition GasData.H:29
A simple powerlaw CR propagation model.
Definition PropPowerlaw.H:46
Real kPerpIdx
Definition PropPowerlaw.H:107
bool vAStream
Definition PropPowerlaw.H:116
Real kParIdx
Definition PropPowerlaw.H:104
Real kPar0
Definition PropPowerlaw.H:103
Real kPPIdx
Definition PropPowerlaw.H:110
virtual FieldQtyNeedType fieldQtyNeed() const
What field quantities need to be computed?
Definition PropPowerlaw.H:70
virtual ~PropPowerlaw()
Empty virtual destructor.
Definition PropPowerlaw.H:59
Real kPerp0
Definition PropPowerlaw.H:106
Real vStr0
Definition PropPowerlaw.H:113
Real vStrIdx
Definition PropPowerlaw.H:114
Real kPP0
Definition PropPowerlaw.H:109
bool varStreamDir
Definition PropPowerlaw.H:115
virtual PropagationData operator()(const RealVec &x, const Real t, const gas::GasData &gd, const CRPacket &packet, const FieldQty &qty, const FieldQtyGrad &qtyGrad) const
Return the propagation data.
Definition PropPowerlaw.cpp:55
Interface to describe the CR propagation model.
Definition Propagation.H:79
The primary namespace for criptic objects.
Definition AdvancePacket.H:25
FieldQtyNeedType
Enum of types of field quantities to be computed.
Definition Propagation.H:29
@ needFieldQtyGrad
Definition Propagation.H:32
@ noFieldQty
Definition Propagation.H:30
double Real
Definition Types.H:38
Structure contain the requires propagation parameters.
Definition Propagation.H:46