CLHEP VERSION Reference Documentation
CLHEP Home Page
CLHEP Documentation
CLHEP Bug Reports
Evaluator
src
setStdMath.cc
Go to the documentation of this file.
1
// -*- C++ -*-
2
// $Id: setStdMath.cc,v 1.2 2003/08/13 20:00:10 garren Exp $
3
// ----------------------------------------------------------------------
4
5
#include "
CLHEP/Evaluator/defs.h
"
6
#include "
CLHEP/Evaluator/Evaluator.h
"
7
8
#include <cmath>
// for sqrt and pow
9
10
static
double
eval_abs (
double
a
) {
return
(
a
< 0) ? -
a
:
a
; }
11
static
double
eval_min (
double
a
,
double
b
) {
return
(
a
<
b
) ?
a
:
b
; }
12
static
double
eval_max (
double
a
,
double
b
) {
return
(
a
>
b
) ?
a
:
b
; }
13
static
double
eval_sqrt (
double
a
) {
return
std::sqrt(
a
); }
14
static
double
eval_pow (
double
a
,
double
b
) {
return
std::pow(
a
,
b
); }
15
static
double
eval_sin (
double
a
) {
return
std::sin(
a
); }
16
static
double
eval_cos (
double
a
) {
return
std::cos(
a
); }
17
static
double
eval_tan (
double
a
) {
return
std::tan(
a
); }
18
static
double
eval_asin (
double
a
) {
return
std::asin(
a
); }
19
static
double
eval_acos (
double
a
) {
return
std::acos(
a
); }
20
static
double
eval_atan (
double
a
) {
return
std::atan(
a
); }
21
static
double
eval_atan2(
double
a
,
double
b
) {
return
std::atan2(
a
,
b
); }
22
static
double
eval_sinh (
double
a
) {
return
std::sinh(
a
); }
23
static
double
eval_cosh (
double
a
) {
return
std::cosh(
a
); }
24
static
double
eval_tanh (
double
a
) {
return
std::tanh(
a
); }
25
static
double
eval_exp (
double
a
) {
return
std::exp(
a
); }
26
static
double
eval_log (
double
a
) {
return
std::log(
a
); }
27
static
double
eval_log10(
double
a
) {
return
std::log10(
a
); }
28
29
namespace
HepTool
{
30
31
void
Evaluator::setStdMath
() {
32
33
// S E T S T A N D A R D C O N S T A N T S
34
35
setVariable
(
"pi"
, 3.14159265358979323846);
36
setVariable
(
"e"
, 2.7182818284590452354);
37
setVariable
(
"gamma"
, 0.577215664901532861);
38
setVariable
(
"radian"
, 1.0);
39
setVariable
(
"rad"
, 1.0);
40
setVariable
(
"degree"
, 3.14159265358979323846/180.);
41
setVariable
(
"deg"
, 3.14159265358979323846/180.);
42
43
// S E T S T A N D A R D F U N C T I O N S
44
45
setFunction
(
"abs"
, eval_abs);
46
setFunction
(
"min"
, eval_min);
47
setFunction
(
"max"
, eval_max);
48
setFunction
(
"sqrt"
, eval_sqrt);
49
setFunction
(
"pow"
, eval_pow);
50
setFunction
(
"sin"
, eval_sin);
51
setFunction
(
"cos"
, eval_cos);
52
setFunction
(
"tan"
, eval_tan);
53
setFunction
(
"asin"
, eval_asin);
54
setFunction
(
"acos"
, eval_acos);
55
setFunction
(
"atan"
, eval_atan);
56
setFunction
(
"atan2"
, eval_atan2);
57
setFunction
(
"sinh"
, eval_sinh);
58
setFunction
(
"cosh"
, eval_cosh);
59
setFunction
(
"tanh"
, eval_tanh);
60
setFunction
(
"exp"
, eval_exp);
61
setFunction
(
"log"
, eval_log);
62
setFunction
(
"log10"
, eval_log10);
63
}
64
65
}
// namespace HepTool
Evaluator.h
defs.h
HepTool::Evaluator::setStdMath
void setStdMath()
Definition
setStdMath.cc:31
HepTool::Evaluator::setFunction
void setFunction(const char *name, double(*fun)())
Definition
Evaluator.cc:697
HepTool::Evaluator::setVariable
void setVariable(const char *name, double value)
Definition
Evaluator.cc:688
HepTool
Definition
CLHEP/Evaluator/Evaluator.h:10
b
@ b
Definition
testCategories.cc:125
a
@ a
Definition
testCategories.cc:125
Generated by
1.9.8