Berkeley Nuclear Data Software
CombinedGenesisAnalysis.h
Go to the documentation of this file.
1 #ifndef _COMBINED_GENESIS_ANALYSIS_H_
2 #define _COMBINED_GENESIS_ANALYSIS_H_
3 #include "GammaProductionAna.h"
5 #include "TALYSUtils.h"
6 #include <random>
7 #include <Eigen/Dense>
11 {
12 public:
15  void addGammaProdAna(GammaProductionAna a_gammaProd);
17 
19  double talysModelFit(const double* a_params);
24  void combinedMinimum(bool a_findMinimum=false);
26  void plotCorrelationMatrix();
28  std::map<std::string, double> generateResampledParams();
34  map<double, Eigen::MatrixXf> generateUncertainCrossSections(
35  // vector<double> a_gammaEnergies,
36  int a_numResamples=100);
37 
40 // private:
41  ROOT::Math::Minimizer* m_minimum;
42  Eigen::MatrixXf m_covarianceMatrix;
43  Eigen::VectorXf m_minimumParams;
45  std::mt19937_64 m_randGen;
46 private:
47  // bool m_
49  void accumulateUncGammaXSec();
50  void accumulateUncNeutronXSec();
51  vector<Eigen::MatrixXf> m_uncElasticAngDists;
52  // Eigen::MatrixXf
53  vector<Eigen::VectorXf> m_uncElasticXsec;
54  Eigen::MatrixXf m_uncElasticCov;
55  map<double, vector<Eigen::VectorXf>> m_uncGammaProd;
56  map<double, Eigen::MatrixXf> m_uncGammaProdCov;
57  map<int, vector<Eigen::VectorXf>> m_uncLevelPop;
58  map<int, Eigen::MatrixXf> m_uncLevelPopCov;
59 };
60 
61 #endif
Definition: CombinedGenesisAnalysis.h:11
int m_numParams
Definition: CombinedGenesisAnalysis.h:44
GammaProductionAna m_gammaProd
Definition: CombinedGenesisAnalysis.h:38
std::map< std::string, double > generateResampledParams()
generates resamples parameters to propagate uncertainty through TALYS
Definition: CombinedGenesisAnalysis.cpp:109
std::mt19937_64 m_randGen
Definition: CombinedGenesisAnalysis.h:45
void combinedMinimum(bool a_findMinimum=false)
Definition: CombinedGenesisAnalysis.cpp:29
GenesisNeutronSinglesAna m_neutronProd
Definition: CombinedGenesisAnalysis.h:39
Eigen::VectorXf m_minimumParams
Definition: CombinedGenesisAnalysis.h:43
ROOT::Math::Minimizer * m_minimum
Definition: CombinedGenesisAnalysis.h:41
CombinedGenesisAnalysis()
default constructor
Definition: CombinedGenesisAnalysis.cpp:6
Eigen::MatrixXf m_covarianceMatrix
Definition: CombinedGenesisAnalysis.h:42
double talysModelFit(const double *a_params)
function to calculate chi2
Definition: CombinedGenesisAnalysis.cpp:22
void addNeutronSinglesAna(GenesisNeutronSinglesAna a_neutronProd)
Definition: CombinedGenesisAnalysis.cpp:17
void addGammaProdAna(GammaProductionAna a_gammaProd)
Definition: CombinedGenesisAnalysis.cpp:13
map< double, Eigen::MatrixXf > generateUncertainCrossSections(int a_numResamples=100)
Definition: CombinedGenesisAnalysis.cpp:131
void plotCorrelationMatrix()
plot the correlation matrix
Definition: CombinedGenesisAnalysis.cpp:85
Definition: GammaProductionAna.h:43
Definition: GenesisNeutronSinglesAna.h:30