Geant4
11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
setStdMath.cc
Go to the documentation of this file.
1
// -*- C++ -*-
2
// ----------------------------------------------------------------------
3
4
#include "
CLHEP/Evaluator/Evaluator.h
"
5
6
#include <cmath>
// for sqrt and pow
7
8
static
double
eval_abs (
double
a) {
return
(a < 0) ? -a : a; }
9
static
double
eval_min (
double
a,
double
b) {
return
(a < b) ? a : b; }
10
static
double
eval_max (
double
a,
double
b) {
return
(a > b) ? a : b; }
11
static
double
eval_sqrt (
double
a) {
return
std::sqrt(a); }
12
static
double
eval_pow (
double
a,
double
b) {
return
std::pow(a,b); }
13
static
double
eval_sin (
double
a) {
return
std::sin(a); }
14
static
double
eval_cos (
double
a) {
return
std::cos(a); }
15
static
double
eval_tan (
double
a) {
return
std::tan(a); }
16
static
double
eval_asin (
double
a) {
return
std::asin(a); }
17
static
double
eval_acos (
double
a) {
return
std::acos(a); }
18
static
double
eval_atan (
double
a) {
return
std::atan(a); }
19
static
double
eval_atan2(
double
a,
double
b) {
return
std::atan2(a,b); }
20
static
double
eval_sinh (
double
a) {
return
std::sinh(a); }
21
static
double
eval_cosh (
double
a) {
return
std::cosh(a); }
22
static
double
eval_tanh (
double
a) {
return
std::tanh(a); }
23
static
double
eval_exp (
double
a) {
return
std::exp(a); }
24
static
double
eval_log (
double
a) {
return
std::log(a); }
25
static
double
eval_log10(
double
a) {
return
std::log10(a); }
26
27
namespace
HepTool
{
28
29
void
Evaluator::setStdMath
() {
30
31
// S E T S T A N D A R D C O N S T A N T S
32
33
setVariable
(
"pi"
, 3.14159265358979323846);
34
setVariable
(
"e"
, 2.7182818284590452354);
35
setVariable
(
"gamma"
, 0.577215664901532861);
36
setVariable
(
"radian"
, 1.0);
37
setVariable
(
"rad"
, 1.0);
38
setVariable
(
"degree"
, 3.14159265358979323846/180.);
39
setVariable
(
"deg"
, 3.14159265358979323846/180.);
40
41
// S E T S T A N D A R D F U N C T I O N S
42
43
setFunction
(
"abs"
, eval_abs);
44
setFunction
(
"min"
, eval_min);
45
setFunction
(
"max"
, eval_max);
46
setFunction
(
"sqrt"
, eval_sqrt);
47
setFunction
(
"pow"
, eval_pow);
48
setFunction
(
"sin"
, eval_sin);
49
setFunction
(
"cos"
, eval_cos);
50
setFunction
(
"tan"
, eval_tan);
51
setFunction
(
"asin"
, eval_asin);
52
setFunction
(
"acos"
, eval_acos);
53
setFunction
(
"atan"
, eval_atan);
54
setFunction
(
"atan2"
, eval_atan2);
55
setFunction
(
"sinh"
, eval_sinh);
56
setFunction
(
"cosh"
, eval_cosh);
57
setFunction
(
"tanh"
, eval_tanh);
58
setFunction
(
"exp"
, eval_exp);
59
setFunction
(
"log"
, eval_log);
60
setFunction
(
"log10"
, eval_log10);
61
}
62
63
}
// namespace HepTool
Evaluator.h
HepTool::Evaluator::setStdMath
void setStdMath()
Definition
setStdMath.cc:29
HepTool::Evaluator::setFunction
void setFunction(const char *name, double(*fun)())
Definition
Evaluator.cc:701
HepTool::Evaluator::setVariable
void setVariable(const char *name, double value)
Definition
Evaluator.cc:692
HepTool
Definition
Evaluator.h:9
geant4-v11.2.2
source
externals
clhep
src
setStdMath.cc
Generated by
1.12.0