Lookup-table based exponential function to save CPU time, which is used by eflowCellIntegrator.
More...
#include <eflowLookupExp.h>
Lookup-table based exponential function to save CPU time, which is used by eflowCellIntegrator.
Definition at line 22 of file eflowLookupExp.h.
◆ eflowLookupExp()
| eflowLookupExp::eflowLookupExp |
( |
int | nExpBins, |
|
|
int | nExpSubBins ) |
|
inline |
Definition at line 27 of file eflowLookupExp.h.
27 :
29
30 for (
int i = 0;
i <= nExpBins; ++
i) {
32 }
33
34 const double substep = 1./nExpSubBins;
35 for (int iSub = 0; iSub <= nExpSubBins; ++iSub){
37 }
38 }
std::vector< double > m_subExp
std::vector< double > m_exp
◆ ~eflowLookupExp()
| eflowLookupExp::~eflowLookupExp |
( |
| ) |
|
|
inline |
◆ evaluate()
| double eflowLookupExp::evaluate |
( |
double | x | ) |
const |
|
inline |
◆ getInstance()
| const eflowLookupExp * eflowLookupExp::getInstance |
( |
int | nExpBins = 50, |
|
|
int | nExpSubBins = 1000 ) |
|
static |
Definition at line 17 of file eflowLookupExp.cxx.
19{
21 if (!cached) {
22 cached.set (std::make_unique<eflowLookupExp>(nExpBins, nExpSubBins));
23 }
24
25 if ( (
cached->m_nExpBins != nExpBins) || (
cached->m_nExpSubBins != nExpSubBins) )
26 {
27 throw std::runtime_error("eflowLookupExp: Instance with different bin numbers than existing requested!");
28 }
30}
#define ATLAS_THREAD_SAFE
CachedUniquePtrT< const T > CachedUniquePtr
cached(func)
Decorator to cache function return value.
◆ m_exp
| std::vector<double> eflowLookupExp::m_exp |
|
private |
◆ m_nExpBins
| int eflowLookupExp::m_nExpBins |
|
private |
◆ m_nExpSubBins
| int eflowLookupExp::m_nExpSubBins |
|
private |
◆ m_subExp
| std::vector<double> eflowLookupExp::m_subExp |
|
private |
The documentation for this class was generated from the following files: