Gaudi Framework, version v24r2

Home   Generated: Wed Dec 4 2013
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
EqSolver.h
Go to the documentation of this file.
1 // $Id: EqSolver.h,v 1.3 2006/11/30 10:40:53 mato Exp $
2 // ============================================================================
3 #ifndef ALGTOOLS_EQSOLVER_H
4 #define ALGTOOLS_EQSOLVER_H 1
5 // Include files
6 // from CLHEP
7 #include "CLHEP/GenericFunctions/GenericFunctions.hh"
8 #include "CLHEP/GenericFunctions/Argument.hh"
9 #include "CLHEP/GenericFunctions/AbsFunction.hh"
10 // from Gaudi
11 #include "GaudiAlg/GaudiTool.h"
12 //from GSL
13 #include "gsl/gsl_multiroots.h"
14 
15 // local
16 #include "GaudiGSL/IEqSolver.h"
17 
19 template <class TOOL> class ToolFactory;
20 
28 class EqSolver : public extends1<GaudiTool, IEqSolver> {
29  // friend factory for instantiation
30  friend class ToolFactory<EqSolver> ;
31 public:
33 public:
34 
40  virtual StatusCode solver( const Equations& funcs ,
41  Arg& arg ) const;
42 
44  virtual StatusCode initialize ();
45  virtual StatusCode finalize ();
46 
47  virtual ~EqSolver( );
48 
50  {
51  public:
55  EqSolverMisc ( const Equations& funcs ,
56  Arg& arg ) ;
57  // destructor
58  ~EqSolverMisc ();
59  public:
60  inline const Arg& argument () const { return m_argum ; }
61  inline Arg& argument () { return m_argum ; }
62  inline const Equations* equations () const { return m_eqs ; }
63  inline const Jacobi& jacobi () const { return m_jac ; }
64  private:
65  // default constructor is disabled
66  EqSolverMisc () ;
67  // copy constructor is disabled
68  EqSolverMisc ( const EqSolverMisc& );
69  // assignment operator is disabled
71  private:
73  const Equations* m_eqs ;
75  };
76 
77 
84  EqSolver( const std::string& type,
85  const std::string& name,
86  const IInterface* parent);
87 
88 private:
89 
91  EqSolver();
93  EqSolver ( const EqSolver& );
95  EqSolver& operator=( const EqSolver& );
96 
97 private:
98 
100  double m_max_iter ;
102  const gsl_multiroot_fdfsolver_type* m_type ;
103 
104 };
105 
106 // ============================================================================
107 // The END
108 // ============================================================================
109 #endif // ALGTOOLS_EQSOLVER_H
110 // ============================================================================

Generated at Wed Dec 4 2013 14:33:08 for Gaudi Framework, version v24r2 by Doxygen version 1.8.2 written by Dimitri van Heesch, © 1997-2004