Version: SMASH-1.7
smash::Potentials Class Reference

#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.

Collaboration diagram for smash::Potentials:
[legend]

Public Member Functions

 Potentials (Configuration conf, const DensityParameters &parameters)
 Potentials constructor. More...
 
virtual ~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 double baryon_density) const
 Evaluates symmetry potential given baryon isospin density. More...
 
double symmetry_S (const double baryon_density) const
 Calculate the factor \(S(\rho)\) in the symmetry potential. 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, ThreeVectorskyrme_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, ThreeVectorsymmetry_force (const double rhoI3, const ThreeVector grad_rhoI3, const ThreeVector djI3_dt, const ThreeVector rot_jI3, const double rhoB, const ThreeVector grad_rhoB, const ThreeVector djB_dt, const ThreeVector rot_jB) const
 Evaluates the electrical and magnetic components of the symmetry force. More...
 
virtual std::tuple< ThreeVector, ThreeVector, ThreeVector, ThreeVectorall_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 Member Functions

double dVsym_drhoI3 (const double rhoB, const double rhoI3) const
 Calculate the derivative of the symmetry potential with respect to the isospin density in GeV * fm^3

\[ \frac{\partial V_\mathrm{sym}}{\partial \rho_{I_3}} = 2\frac{S_\mathrm{Pot}}{\rho_0} + \frac{2\rho_{I_3}\left[12.3\left(\frac{\rho_B}{\rho_0}\right)^{2/3} + 20 \left(\frac{\rho_B}{\rho_0}\right)^\gamma\right]}{\rho_B^2} \]

. More...

 
double dVsym_drhoB (const double rhoB, const double rhoI3) const
 Calculate the derivative of the symmetry potential with respect to the net baryon density in GeV * fm^3

\[ \frac{\partial V_\mathrm{sym}}{\partial \rho_B} = \left(\frac{\rho_{I_3}}{\rho_B}\right)^2 \left[\frac{8.2}{\rho_0}\left(\frac{\rho_B}{\rho_0}\right)^{-1/3} + \frac{20\gamma}{\rho_B}\left(\frac{\rho_B}{\rho_0}\right)^\gamma\right] -2\frac{\rho_{I_3}^2}{\rho_B^3} \left[12.3\left(\frac{\rho_B}{\rho_0}\right)^{2/3} + 20\left(\frac{\rho_B}{\rho_0}\right)^\gamma\right]\]

. More...

 

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_Pot_
 Parameter S_Pot in the symmetry potential in MeV. More...
 
bool symmetry_is_rhoB_dependent_ = false
 Wheter the baryon density dependence of the symmetry potential is included. More...
 
double symmetry_gamma_
 Power \( \gamma \) in formula for \( S(\rho) \):

\[ S(\rho)=12.3\,\mathrm{MeV}\times \left(\frac{\rho}{\rho_0}\right)^{2/3}+20\,\mathrm{MeV}\times \left(\frac{\rho}{\rho_0}\right)^\gamma \]

. More...

 

Constructor & Destructor Documentation

smash::Potentials::Potentials ( Configuration  conf,
const DensityParameters parameters 
)

Potentials constructor.

Parameters
[in]confConfiguration 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]parametersStruct 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 ( )
virtual

Standard destructor.

Definition at line 105 of file potentials.cc.

105 {}

Member Function Documentation

double smash::Potentials::skyrme_pot ( const double  baryon_density) const

Evaluates skyrme potential given a baryon density.

Parameters
[in]baryon_densityBaryon density \(\rho\) evaluated in the local rest frame in fm \(^{-3}\).
Returns
Skyrme potential

\[U_B=10^{-3}\times\frac{\rho}{|\rho|} (A\frac{\rho}{\rho_0}+B(\frac{\rho}{\rho_0})^\tau)\]

in GeV

Definition at line 107 of file potentials.cc.

107  {
108  const double tmp = baryon_density / nuclear_density;
109  /* U = U(|rho|) * sgn , because the sign of the potential changes
110  * under a charge reversal transformation. */
111  const int sgn = tmp > 0 ? 1 : -1;
112  // Return in GeV
113  return 1.0e-3 * sgn *
114  (skyrme_a_ * std::abs(tmp) +
115  skyrme_b_ * std::pow(std::abs(tmp), skyrme_tau_));
116 }
double skyrme_a_
Parameter of skyrme potentials: the coefficient in front of in GeV.
Definition: potentials.h:211
double skyrme_b_
Parameters of skyrme potentials: the coefficient in front of in GeV.
Definition: potentials.h:217
double skyrme_tau_
Parameters of skyrme potentials: the power index.
Definition: potentials.h:223
constexpr double nuclear_density
Ground state density of symmetric nuclear matter [fm^-3].
Definition: constants.h:45
int sgn(T val)
Signum function.
Definition: random.h:190

Here is the call graph for this function:

Here is the caller graph for this function:

double smash::Potentials::symmetry_pot ( const double  baryon_isospin_density,
const double  baryon_density 
) const

Evaluates symmetry potential given baryon isospin density.

Note
The second term is neglected if \(\gamma\) is not specified in the config.
Parameters
[in]baryon_isospin_densityThe difference between the proton and the neutron density in the local rest frame in fm \(^{-3}\).
[in]baryon_density
Returns
Symmetry potential

\[U_I=2\times 10^{-3}S_{\rm sym} \frac{\rho_{I_3}}{\rho_0} + \left[12.3\left(\frac{\rho_B}{\rho_0}\right)^{2/3} + 20\left(\frac{\rho_B}{\rho_0}\right)^\gamma\right] \left(\frac{\rho_{I_3}}{\rho_B}\right)^2\]

in GeV

Definition at line 125 of file potentials.cc.

126  {
127  double pot =
128  1.0e-3 * 2. * symmetry_S_Pot_ * baryon_isospin_density / nuclear_density;
130  pot += 1.0e-3 * symmetry_S(baryon_density) * baryon_isospin_density *
131  baryon_isospin_density / (baryon_density * baryon_density);
132  }
133  return pot;
134 }
bool symmetry_is_rhoB_dependent_
Wheter the baryon density dependence of the symmetry potential is included.
Definition: potentials.h:232
double symmetry_S_Pot_
Parameter S_Pot in the symmetry potential in MeV.
Definition: potentials.h:226
double symmetry_S(const double baryon_density) const
Calculate the factor in the symmetry potential.
Definition: potentials.cc:117
constexpr double nuclear_density
Ground state density of symmetric nuclear matter [fm^-3].
Definition: constants.h:45

Here is the call graph for this function:

Here is the caller graph for this function:

double smash::Potentials::symmetry_S ( const double  baryon_density) const

Calculate the factor \(S(\rho)\) in the symmetry potential.

Parameters
[in]baryon_densitybaryon density
Returns
factor S in symmetry potenial

Definition at line 117 of file potentials.cc.

117  {
119  return 12.3 * std::pow(baryon_density / nuclear_density, 2. / 3.) +
120  20.0 * std::pow(baryon_density / nuclear_density, symmetry_gamma_);
121  } else {
122  return 0.;
123  }
124 }
bool symmetry_is_rhoB_dependent_
Wheter the baryon density dependence of the symmetry potential is included.
Definition: potentials.h:232
double symmetry_gamma_
Power in formula for : .
Definition: potentials.h:239
constexpr double nuclear_density
Ground state density of symmetric nuclear matter [fm^-3].
Definition: constants.h:45

Here is the caller graph for this function:

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.

Parameters
[in]rArbitrary space point where potential is calculated
[in]plistList 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_onType 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.
Returns
Total potential energy acting on the particle:

\[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 136 of file potentials.cc.

137  {
138  double total_potential = 0.0;
139  const bool compute_gradient = false;
140  const bool smearing = true;
141  const auto scale = force_scale(acts_on);
142 
143  if (!acts_on.is_baryon()) {
144  return total_potential;
145  }
146  const double rho_B = std::get<0>(current_eckart(
147  r, plist, param_, DensityType::Baryon, compute_gradient, smearing));
148  if (use_skyrme_) {
149  total_potential += scale.first * skyrme_pot(rho_B);
150  }
151  if (use_symmetry_) {
152  const double rho_iso = std::get<0>(
154  compute_gradient, smearing));
155  const double sym_pot =
156  symmetry_pot(rho_iso, rho_B) * acts_on.isospin3_rel();
157  total_potential += scale.second * sym_pot;
158  }
159  return total_potential;
160 }
double symmetry_pot(const double baryon_isospin_density, const double baryon_density) const
Evaluates symmetry potential given baryon isospin density.
Definition: potentials.cc:125
double skyrme_pot(const double baryon_density) const
Evaluates skyrme potential given a baryon density.
Definition: potentials.cc:107
bool use_symmetry_
Symmetry potential on/off.
Definition: potentials.h:205
const DensityParameters param_
Struct that contains the gaussian smearing width , the distance cutoff and the testparticle number n...
Definition: potentials.h:199
bool use_skyrme_
Skyrme potential on/off.
Definition: potentials.h:202
std::tuple< double, FourVector, ThreeVector, ThreeVector, ThreeVector > current_eckart(const ThreeVector &r, const ParticleList &plist, const DensityParameters &par, DensityType dens_type, bool compute_gradient, bool smearing)
Calculates Eckart rest frame density and 4-current of a given density type and optionally the gradien...
Definition: density.cc:149
std::pair< double, int > force_scale(const ParticleType &data) const
Evaluates the scaling factor of the forces acting on the particles.
Definition: potentials.cc:162

Here is the call graph for this function:

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.

Parameters
[in]dataType of particle on which potential is going to act.
Returns
( \(Q_B(1-\frac{Q_S}{3}), 2I_3\)) where \(Q_B\) is the baryon charge, \(Q_S\) is the strangeness, and \(I_3\) is the third component of the isospin.

Definition at line 162 of file potentials.cc.

162  {
163  double skyrme_scale = data.is_baryon() ? 1.0 : 0.0;
164  if (data.pdgcode().is_hyperon()) {
165  if (data.pdgcode().is_Xi()) {
166  skyrme_scale = 1. / 3.;
167  } else if (data.pdgcode().is_Omega()) {
168  skyrme_scale = 0.;
169  } else {
170  skyrme_scale = 2. / 3.;
171  }
172  }
173  skyrme_scale = skyrme_scale * data.pdgcode().baryon_number();
174  const int symmetry_scale = data.pdgcode().baryon_number();
175  return std::make_pair(skyrme_scale, symmetry_scale);
176 }

Here is the call graph for this function:

Here is the caller graph for this function:

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.

Parameters
[in]densityEckart density [fm \(^{-3}\)].
[in]grad_rhoGradient of density [fm \(^{-4}\)]. This density is evaluated in the computational frame.
[in]dj_dtTime derivative of the current density [fm \(^{-4}\)
[in]rot_jCurl of the current density [fm \(^{-4}\)
Returns
( \(E_B, B_B\)), where

\[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 178 of file potentials.cc.

180  {
181  ThreeVector E_component(0.0, 0.0, 0.0), B_component(0.0, 0.0, 0.0);
182  if (use_skyrme_) {
183  const double dV_drho =
185  std::pow(density / nuclear_density, skyrme_tau_ - 1)) *
187  E_component -= dV_drho * (grad_rho + dj_dt);
188  B_component += dV_drho * rot_j;
189  }
190  return std::make_pair(E_component, B_component);
191 }
double skyrme_a_
Parameter of skyrme potentials: the coefficient in front of in GeV.
Definition: potentials.h:211
constexpr double mev_to_gev
MeV to GeV conversion factor.
Definition: constants.h:34
bool use_skyrme_
Skyrme potential on/off.
Definition: potentials.h:202
double skyrme_b_
Parameters of skyrme potentials: the coefficient in front of in GeV.
Definition: potentials.h:217
double skyrme_tau_
Parameters of skyrme potentials: the power index.
Definition: potentials.h:223
constexpr double nuclear_density
Ground state density of symmetric nuclear matter [fm^-3].
Definition: constants.h:45

Here is the caller graph for this function:

std::pair< ThreeVector, ThreeVector > smash::Potentials::symmetry_force ( const double  rhoI3,
const ThreeVector  grad_rhoI3,
const ThreeVector  djI3_dt,
const ThreeVector  rot_jI3,
const double  rhoB,
const ThreeVector  grad_rhoB,
const ThreeVector  djB_dt,
const ThreeVector  rot_jB 
) const

Evaluates the electrical and magnetic components of the symmetry force.

Parameters
[in]rhoI3Relative isospin 3 density.
[in]grad_rhoI3Gradient of density [fm \(^{-4}\)]. This density is evaluated in the computational frame.
[in]djI3_dtTime derivative of the current density [fm \(^{-4}\)]
[in]rot_jI3Curl of the current density [fm \(^{-4}\)]
[in]rhoBNet-baryon density
[in]grad_rhoBGradient of the net-baryon density
[in]djB_dtTime derivative of the net-baryon current density
[in]rot_jBCurl of the net-baryon current density
Returns
( \(E_I3, B_I3\)) [GeV/fm], where

\[\vec{E} = - \frac{\partial V^\ast}{\partial\rho_{I_3}^\ast} (\nabla\rho_{I_3} + \partial_t \vec j_{I_3}) - \frac{\partial V^\ast}{\partial\rho_B^\ast}(\nabla\rho_B + \partial_t \vec j_B)\]

is the electrical component of symmetry force and

\[\vec{B} = \frac{\partial V^\ast}{\rho_{I_3}^\ast} \nabla\times\vec j_{I_3} + \frac{\partial V^\ast}{\rho_B^\ast} \nabla\times\vec j_B \]

is the magnetic component of the symmetry force with \(\rho^\ast\) being the Eckart density.

Definition at line 193 of file potentials.cc.

196  {
197  ThreeVector E_component(0.0, 0.0, 0.0), B_component(0.0, 0.0, 0.0);
198  if (use_symmetry_) {
199  E_component -= dVsym_drhoI3(rhoB, rhoI3) * (grad_rhoI3 + djI3_dt) +
200  dVsym_drhoB(rhoB, rhoI3) * (grad_rhoB + djB_dt);
201  B_component +=
202  dVsym_drhoI3(rhoB, rhoI3) * rot_jI3 + dVsym_drhoB(rhoB, rhoI3) * rot_jB;
203  }
204  return std::make_pair(E_component, B_component);
205 }
bool use_symmetry_
Symmetry potential on/off.
Definition: potentials.h:205
double dVsym_drhoI3(const double rhoB, const double rhoI3) const
Calculate the derivative of the symmetry potential with respect to the isospin density in GeV * fm^3 ...
Definition: potentials.cc:207
double dVsym_drhoB(const double rhoB, const double rhoI3) const
Calculate the derivative of the symmetry potential with respect to the net baryon density in GeV * fm...
Definition: potentials.cc:217

Here is the call graph for this function:

Here is the caller graph for this function:

std::tuple< ThreeVector, ThreeVector, ThreeVector, ThreeVector > smash::Potentials::all_forces ( const ThreeVector r,
const ParticleList &  plist 
) const
virtual

Evaluates the electrical and magnetic components of the forces at point r.

Point r is in the computational frame.

Parameters
[in]rArbitrary space point where potential gradient is calculated
[in]plistList 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.
Returns
( \(E_B, B_B, E_{I3}, B_{I3}\)) [GeV/fm], where \(E_B\): the electric component of the Skyrme force \(B_B\): the magnetic component of the Skyrme force \(E_{I3}\): the electric component of the symmetry force \(B_{I3}\): the magnetic component of the symmetry force

Definition at line 231 of file potentials.cc.

231  {
232  const bool compute_gradient = true;
233  const bool smearing = true;
234  auto F_skyrme =
235  std::make_pair(ThreeVector(0., 0., 0.), ThreeVector(0., 0., 0.));
236  auto F_symmetry =
237  std::make_pair(ThreeVector(0., 0., 0.), ThreeVector(0., 0., 0.));
238 
239  const auto baryon_density_and_gradient = current_eckart(
240  r, plist, param_, DensityType::Baryon, compute_gradient, smearing);
241  const double rhoB = std::get<0>(baryon_density_and_gradient);
242  const ThreeVector grad_rhoB = std::get<2>(baryon_density_and_gradient);
243  const ThreeVector djB_dt = std::get<3>(baryon_density_and_gradient);
244  const ThreeVector rot_jB = std::get<4>(baryon_density_and_gradient);
245  if (use_skyrme_) {
246  F_skyrme = skyrme_force(rhoB, grad_rhoB, djB_dt, rot_jB);
247  }
248 
249  if (use_symmetry_) {
250  const auto density_and_gradient =
252  compute_gradient, smearing);
253  const double rhoI3 = std::get<0>(density_and_gradient);
254  const ThreeVector grad_rhoI3 = std::get<2>(density_and_gradient);
255  const ThreeVector djI3_dt = std::get<3>(density_and_gradient);
256  const ThreeVector rot_jI3 = std::get<4>(density_and_gradient);
257  F_symmetry = symmetry_force(rhoI3, grad_rhoI3, djI3_dt, rot_jI3, rhoB,
258  grad_rhoB, djB_dt, rot_jB);
259  }
260 
261  return std::make_tuple(F_skyrme.first, F_skyrme.second, F_symmetry.first,
262  F_symmetry.second);
263 }
bool use_symmetry_
Symmetry potential on/off.
Definition: potentials.h:205
std::pair< ThreeVector, ThreeVector > symmetry_force(const double rhoI3, const ThreeVector grad_rhoI3, const ThreeVector djI3_dt, const ThreeVector rot_jI3, const double rhoB, const ThreeVector grad_rhoB, const ThreeVector djB_dt, const ThreeVector rot_jB) const
Evaluates the electrical and magnetic components of the symmetry force.
Definition: potentials.cc:193
const DensityParameters param_
Struct that contains the gaussian smearing width , the distance cutoff and the testparticle number n...
Definition: potentials.h:199
bool use_skyrme_
Skyrme potential on/off.
Definition: potentials.h:202
std::tuple< double, FourVector, ThreeVector, ThreeVector, ThreeVector > current_eckart(const ThreeVector &r, const ParticleList &plist, const DensityParameters &par, DensityType dens_type, bool compute_gradient, bool smearing)
Calculates Eckart rest frame density and 4-current of a given density type and optionally the gradien...
Definition: density.cc:149
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.
Definition: potentials.cc:178

Here is the call graph for this function:

Here is the caller graph for this function:

virtual bool smash::Potentials::use_skyrme ( ) const
inlinevirtual
Returns
Is Skyrme potential on?

Definition at line 189 of file potentials.h.

189 { return use_skyrme_; }
bool use_skyrme_
Skyrme potential on/off.
Definition: potentials.h:202

Here is the caller graph for this function:

virtual bool smash::Potentials::use_symmetry ( ) const
inlinevirtual
Returns
Is symmetry potential on?

Definition at line 191 of file potentials.h.

191 { return use_symmetry_; }
bool use_symmetry_
Symmetry potential on/off.
Definition: potentials.h:205

Here is the caller graph for this function:

double smash::Potentials::dVsym_drhoI3 ( const double  rhoB,
const double  rhoI3 
) const
private

Calculate the derivative of the symmetry potential with respect to the isospin density in GeV * fm^3

\[ \frac{\partial V_\mathrm{sym}}{\partial \rho_{I_3}} = 2\frac{S_\mathrm{Pot}}{\rho_0} + \frac{2\rho_{I_3}\left[12.3\left(\frac{\rho_B}{\rho_0}\right)^{2/3} + 20 \left(\frac{\rho_B}{\rho_0}\right)^\gamma\right]}{\rho_B^2} \]

.

Note
The isospin 3 density here is actually the density of I3 / I.
Parameters
[in]rhoBnet baryon density
[in]rhoI3isospin density
Returns
partial derivative of the symmetry potenital with respect to the isospin density.

Definition at line 207 of file potentials.cc.

207  {
208  double term1 = 2. * symmetry_S_Pot_ / nuclear_density;
210  double term2 = 2. * rhoI3 * symmetry_S(rhoB) / (rhoB * rhoB);
211  return mev_to_gev * (term1 + term2);
212  } else {
213  return mev_to_gev * term1;
214  }
215 }
bool symmetry_is_rhoB_dependent_
Wheter the baryon density dependence of the symmetry potential is included.
Definition: potentials.h:232
double symmetry_S_Pot_
Parameter S_Pot in the symmetry potential in MeV.
Definition: potentials.h:226
double symmetry_S(const double baryon_density) const
Calculate the factor in the symmetry potential.
Definition: potentials.cc:117
constexpr double mev_to_gev
MeV to GeV conversion factor.
Definition: constants.h:34
constexpr double nuclear_density
Ground state density of symmetric nuclear matter [fm^-3].
Definition: constants.h:45

Here is the call graph for this function:

Here is the caller graph for this function:

double smash::Potentials::dVsym_drhoB ( const double  rhoB,
const double  rhoI3 
) const
private

Calculate the derivative of the symmetry potential with respect to the net baryon density in GeV * fm^3

\[ \frac{\partial V_\mathrm{sym}}{\partial \rho_B} = \left(\frac{\rho_{I_3}}{\rho_B}\right)^2 \left[\frac{8.2}{\rho_0}\left(\frac{\rho_B}{\rho_0}\right)^{-1/3} + \frac{20\gamma}{\rho_B}\left(\frac{\rho_B}{\rho_0}\right)^\gamma\right] -2\frac{\rho_{I_3}^2}{\rho_B^3} \left[12.3\left(\frac{\rho_B}{\rho_0}\right)^{2/3} + 20\left(\frac{\rho_B}{\rho_0}\right)^\gamma\right]\]

.

Note
The isospin 3 density here is actually the density of I3 / I
Parameters
[in]rhoBnet baryon density
[in]rhoI3isospin density
Returns
partial derivative of the symmetry potenital with respect to the net baryon density.

Definition at line 217 of file potentials.cc.

217  {
219  double rhoB_over_rho0 = rhoB / nuclear_density;
220  double term1 = 8.2 * std::pow(rhoB_over_rho0, -1. / 3.) / nuclear_density +
221  20. * symmetry_gamma_ *
222  std::pow(rhoB_over_rho0, symmetry_gamma_) / rhoB;
223  double term2 = -2. * symmetry_S(rhoB) / rhoB;
224  return mev_to_gev * (term1 + term2) * rhoI3 * rhoI3 / (rhoB * rhoB);
225  } else {
226  return 0.;
227  }
228 }
bool symmetry_is_rhoB_dependent_
Wheter the baryon density dependence of the symmetry potential is included.
Definition: potentials.h:232
double symmetry_gamma_
Power in formula for : .
Definition: potentials.h:239
double symmetry_S(const double baryon_density) const
Calculate the factor in the symmetry potential.
Definition: potentials.cc:117
constexpr double mev_to_gev
MeV to GeV conversion factor.
Definition: constants.h:34
constexpr double nuclear_density
Ground state density of symmetric nuclear matter [fm^-3].
Definition: constants.h:45

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

const DensityParameters smash::Potentials::param_
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 199 of file potentials.h.

bool smash::Potentials::use_skyrme_
private

Skyrme potential on/off.

Definition at line 202 of file potentials.h.

bool smash::Potentials::use_symmetry_
private

Symmetry potential on/off.

Definition at line 205 of file potentials.h.

double smash::Potentials::skyrme_a_
private

Parameter of skyrme potentials: the coefficient in front of \(\frac{\rho}{\rho_0}\) in GeV.

Definition at line 211 of file potentials.h.

double smash::Potentials::skyrme_b_
private

Parameters of skyrme potentials: the coefficient in front of \((\frac{\rho}{\rho_0})^\tau\) in GeV.

Definition at line 217 of file potentials.h.

double smash::Potentials::skyrme_tau_
private

Parameters of skyrme potentials: the power index.

Definition at line 223 of file potentials.h.

double smash::Potentials::symmetry_S_Pot_
private

Parameter S_Pot in the symmetry potential in MeV.

Definition at line 226 of file potentials.h.

bool smash::Potentials::symmetry_is_rhoB_dependent_ = false
private

Wheter the baryon density dependence of the symmetry potential is included.

Definition at line 232 of file potentials.h.

double smash::Potentials::symmetry_gamma_
private

Power \( \gamma \) in formula for \( S(\rho) \):

\[ S(\rho)=12.3\,\mathrm{MeV}\times \left(\frac{\rho}{\rho_0}\right)^{2/3}+20\,\mathrm{MeV}\times \left(\frac{\rho}{\rho_0}\right)^\gamma \]

.

Definition at line 239 of file potentials.h.


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