MARLEY (Model of Argon Reaction Low Energy Yields)  v1.2.0
A Monte Carlo event generator for tens-of-MeV neutrino interactions
LevelDensityModel.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/Parity.hh"
19 
20 namespace marley {
21 
24 
25  public:
26 
27  virtual ~LevelDensityModel() = default;
28 
33  virtual double level_density(double Ex) = 0;
34 
39  virtual double level_density(double Ex, int two_J) = 0;
40 
47  virtual double level_density(double Ex, int two_J, marley::Parity Pi) = 0;
48  };
49 }
Abstract base class for models of nuclear level densities.
Definition: LevelDensityModel.hh:23
virtual double level_density(double Ex, int two_J)=0
virtual double level_density(double Ex)=0
virtual double level_density(double Ex, int two_J, marley::Parity Pi)=0
Type-safe representation of a parity value (either +1 or -1)
Definition: Parity.hh:25