Geant4  10.02.p03
G4Solver< Function > Class Template Reference

#include <G4Solver.hh>

Collaboration diagram for G4Solver< Function >:

Public Types

enum  { DefaultMaxIter = 100 }
 

Public Member Functions

 G4Solver ()
 
 G4Solver (const G4int iterations, const G4double tol)
 
 G4Solver (const G4Solver &right)
 
 ~G4Solver ()
 
G4Solveroperator= (const G4Solver &right)
 
G4bool operator== (const G4Solver &right) const
 
G4bool operator!= (const G4Solver &right) const
 
G4int GetMaxIterations (void) const
 
void SetMaxIterations (const G4int iterations)
 
G4double GetTolerance (void) const
 
void SetTolerance (const G4double epsilon)
 
G4double GetIntervalLowerLimit (void) const
 
G4double GetIntervalUpperLimit (void) const
 
void SetIntervalLimits (const G4double Limit1, const G4double Limit2)
 
G4double GetRoot (void) const
 
G4bool Bisection (Function &theFunction)
 
G4bool RegulaFalsi (Function &theFunction)
 
G4bool Brent (Function &theFunction)
 
G4bool Crenshaw (Function &theFunction)
 

Private Attributes

G4int MaxIter
 
G4double tolerance
 
G4double a
 
G4double b
 
G4double root
 

Detailed Description

template<class Function>
class G4Solver< Function >

Definition at line 41 of file G4Solver.hh.

Member Enumeration Documentation

◆ anonymous enum

template<class Function>
anonymous enum
Enumerator
DefaultMaxIter 

Definition at line 44 of file G4Solver.hh.

Constructor & Destructor Documentation

◆ G4Solver() [1/3]

template<class Function>
G4Solver< Function >::G4Solver ( )
inline

Definition at line 47 of file G4Solver.hh.

48  a(0.0), b(0.0), root(0.0) {};
G4double root
Definition: G4Solver.hh:106
G4double a
Definition: G4Solver.hh:102
#define DefaultTolerance
Definition: G4Solver.hh:39
G4int MaxIter
Definition: G4Solver.hh:96
G4double tolerance
Definition: G4Solver.hh:99
G4double b
Definition: G4Solver.hh:103
Here is the caller graph for this function:

◆ G4Solver() [2/3]

template<class Function>
G4Solver< Function >::G4Solver ( const G4int  iterations,
const G4double  tol 
)
inline

Definition at line 50 of file G4Solver.hh.

50  :
51  MaxIter(iterations), tolerance(tol),
52  a(0.0), b(0.0), root(0.0) {};
G4double root
Definition: G4Solver.hh:106
G4double a
Definition: G4Solver.hh:102
G4int MaxIter
Definition: G4Solver.hh:96
G4double tolerance
Definition: G4Solver.hh:99
G4double b
Definition: G4Solver.hh:103
Here is the call graph for this function:

◆ G4Solver() [3/3]

template<class Function >
G4Solver< Function >::G4Solver ( const G4Solver< Function > &  right)

Definition at line 36 of file G4Solver.cc.

37 {
38  MaxIter = right.MaxIter;
39  tolerance = right.tolerance;
40  a = right.a;
41  b = right.b;
42  root = right.root;
43 }
G4double root
Definition: G4Solver.hh:106
G4double a
Definition: G4Solver.hh:102
G4int MaxIter
Definition: G4Solver.hh:96
G4double tolerance
Definition: G4Solver.hh:99
G4double b
Definition: G4Solver.hh:103

◆ ~G4Solver()

template<class Function>
G4Solver< Function >::~G4Solver ( )
inline

Definition at line 58 of file G4Solver.hh.

58 {};
Here is the call graph for this function:

Member Function Documentation

◆ Bisection()

template<class Function>
G4bool G4Solver< Function >::Bisection ( Function &  theFunction)
Here is the caller graph for this function:

◆ Brent()

template<class Function>
G4bool G4Solver< Function >::Brent ( Function &  theFunction)
Here is the caller graph for this function:

◆ Crenshaw()

template<class Function>
G4bool G4Solver< Function >::Crenshaw ( Function &  theFunction)
Here is the caller graph for this function:

◆ GetIntervalLowerLimit()

template<class Function>
G4double G4Solver< Function >::GetIntervalLowerLimit ( void  ) const
inline

Definition at line 72 of file G4Solver.hh.

72 {return a;}
G4double a
Definition: G4Solver.hh:102

◆ GetIntervalUpperLimit()

template<class Function>
G4double G4Solver< Function >::GetIntervalUpperLimit ( void  ) const
inline

Definition at line 73 of file G4Solver.hh.

73 {return b;}
G4double b
Definition: G4Solver.hh:103
Here is the call graph for this function:

◆ GetMaxIterations()

template<class Function>
G4int G4Solver< Function >::GetMaxIterations ( void  ) const
inline

Definition at line 65 of file G4Solver.hh.

65 {return MaxIter;}
G4int MaxIter
Definition: G4Solver.hh:96

◆ GetRoot()

template<class Function>
G4double G4Solver< Function >::GetRoot ( void  ) const
inline

Definition at line 77 of file G4Solver.hh.

77 {return root;}
G4double root
Definition: G4Solver.hh:106
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetTolerance()

template<class Function>
G4double G4Solver< Function >::GetTolerance ( void  ) const
inline

Definition at line 68 of file G4Solver.hh.

68 {return tolerance;}
G4double tolerance
Definition: G4Solver.hh:99

◆ operator!=()

template<class Function >
G4bool G4Solver< Function >::operator!= ( const G4Solver< Function > &  right) const

Definition at line 65 of file G4Solver.cc.

66 {
67  return !operator==(right);
68 }
G4bool operator==(const G4Solver &right) const
Definition: G4Solver.cc:58
Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=()

template<class Function >
G4Solver< Function > & G4Solver< Function >::operator= ( const G4Solver< Function > &  right)

Definition at line 47 of file G4Solver.cc.

48 {
49  MaxIter = right.MaxIter;
50  tolerance = right.tolerance;
51  a = right.a;
52  b = right.b;
53  root = right.root;
54  return *this;
55 }
G4double root
Definition: G4Solver.hh:106
G4double a
Definition: G4Solver.hh:102
G4int MaxIter
Definition: G4Solver.hh:96
G4double tolerance
Definition: G4Solver.hh:99
G4double b
Definition: G4Solver.hh:103
Here is the caller graph for this function:

◆ operator==()

template<class Function >
G4bool G4Solver< Function >::operator== ( const G4Solver< Function > &  right) const

Definition at line 58 of file G4Solver.cc.

59 {
60  if (this == &right) return true;
61  else return false;
62 }
Here is the caller graph for this function:

◆ RegulaFalsi()

template<class Function>
G4bool G4Solver< Function >::RegulaFalsi ( Function &  theFunction)
Here is the caller graph for this function:

◆ SetIntervalLimits()

template<class Function>
void G4Solver< Function >::SetIntervalLimits ( const G4double  Limit1,
const G4double  Limit2 
)
Here is the caller graph for this function:

◆ SetMaxIterations()

template<class Function>
void G4Solver< Function >::SetMaxIterations ( const G4int  iterations)
inline

Definition at line 66 of file G4Solver.hh.

66 {MaxIter=iterations;}
G4int MaxIter
Definition: G4Solver.hh:96

◆ SetTolerance()

template<class Function>
void G4Solver< Function >::SetTolerance ( const G4double  epsilon)
inline

Definition at line 69 of file G4Solver.hh.

69 {tolerance = epsilon;}
G4double tolerance
Definition: G4Solver.hh:99
double epsilon(double density, double temperature)
Here is the call graph for this function:

Member Data Documentation

◆ a

template<class Function>
G4double G4Solver< Function >::a
private

Definition at line 102 of file G4Solver.hh.

◆ b

template<class Function>
G4double G4Solver< Function >::b
private

Definition at line 103 of file G4Solver.hh.

◆ MaxIter

template<class Function>
G4int G4Solver< Function >::MaxIter
private

Definition at line 96 of file G4Solver.hh.

◆ root

template<class Function>
G4double G4Solver< Function >::root
private

Definition at line 106 of file G4Solver.hh.

◆ tolerance

template<class Function>
G4double G4Solver< Function >::tolerance
private

Definition at line 99 of file G4Solver.hh.


The documentation for this class was generated from the following files: