Dioda


class description - source file - inheritance tree

class Dioda : public TObject

    private:
Double_t dEdx(Double_t) Float_t dEX(Double_t, Double_t*, Double_t*, Double_t = 0.5) Float_t PoEqSolve(Float_t) void rk4(float*, float*, int, float, float, float*) Float_t rtbis(float, float, float) public:
Dioda(const Dioda&) Dioda(TF1*, Float_t = 50, Int_t = 50, Int_t = 301) virtual ~Dioda() void Alpha(Float_t, Float_t, Float_t*) void CalM(DStruct*, Double_t*) static TClass* Class() void Derivs(float x, float*, float*) virtual TGraph* Draw(char*) void Drift(Double_t sx, Double_t sy, Float_t charg, DStruct* seg, Int_t = 0, Float_t = 0) void GetField() void GetField(TF1*) void GetRamoField() void GetRamoField(TH1F* rf) Float_t GetVoltage() virtual TClass* IsA() const void LaserV(Float_t*, Float_t*, Int_t, Float_t = 3.3) void MipIR(Float_t*, Float_t*, Int_t) void ResetRnd(Int_t seed) void SetVoltage(Float_t V) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members

    private:
Int_t nx Width Of The Doide Int_t ny Thickness Of The Doide Float_t Voltage Voltage TF1* Neff effective dopping concentration TRandom* ran public:
EField Real electric field EField Ramo weighting field TArrayF PhyPot electric potential TArrayF PhyField electric field TH1F* pos contribution of the holes to the total drift current TH1F* neg contribution of the electrons to the total drift current TH1F* sum total drift current Trap* et Trapping for electrons Trap* ht Trapping for holes Int_t udregion Int_t diff Diffusion simulation (yes=1, no=0) Int_t MobMod Mobility Model Int_t average Average (over how many events) Float_t Temperature Temperature Int_t trapping Trapping simulation (yes=1, no=0) Float_t B Magnetic field; Int_t material material index - material=0 silicon, material = 1 diamond Int_t Multiplication

Class Description


Dioda( TF1 *x0, Float_t x1,Int_t x2,Int_t x3)
Constructor of the class Dioda:
		TF1 *x0 ; distribution of the Neff(x) given in 10**12! Note that p+ contact starts with x=301 and n+ at x=1
		Int_t x1 ; voltage applied in reverse direction
		Int_t x2 ; width of the diode in um. For the simulation it is not neccessary to put real dimensions
		Int_t x3 ; thickness in um

Float_t rtbis(float x1, float x2, float xacc)

void rk4(float y[], float dydx[], int n, float x, float h, float yout[])

~Dioda()

void Derivs(float x,float y[],float dydx[])

Float_t PoEqSolve(Float_t der)
TArrayF PhyField(ny+2);
TArrayF PhyPot(ny+2);

void GetRamoField()

void GetRamoField(TH1F *rf)
Change made by GK on 16.10.2002

void GetField()

void GetField(TF1 *potential)
Set the field as defined in the potential function.

TGraph* Draw(char *option)
Draws potential "p" or  electric field "f"

void Drift(Double_t sx, Double_t sy,Float_t charg,DStruct *seg,Int_t MobMod,Float_t t0)
Drift simulation for a point charge (charg)
starting from ( sx,sy)
DStruct *seg is the structure where the  the drift paths, drift times and induced cahrges are stored
	Int_t MobMod; mobility model
	Float_t B; magnetic field
    Float_t t0=start time ;

void MipIR(float *enp, float *exp, int div)
 The simulation of the drift for the minimum ionizing particles.
 A track is devided into Int_ div buckets. Each bucket is drifted in the field. The
 induced currents for each carrier is calculated as the sum  all buckets.
	Int_t MobMod; mobility model
	Float_t B; magnetic field

void LaserV(float *enp, float *exip, int div,Float_t lambda)
 The simulation of the drift for the red laser illumination!
 A penetration profile  is devided into Int_ div buckets. Each bucket is drifted in the field. The
 induced currents for each carrier is calculated as the sum  all buckets.

Double_t dEdx(Double_t E)

Float_t dEX(Double_t E,Double_t *x, Double_t *y,Double_t eps)

void Alpha(Float_t E, Float_t Angle, Float_t *enp)
 The simulation of the drift for the minimum ionizing particles.
 A track is devided into Int_ div buckets. Each bucket is drifted in the field. The
 induced currents for each carrier is calculated as the sum  all buckets.
	Int_t MobMod; mobility model
	Float_t B; magnetic field

void CalM(DStruct *seg, Double_t *data)



Inline Functions


               void SetVoltage(Float_t V)
               void ResetRnd(Int_t seed)
            Float_t GetVoltage()
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
               void StreamerNVirtual(TBuffer& b)
              Dioda Dioda(const Dioda&)


Last update: Tue Jul 28 11:03:18 2009


ROOT page - Class index - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.