35#define INCLXX_IN_GEANT4_MODE 1
46#ifndef G4INCLINVERSEINTERPOLATIONTABLE_HH_
47#define G4INCLINVERSEINTERPOLATIONTABLE_HH_
57 class InverseInterpolationTable;
100 std::stringstream message;
101 message <<
"x, y, yPrime: " <<
x <<
'\t' <<
y <<
'\t' <<
yPrime << std::endl;
102 return message.str();
124 std::vector<G4double> x(nodes.size());
125 std::transform(nodes.begin(), nodes.end(), x.begin(),
131 std::vector<G4double> y(nodes.size());
132 std::transform(nodes.begin(), nodes.end(), y.begin(),
139 std::string
print()
const;
143 void initDerivatives();
146 void setFunctionDomain();
149 std::vector<InterpolationNode> nodes;
Functor for 1-dimensional mathematical functions.
void setY(const G4double y0)
virtual ~InterpolationNode()
G4bool operator>(const InterpolationNode &rhs) const
std::string print() const
void setX(const G4double x0)
G4double getYPrime() const
G4bool operator<=(const InterpolationNode &rhs) const
InterpolationNode(const G4double x0, const G4double y0, const G4double yPrime0)
void setYPrime(const G4double yPrime0)
G4double yPrime
function derivative
G4bool operator>=(const InterpolationNode &rhs) const
G4bool operator<(const InterpolationNode &rhs) const
friend G4bool operator<(const InterpolationNode &lhs, const G4double rhs)
Overloaded comparison operator for STL algorithms.
Class for interpolating the inverse of a 1-dimensional function.
std::vector< G4double > getNodeValues() const
G4double operator()(const G4double x) const
Compute the value of the function.
std::vector< G4double > getNodeAbscissae() const
unsigned int getNumberOfNodes() const
virtual ~InverseInterpolationTable()
std::string print() const