#include <potentials.h>
A class that stores parameters of potentials, calculates potentials and their gradients.
Potentials are responsible for long-range interactions and stand in the left part of Boltzmann equation. Short-range interactions are taken into account in the right part of it - in the collision term.
Definition at line 31 of file potentials.h.
Public Member Functions | |
Potentials (Configuration conf, const DensityParameters ¶meters) | |
Potentials constructor. More... | |
~Potentials () | |
Standard destructor. More... | |
double | skyrme_pot (const double baryon_density) const |
Evaluates skyrme potential given a baryon density. More... | |
double | symmetry_pot (const double baryon_isospin_density) const |
Evaluates symmetry potential given baryon isospin density. More... | |
double | potential (const ThreeVector &r, const ParticleList &plist, const ParticleType &acts_on) const |
Evaluates potential at point r. More... | |
std::pair< double, int > | force_scale (const ParticleType &data) const |
Evaluates the scaling factor of the forces acting on the particles. More... | |
std::pair< ThreeVector, ThreeVector > | skyrme_force (const double density, const ThreeVector grad_rho, const ThreeVector dj_dt, const ThreeVector rot_j) const |
Evaluates the electrical and magnetic components of the skyrme force. More... | |
std::pair< ThreeVector, ThreeVector > | symmetry_force (const ThreeVector grad_rho, const ThreeVector dj_dt, const ThreeVector rot_j) const |
Evaluates the electrical and magnetic components of the symmetry force. More... | |
virtual std::tuple< ThreeVector, ThreeVector, ThreeVector, ThreeVector > | all_forces (const ThreeVector &r, const ParticleList &plist) const |
Evaluates the electrical and magnetic components of the forces at point r. More... | |
virtual bool | use_skyrme () const |
virtual bool | use_symmetry () const |
Private Attributes | |
const DensityParameters | param_ |
Struct that contains the gaussian smearing width \(\sigma\), the distance cutoff \(r_{\rm cut}\) and the testparticle number needed for the density calculation. More... | |
bool | use_skyrme_ |
Skyrme potential on/off. More... | |
bool | use_symmetry_ |
Symmetry potential on/off. More... | |
double | skyrme_a_ |
Parameter of skyrme potentials: the coefficient in front of \(\frac{\rho}{\rho_0}\) in GeV. More... | |
double | skyrme_b_ |
Parameters of skyrme potentials: the coefficient in front of \((\frac{\rho}{\rho_0})^\tau\) in GeV. More... | |
double | skyrme_tau_ |
Parameters of skyrme potentials: the power index. More... | |
double | symmetry_s_ |
coefficent in front of the symmetry term. More... | |
smash::Potentials::Potentials | ( | Configuration | conf, |
const DensityParameters & | parameters | ||
) |
Potentials constructor.
[in] | conf | Configuration which contains the switches determining whether to turn on the Skyrme or the symmetry potentials, and the coefficents controlling how strong the potentials are. |
[in] | parameters | Struct that contains the gaussian smearing factor \(\sigma\), the distance cutoff \(r_{\rm cut}\) and the testparticle number needed for the density calculation. |
smash::Potentials::~Potentials | ( | ) |
double smash::Potentials::skyrme_pot | ( | const double | baryon_density | ) | const |
Evaluates skyrme potential given a baryon density.
[in] | baryon_density | Baryon density \(\rho\) evaluated in the local rest frame in fm \(^{-3}\). |
\[U_B=10^{-3}\times\frac{\rho}{|\rho|} (A\frac{\rho}{\rho_0}+B(\frac{\rho}{\rho_0})^\tau)\]
in GeVDefinition at line 96 of file potentials.cc.
double smash::Potentials::symmetry_pot | ( | const double | baryon_isospin_density | ) | const |
Evaluates symmetry potential given baryon isospin density.
[in] | baryon_isospin_density | The difference between the proton and the neutron density in the local rest frame in fm \(^{-3}\). |
\[U_I=2\times 10^{-3}S_{\rm sym} \frac{\rho_n-\rho_p}{\rho_0}\]
in GeVDefinition at line 107 of file potentials.cc.
double smash::Potentials::potential | ( | const ThreeVector & | r, |
const ParticleList & | plist, | ||
const ParticleType & | acts_on | ||
) | const |
Evaluates potential at point r.
Potential is always taken in the local Eckart rest frame, but point r is in the computational frame.
[in] | r | Arbitrary space point where potential is calculated |
[in] | plist | List of all particles to be used in \(j^{\mu}\) calculation. If the distance between particle and calculation point r, \( |r-r_i| > r_{cut} \) then particle input to density will be ignored. |
[in] | acts_on | Type of particle on which potential is going to act. It gives the charges (or more precisely, the scaling factors) of the particle moving in the potential field. |
\[U_{\rm tot} =Q_BU_B+2I_3U_I\]
in GeV, where \(Q_B\) is the baryon charge scaled by the ratio of the light (u, d) quark to the total quark number and \(I_3\) is the third compnent of the isospin.Definition at line 111 of file potentials.cc.
std::pair< double, int > smash::Potentials::force_scale | ( | const ParticleType & | data | ) | const |
Evaluates the scaling factor of the forces acting on the particles.
The forces are equal to the product of the scaling factor and the gradient of the potential. We need these scaling factors to describe the motions of the hyperons as well as the anti-particles in the potentials. For Lambda and Sigma, since they carry 2 light (u or d) quarks, they are affected by 2/3 of the Skyrme force. Xi carries 1 light quark, it is affected by 1/3 of the Skyrme force. Omega carries no light quark, so it's not affected by the Skyrme force. Anti-baryons are affected by the force as large as the force acting on baryons but with an opposite direction.
[in] | data | Type of particle on which potential is going to act. |
Definition at line 137 of file potentials.cc.
std::pair< ThreeVector, ThreeVector > smash::Potentials::skyrme_force | ( | const double | density, |
const ThreeVector | grad_rho, | ||
const ThreeVector | dj_dt, | ||
const ThreeVector | rot_j | ||
) | const |
Evaluates the electrical and magnetic components of the skyrme force.
[in] | density | Eckart density [fm \(^{-3}\)]. |
[in] | grad_rho | Gradient of density [fm \(^{-4}\)]. This density is evaluated in the computational frame. |
[in] | dj_dt | Time derivative of the current density [fm \(^{-4}\) |
[in] | rot_j | Curl of the current density [fm \(^{-4}\) |
\[E_B = -V_B^\prime(\rho^\ast)(\nabla\rho_B + \partial_t \vec j_B)\]
is the electro component of Skyrme force and\[B_B = V_B^\prime(\rho^\ast) \nabla\times\vec j_B\]
is the magnetic component of the Skyrme force with \(\rho^\ast\) being the Eckart density.Definition at line 153 of file potentials.cc.
std::pair< ThreeVector, ThreeVector > smash::Potentials::symmetry_force | ( | const ThreeVector | grad_rho, |
const ThreeVector | dj_dt, | ||
const ThreeVector | rot_j | ||
) | const |
Evaluates the electrical and magnetic components of the symmetry force.
[in] | grad_rho | Gradient of density [fm \(^{-4}\)]. This density is evaluated in the computational frame. |
[in] | dj_dt | Time derivative of the current density [fm \(^{-4}\) |
[in] | rot_j | Curl of the current density [fm \(^{-4}\) |
\[E_{I3} = -V_{I3}^\prime(\rho^\ast)(\nabla\rho_{I3} + \partial_t \vec j_{I3})\]
is the electrical component of symmetry force and\[B_{I3} = V_I^\prime(\rho^\ast) \nabla\times\vec j_{I3}\]
is the magnetic component of the symmetry force with \(\rho^\ast\) being the Eckart density.Definition at line 169 of file potentials.cc.
|
virtual |
Evaluates the electrical and magnetic components of the forces at point r.
Point r is in the computational frame.
[in] | r | Arbitrary space point where potential gradient is calculated |
[in] | plist | List of all particles to be used in \(j^{\mu}\) calculation. If the distance between particle and calculation point r, \( |r-r_i| > r_{cut} \) then particle input to density will be ignored. |
Definition at line 183 of file potentials.cc.
|
inlinevirtual |
Definition at line 164 of file potentials.h.
|
inlinevirtual |
Definition at line 166 of file potentials.h.
|
private |
Struct that contains the gaussian smearing width \(\sigma\), the distance cutoff \(r_{\rm cut}\) and the testparticle number needed for the density calculation.
Definition at line 174 of file potentials.h.
|
private |
Skyrme potential on/off.
Definition at line 177 of file potentials.h.
|
private |
Symmetry potential on/off.
Definition at line 180 of file potentials.h.
|
private |
Parameter of skyrme potentials: the coefficient in front of \(\frac{\rho}{\rho_0}\) in GeV.
Definition at line 186 of file potentials.h.
|
private |
Parameters of skyrme potentials: the coefficient in front of \((\frac{\rho}{\rho_0})^\tau\) in GeV.
Definition at line 192 of file potentials.h.
|
private |
Parameters of skyrme potentials: the power index.
Definition at line 198 of file potentials.h.
|
private |
coefficent in front of the symmetry term.
Definition at line 201 of file potentials.h.