◆ Histogram()
32:
m_Nbin(
NBIN),
Ntot(0),
Ndata(
NBIN,0),
Nnan(
NBIN,0),
ExpValue(
NBIN,0.0),
Stddev(
NBIN,0.0),
funcF(
NBIN,0.0),
DOS(
NBIN,0.0) {}
Integer_t const NBIN
Definition OpAverage.cpp:20
std::vector< double > funcF
Definition OpAverage.cpp:29
std::vector< double > Stddev
Definition OpAverage.cpp:28
Integer_t m_Nbin
Definition OpAverage.cpp:22
std::vector< Integer_t > Ndata
Definition OpAverage.cpp:25
std::vector< Integer_t > Nnan
Definition OpAverage.cpp:26
std::vector< double > ExpValue
Definition OpAverage.cpp:27
std::vector< double > DOS
Definition OpAverage.cpp:30
Integer_t Ntot
Definition OpAverage.cpp:24
◆ add() [1/2]
void Histogram::add |
( |
double |
relEnergy, |
|
|
double |
Expval, |
|
|
double |
stddev, |
|
|
Integer_t |
NdataInShell |
|
) |
| |
|
inline |
33 {
38 if( isinf(stddev) ) stddev = NAN;
39 if( isnan(stddev) )
Nnan[bin] +=1;
40 else {
42 if(Nstddev != 0) {
43 Stddev[bin] = ((Nstddev-1)*
Stddev[bin]+stddev)/(double)Nstddev;
44 funcF[bin] = ((Nstddev-1)*
funcF[bin]+stddev*sqrt( (
double)NdataInShell ))/(double)Nstddev;
45 }
46 }
47 }
MKL_INT Integer_t
Definition mytypes.hpp:359
◆ add() [2/2]
48 {
50 for(
int bin = 0;bin <
m_Nbin; ++bin) {
57 try{
58 if( isinf(
ExpValue[bin]) || isnan(
ExpValue[bin]) )
throw std::runtime_error(
"ExpValue");
59 if( isinf(
Stddev[bin]) || isnan(
Stddev[bin]) )
throw std::runtime_error(
" Stddev");
60 if( isinf(
funcF[bin]) || isnan(
funcF[bin]) )
throw std::runtime_error(
" funcF");
61 if( isinf(
DOS[bin]) || isnan(
DOS[bin]) )
throw std::runtime_error(
" DOS");
62 } catch(std::exception& e) {
63 std::cerr << "Error:(bin=" << bin << ") " << e.what() << std::endl;
64 std::cerr <<
" :ExpValue=" << hist.
ExpValue[bin] <<
", "
65 <<
"Stddev=" << hist.
Stddev[bin] <<
", "
66 <<
"funcF=" << hist.
funcF[bin] <<
", "
67 <<
" DOS=" << hist.
DOS[bin] << std::endl;
68 std::exit(EX_DATAERR);
69 }
70
71
72 }
73 }
◆ clear()
void Histogram::clear |
( |
| ) |
|
|
inline |
74 {
77 std::fill(
Nnan.begin(),
Nnan.end(),0);
81 std::fill(
DOS.begin(),
DOS.end(),0);
82 }
◆ DOS
std::vector<double> Histogram::DOS |
◆ ExpValue
std::vector<double> Histogram::ExpValue |
◆ funcF
std::vector<double> Histogram::funcF |
◆ m_Nbin
◆ Ndata
◆ Nnan
◆ Ntot
◆ Stddev
std::vector<double> Histogram::Stddev |
The documentation for this class was generated from the following file: