ROOT
6.30.04
Reference Guide
All
Namespaces
Files
Pages
KelvinFunctions.h
Go to the documentation of this file.
1
// @(#)root/mathmore:$Id$
2
3
// CodeCogs GNU General Public License Agreement
4
// Copyright (C) 2004-2005 CodeCogs, Zyba Ltd, Broadwood, Holford, TA5 1DU,
5
// England.
6
//
7
// This program is free software; you can redistribute it and/or modify it
8
// under
9
// the terms of the GNU General Public License as published by CodeCogs.
10
// You must retain a copy of this licence in all copies.
11
//
12
// This program is distributed in the hope that it will be useful, but
13
// WITHOUT ANY
14
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
15
// FITNESS FOR A
16
// PARTICULAR PURPOSE. See the Adapted GNU General Public License for more
17
// details.
18
//
19
// *** THIS SOFTWARE CAN NOT BE USED FOR COMMERCIAL GAIN. ***
20
// ---------------------------------------------------------------------------------
21
22
#ifndef ROOT_Math_KelvinFunctions
23
#define ROOT_Math_KelvinFunctions
24
25
//////////////////////////////////////////////////////////////////////////
26
// //
27
// KelvinFunctions //
28
// //
29
// Calculates the Kelvin Functions Ber(x), Bei(x), Ker(x), Kei(x), and //
30
// their first derivatives. //
31
// //
32
//////////////////////////////////////////////////////////////////////////
33
34
35
namespace
ROOT {
36
namespace
Math {
37
38
class
KelvinFunctions
39
{
40
public
:
41
// The Kelvin functions and their first derivatives
42
static
double
Ber(
double
x);
43
static
double
Bei(
double
x);
44
static
double
Ker(
double
x);
45
static
double
Kei(
double
x);
46
static
double
DBer(
double
x);
47
static
double
DBei(
double
x);
48
static
double
DKer(
double
x);
49
static
double
DKei(
double
x);
50
51
// Utility functions appearing in the calculations of the Kelvin
52
// functions.
53
static
double
F1(
double
x);
54
static
double
F2(
double
x);
55
static
double
G1(
double
x);
56
static
double
G2(
double
x);
57
static
double
M(
double
x);
58
static
double
Theta(
double
x);
59
static
double
N(
double
x);
60
static
double
Phi(
double
x);
61
62
// Include and empty virtual desctructor to eliminate compiler warnings
63
virtual
~KelvinFunctions() {}
64
65
protected
:
66
// Internal parameters used to control calculation method and convegence
67
static
double
fgMin;
68
static
double
fgEpsilon;
69
70
};
71
72
}
// namespace Math
73
}
// namespace ROOT
74
75
76
#endif
77
math
mathmore
inc
Math
KelvinFunctions.h
Generated on Tue May 5 2020 14:03:03 for ROOT by
1.8.5