ROOT logo
KDetSim » KPad

class KPad: public KDetector


KPad

Description of the Diode


Function Members (Methods)

public:
KPad(const KPad&)
KPad(Float_t = 50, Float_t = 301)
~KPad()
voidCalField(Int_t what)
voidKDetector::CalM(KStruct* seg, Double_t* data, Int_t = -1)
voidKDetector::CalPhyField()
voidKDetector::CalRamoField()
static TClass*Class()
voidKDetector::Declaration(Int_t)
static Double_tKMaterial::dEdx(Double_t)
static Float_tKMaterial::dEX(Double_t, Double_t*, Double_t*, Double_t)
TH2F*KDetector::Draw(Char_t*, Float_t = 1)
TH1F*KDetector::Draw1D(Char_t*, Float_t, Int_t, Float_t)
TGraph*DrawPad(char*)
voidKDetector::Drift(Double_t, Double_t, Double_t, Float_t, KStruct*, Double_t = 0)
voidKGeometry::ElCylinder(Float_t* Pos, Float_t R, Float_t L, Int_t O, Int_t Wei, Int_t Mat)
voidKGeometry::ElLine(Float_t* r0, Float_t* r1, Float_t* W, Int_t Wei, Int_t Mat)
voidKGeometry::ElRectangle(Float_t* Pos, Float_t* Size, Int_t Wei, Int_t Mat)
voidKGeometry::ElRectangle(Float_t* Pos, Float_t* Size, TH3F*, Float_t)
voidKDetector::GaussBeam(Int_t, Float_t, Float_t, Float_t, Float_t, Float_t)
voidGetField()
voidGetField(TH1F* rf)
voidGetField(TF1* rf)
TH3F*KGeometry::GetGeom()
voidKGeometry::GetGrid(TH3I*, Short_t = 0)
Float_tKGeometry::GetLowEdge(Int_t)
Double_tKDetector::GetPrecision()
voidGetRamoField()
voidGetRamoField(TH1F* rf)
Double_tKGeometry::GetStepSize(Int_t, Int_t)
Double_tKGeometry::GetStepSize(Int_t, Float_t)
Float_tKGeometry::GetUpEdge(Int_t)
virtual TClass*IsA() const
Double_tKDetector::kappa(int, int, int, int)
TH3F*KGeometry::MapToGeometry(Double_t*, Double_t = 1)
voidKDetector::MipIR(Int_t = 20, Float_t = 0)
static Int_tKMaterial::MobMod()
KPad&operator=(const KPad&)
static Float_tKMaterial::Perm(Int_t = 1)
TFile*KDetector::Read(Char_t*, Char_t*)
voidKGeometry::Reset(Int_t = 0, Int_t = 0)
voidKDetector::ResetRnd(Int_t seed)
static Float_tKMaterial::Rho()
voidKDetector::Save(Char_t*, Char_t*)
Int_tKGeometry::SetBoundaryConditions()
voidKDetector::SetCalculationParameters(Double_t x, Int_t y)
voidKDetector::SetDebug(Short_t x)
voidKDetector::SetDriftHisto(Float_t x, Int_t = 200)
intKGeometry::SetElecVolt(int i)
voidKDetector::SetEntryPoint(Float_t x, Float_t y, Float_t z)
voidKDetector::SetExitPoint(Float_t x, Float_t y, Float_t z)
voidKDetector::SetNeff(TF3* neff, Int_t calnow = 1)
voidKDetector::SetNeff(TH3F* neff, Int_t calnow = 1)
voidKDetector::SetPrecision(Double_t x)
voidSetUpElectrodes()
voidSetUpVolume(Float_t)
voidKDetector::SetVoltage(Float_t x, Int_t calnow = 1)
voidKDetector::ShowGaussBeam(Int_t, Float_t, Float_t, Float_t, Int_t, Int_t)
virtual voidShowMembers(TMemberInspector&)
voidKDetector::ShowMipIR(Int_t, Int_t = 14, Int_t = 1)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
Double_tKDetector::V(int, int)
private:
voidDerivs(float x, float*, float*)
Float_tPoEqSolve(Float_t)
voidrk4(float*, float*, int, float, float, float*)
Float_trtbis(float, float, float)

Data Members

public:
Float_tKDetector::B[3]magnetic field
Float_tKDetector::BDTreshhole multiplication - break down treshold
Int_tKDetector::BreakDownif break down occurs it goes to 1 otherwise is 0
Float_tCellXwidth of the diode
Float_tCellYthickness of the diode
TH3I*KGeometry::DMdetector material
TH3I*KGeometry::EGelectrode geometry
static Int_tKMaterial::ImpactIonizationimpact ionization model
Float_tKDetector::MTreshtreshold for taking multiplication into account
static Int_tKMaterial::MatMaterial index
static Int_tKMaterial::Mobilitymobility model for each material
TF1*Neffeffective dopping concentration
TF3*KDetector::NeffFeffective dopping concentration function
TH3F*KDetector::NeffHeffective dopping concentration histogram
KField*KDetector::Ramoramo field
KField*KDetector::Realelectric field
Float_tKDetector::SStepSimulation step size;
static Float_tKMaterial::TemperatureTemperature
Float_tKDetector::VoltageVoltage
Float_tKDetector::Voltage2Voltage2
TArrayFKDetector::VoltagesArray of voltages
Int_tKDetector::averageAverage (over how many events)
Int_tKDetector::diffDiffusion simulation (yes=1, no=0)
Float_tKDetector::enp[3]entry point for the charge drift
Float_tKDetector::exp[3]exit point for the cahrge drift
TH1F*KDetector::negcontribution of the electrons to the total drift current
Int_tKGeometry::nxx-divisions
Int_tKGeometry::nyy-divisions
Int_tKGeometry::nzz-divisions
TH1F*KDetector::poscontribution of the holes to the total drift current
TH1F*KDetector::sumtotal drift current
Float_tKDetector::taueeffective trapping time constants - used if Multiplication is ON
Float_tKDetector::tauheffective trapping time constants - used if Multiplication is ON
private:
TArrayFPhyFieldelectric field
TArrayFPhyPotelectric potential

Class Charts

Inheritance Chart:
KGeometry
KMaterial
KDetector
KPad

Function documentation

KPad(Float_t = 50, Float_t = 301)
Constructor of the class KPad:
		Float_t x ; width of the diode in um. For the simulation it is not neccessary to put real dimensions
		Float_t y ; thickness in um
void SetUpVolume(Float_t )
void SetUpElectrodes()
Float_t rtbis(float , float , float )
void rk4(float* , float* , int , float , float , float* )
~KPad()
void Derivs(float x, float* , float* )
Double_t permMat=(material==0)?perm:permDi;
Float_t PoEqSolve(Float_t )
TArrayF PhyField(ny+2);
TArrayF PhyPot(ny+2);
Float_t Step=1;
void GetRamoField()
void GetRamoField(TH1F* rf)
void GetField()
void GetField(TH1F* rf)
void GetField(TF1* rf)
TGraph * DrawPad(char* )
Draws potential "p" or  electric field "f"
KPad(Float_t = 50, Float_t = 301)
void CalField(Int_t what)
{if(what==1) GetRamoField(); else GetField();}