MARLEY (Model of Argon Reaction Low Energy Yields)  v1.2.0
A Monte Carlo event generator for tens-of-MeV neutrino interactions
BackshiftedFermiGasModel.hh
1 //
5 // This file is part of MARLEY (Model of Argon Reaction Low Energy Yields)
6 //
7 // MARLEY is free software: you can redistribute it and/or modify it under the
8 // terms of version 3 of the GNU General Public License as published by the
9 // Free Software Foundation.
10 //
11 // For the full text of the license please see COPYING or
12 // visit http://opensource.org/licenses/GPL-3.0
13 //
14 // Please respect the MCnet academic usage guidelines. See GUIDELINES
15 // or visit https://www.montecarlonet.org/GUIDELINES for details.
16 
17 #pragma once
18 #include "marley/LevelDensityModel.hh"
19 
20 namespace marley {
21 
32 
33  public:
34 
43  BackshiftedFermiGasModel(int Z, int A);
44 
46  virtual double level_density(double Ex) override;
47 
49  virtual double level_density(double Ex, int two_J) override;
50 
53  virtual double level_density(double Ex, int two_J, marley::Parity Pi)
54  override;
55 
56  protected:
57 
59  inline double compute_sigma_F2(double Ex, double a) {
60  double U = Ex - Delta_BFM_;
61 
62  double sigma_F2 = 0.01389 * std::pow(A_, 5.0/3.0)
63  * std::sqrt(a * U) / a_tilde_;
64 
65  return sigma_F2;
66  }
67 
68  int Z_;
69  int A_;
70 
71  double sigma_;
72 
73  double a_tilde_;
74  double gamma_;
75  double delta_W_;
76  double Delta_BFM_;
77 
80  double Sn_;
81  };
82 }
Implementation of the back-shifted Fermi gas nuclear level density model.
Definition: BackshiftedFermiGasModel.hh:31
double Sn_
neutron separation energy (MeV)
Definition: BackshiftedFermiGasModel.hh:80
double gamma_
damping parameter (MeV -1)
Definition: BackshiftedFermiGasModel.hh:74
int Z_
atomic number for this nuclide
Definition: BackshiftedFermiGasModel.hh:68
double a_tilde_
asymptotic level density parameter (MeV -1)
Definition: BackshiftedFermiGasModel.hh:73
int A_
mass number for this nuclide
Definition: BackshiftedFermiGasModel.hh:69
double compute_sigma_F2(double Ex, double a)
Helper function used when evaluating the spin cutoff parameter.
Definition: BackshiftedFermiGasModel.hh:59
double sigma_
spin cut-off parameter
Definition: BackshiftedFermiGasModel.hh:71
double Delta_BFM_
excitation energy shift (MeV)
Definition: BackshiftedFermiGasModel.hh:76
BackshiftedFermiGasModel(int Z, int A)
Definition: BackshiftedFermiGasModel.cc:23
virtual double level_density(double Ex) override
Definition: BackshiftedFermiGasModel.cc:77
double delta_W_
shell correction energy (MeV)
Definition: BackshiftedFermiGasModel.hh:75
double sigma_d_global_
global fit for discrete-region spin cut-off parameter
Definition: BackshiftedFermiGasModel.hh:79
Abstract base class for models of nuclear level densities.
Definition: LevelDensityModel.hh:23
Type-safe representation of a parity value (either +1 or -1)
Definition: Parity.hh:25