GSLRootFSolver.h

Go to the documentation of this file.
00001 // @(#)root/mathmore:$Id: GSLRootFSolver.h 20882 2007-11-19 11:31:26Z rdm $
00002 // Authors: L. Moneta, A. Zsenei   08/2005 
00003 
00004  /**********************************************************************
00005   *                                                                    *
00006   * Copyright (c) 2004 ROOT Foundation,  CERN/PH-SFT                   *
00007   *                                                                    *
00008   * This library is free software; you can redistribute it and/or      *
00009   * modify it under the terms of the GNU General Public License        *
00010   * as published by the Free Software Foundation; either version 2     *
00011   * of the License, or (at your option) any later version.             *
00012   *                                                                    *
00013   * This library is distributed in the hope that it will be useful,    *
00014   * but WITHOUT ANY WARRANTY; without even the implied warranty of     *
00015   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU   *
00016   * General Public License for more details.                           *
00017   *                                                                    *
00018   * You should have received a copy of the GNU General Public License  *
00019   * along with this library (see file COPYING); if not, write          *
00020   * to the Free Software Foundation, Inc., 59 Temple Place, Suite      *
00021   * 330, Boston, MA 02111-1307 USA, or contact the author.             *
00022   *                                                                    *
00023   **********************************************************************/
00024 
00025 // Header file for class GSLRootFSolver
00026 // 
00027 // Created by: moneta  at Sun Nov 14 17:23:06 2004
00028 // 
00029 // Last update: Sun Nov 14 17:23:06 2004
00030 // 
00031 #ifndef ROOT_Math_GSLRootFSolver
00032 #define ROOT_Math_GSLRootFSolver
00033 
00034 
00035 #include "gsl/gsl_roots.h"
00036 
00037 
00038 namespace ROOT {
00039 namespace Math {
00040 
00041 
00042 /**
00043    Root-Finder implementation class using  GSL  
00044 
00045    @ingroup RootFinders
00046  */
00047 class GSLRootFSolver {
00048 
00049 public: 
00050 
00051   GSLRootFSolver(const gsl_root_fsolver_type * type) { 
00052     fSolver = gsl_root_fsolver_alloc( type); 
00053   }
00054   virtual ~GSLRootFSolver() { 
00055     gsl_root_fsolver_free( fSolver);
00056   }
00057 
00058 /* private: */
00059 /* // usually copying is non trivial, so we make this unaccessible */
00060 /*   GSLRootFSolver(const GSLRootFSolver &);  */
00061 /*   GSLRootFSolver & operator = (const GSLRootFSolver &);  */
00062 
00063 /* public:  */
00064 
00065   gsl_root_fsolver * Solver() const { return fSolver; } 
00066   
00067 
00068 protected: 
00069 
00070 
00071 private: 
00072 
00073   gsl_root_fsolver *fSolver;
00074 
00075 
00076 }; 
00077 
00078 } // namespace Math
00079 } // namespace ROOT
00080 
00081 
00082 #endif /* ROOT_Math_GSLRootFSolver */

Generated on Tue Jul 5 14:34:56 2011 for ROOT_528-00b_version by  doxygen 1.5.1