#ifndef _SiRDPTrap #define _SiRDPTrap ////////////////////////////////////////////////////////////////////////// // // // SiRDPTrap // // // // Description of the scenario class // // // ////////////////////////////////////////////////////////////////////////// #include "TObject.h" #include "TF1.h" #include "TMath.h" #include "TArray.h" #include "TArrayI.h" #include "TArrayF.h" #include "TGraph.h" #include #include #include "TObject.h" class SiRDPTrap : public TObject { private: TString name; Int_t Model; Float_t gr[2]; Float_t T_ref; Float_t kr_Tref; Float_t Ea; Bool_t BiasSens; void rk4(float [], float [], int, float, float, float []); //Variables determining time evolution Float_t flux; Float_t U; Float_t T; Float_t ts; Double_t kr; public: UInt_t cs; Float_t NaVfd; //Contribution of the defect A to Vfd Neff*Pt Float_t NbVfd; //Contribution of the defect B to Vfd Neff*Pt Float_t NcVfd; //Contribution of the defect C to Vfd Neff*Pt TArrayF Na; TArrayF Nb; TArrayF Nc; SiRDPTrap(Int_t=1,Float_t=0,Float_t=0,Float_t=0,Float_t=1,Float_t=293,Char_t *dname="NotSet"); ~SiRDPTrap(); void Dynamics(Float_t ,Float_t [],Float_t[]); void DoStep(Float_t=0); void ScaleReacConst(); Int_t GetModel() {return Model;} void SetModel(Int_t); void SetGenRate(Float_t *); void SetTref(Float_t); void SetEa(Float_t); void SetReacConst(Float_t); void SetBiasSens(Bool_t x) {BiasSens=x;} void SetNoSteps(Int_t); void SetInitial(Float_t x,Float_t y, Float_t z) {Na[0]=x; Nb[0]=y; Nc[0]=z;} // void SetVfd(Float_t); // void SetInitN(Float_t *x) {for(Int_t i=0;i