Changeset 3083 in Sophya for trunk/SophyaLib/NTools/generalfit.h


Ignore:
Timestamp:
Sep 19, 2006, 3:44:03 PM (19 years ago)
Author:
cmv
Message:

extraction de GeneralFunction+ GeneralFunc de generalfit.h,cc -> generalfunc.h,cc cmv 19/09/2006

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaLib/NTools/generalfit.h

    r938 r3083  
    66#include "tvector.h"
    77#include "generaldata.h"
     8#include "generalfunc.h"
    89
    910namespace SOPHYA {
    1011
    1112//================================================================
    12 // GeneralFunction
    13 //================================================================
    14 
    15 //! Classe de fonctions parametrees a plusieurs variables
    16 class GeneralFunction {
    17 public:
    18   GeneralFunction(unsigned int nVar, unsigned int nPar);
    19   virtual ~GeneralFunction();
    20 
    21   //! Valeur de la fonction a definir par l'utilisateur (fct virtuelle pure)
    22   virtual double Value(double const xp[], double const* parm)=0;
    23   //! Valeur de la fonction derivee selon les parametres pouvant etre redefinie
    24   virtual double Val_Der(double const xp[], double const* parm
    25                         , double* DgDpar);
    26 
    27   void SetDeltaParm(int numPar, double delta=0.);
    28   void SetDeltaParm(double const* dparam);
    29 
    30   //! Retourne le nombre de variables Xi
    31   inline int     NVar() const {return mNVar;}
    32   //! Retourne le nombre de parametres Ai
    33   inline int     NPar() const {return mNPar;}
    34 
    35 protected:
    36   const int mNVar;  //!< nombre de variables f(x,y,z,...)
    37   const int mNPar;  //!< nombre de parametres
    38 
    39   double *deltaParm;
    40   double *tmpParm;
    41 };
    42 
    43 //================================================================
    44 // GeneralFunc
    45 //================================================================
    46 
    47 //! Classe de fonctions parametrees a plusieurs variables type C
    48 class GeneralFunc : public GeneralFunction {
    49 public:
    50   GeneralFunc(unsigned int nvar, unsigned int npar
    51         ,double (*fun)(double const*,double const*)
    52         ,double (*funder)(double const*, double const*, double*)=NULL);
    53   virtual ~GeneralFunc();
    54 
    55   virtual double Value(double const xp[], double const* Par);
    56   virtual double Val_Der(double const xp[],double const* parm
    57                         , double* DgDpar);
    58 
    59 protected:
    60   double (*tmpFun)   (double const*, double const*);
    61   double (*tmpFunDer)(double const*, double const*, double*);
    62 };
    63 
    64 //================================================================
    6513// GeneralXi2
    6614//================================================================
    67 
    68 class GeneralFitData;
    6915
    7016//! Classe de Xi2 a plusieurs parametres
Note: See TracChangeset for help on using the changeset viewer.