Gaudi Framework, version v25r2

Home   Generated: Wed Jun 4 2014
 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 
25 class EqSolver : public extends1<GaudiTool, IEqSolver> {
26 public:
27  typedef std::vector<Equations> Jacobi ;
28 public:
29 
35  virtual StatusCode solver( const Equations& funcs ,
36  Arg& arg ) const;
37 
39  virtual StatusCode initialize ();
40  virtual StatusCode finalize ();
41 
42  virtual ~EqSolver( );
43 
45  {
46  public:
50  EqSolverMisc ( const Equations& funcs ,
51  Arg& arg ) ;
52  // destructor
53  ~EqSolverMisc ();
54  public:
55  inline const Arg& argument () const { return m_argum ; }
56  inline Arg& argument () { return m_argum ; }
57  inline const Equations* equations () const { return m_eqs ; }
58  inline const Jacobi& jacobi () const { return m_jac ; }
59  private:
60  // default constructor is disabled
61  EqSolverMisc () ;
62  // copy constructor is disabled
63  EqSolverMisc ( const EqSolverMisc& );
64  // assignment operator is disabled
66  private:
68  const Equations* m_eqs ;
70  };
71 
72 
79  EqSolver( const std::string& type,
80  const std::string& name,
81  const IInterface* parent);
82 
83 private:
84 
86  EqSolver();
88  EqSolver ( const EqSolver& );
90  EqSolver& operator=( const EqSolver& );
91 
92 private:
93 
94  std::string m_algType ;
95  double m_max_iter ;
96  double m_norm_residual ;
97  const gsl_multiroot_fdfsolver_type* m_type ;
98 
99 };
100 
101 // ============================================================================
102 // The END
103 // ============================================================================
104 #endif // ALGTOOLS_EQSOLVER_H
105 // ============================================================================

Generated at Wed Jun 4 2014 14:48:56 for Gaudi Framework, version v25r2 by Doxygen version 1.8.2 written by Dimitri van Heesch, © 1997-2004