#include "CTDR_Field.h"

CTDR_Field


class description - header file - source file - inheritance tree (.pdf)

class CTDR_Field: public CTDR_Tree

Inheritance Chart:
TObject
CTDR_Tree
CTDR_Field

Function Members (Methods)

Display options:
Show inherited
Show non-public
public:
CTDR_Field(const CTDR_Field&)
CTDR_Field(TFile& Fichier, int NdivX, int NdivY, int NdivZ, double LX, double LY, double LZ)
~CTDR_Field()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() const
virtual TObject*TObject::DrawClone(Option_t* option = "") const
virtual voidTObject::Dump() const
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
doubleGetEx()
doubleGetEy()
doubleGetEz()
virtual const char*TObject::GetIconName() const
doubleGetLz()
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
Long64_tCTDR_Tree::Hash(double x, double y, double z)
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() const
voidInterpole(double x, double y, double z)
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
CTDR_Field&operator=(const CTDR_Field&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") const
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetChamp(double xx, double yy, double zz)
virtual voidTObject::SetDrawOption(Option_t* option = "")
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
voidCTDR_Tree::SetPoints(double x, double y, double z)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = "0", Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = "0", Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

public:
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
intCTDR_Tree::NDivxnumber of slices in x
intCTDR_Tree::NDivynumber of slices in y
intCTDR_Tree::NDivznumber of slices in z
doubleCTDR_Tree::LxSize in X
doubleCTDR_Tree::LySize in Y
doubleCTDR_Tree::LzSize in Z
doubleCTDR_Tree::lowxLowest x point of a cube
doubleCTDR_Tree::lowyLowest y point of a cube
doubleCTDR_Tree::lowzLowest z point of a cube
doubleCTDR_Tree::highxHighest x point of a cube
doubleCTDR_Tree::highyHighest y point of a cube
doubleCTDR_Tree::highzHighest z point of a cube
private:
TTree*TExx component of the field data tree
TTree*TEyy component of the field data tree
TTree*TEzz component of the field data tree
doubleExX field
doubleEyY field
doubleEzZ field
doublex_ExVariable where Tree's data are read
doubley_Ex
doublez_Ex
doublex_Ey
doubley_Ey
doublez_Ey
doublex_Ez
doubley_Ez
doublez_Ez
doubleE_Ex
doubleE_Ey
doubleE_Ez

Class Description

CTDR_Field(TFile &Fichier, int NdivX, int NdivY, int NdivZ,double LX,double LY, double LZ)
 Constructor for the CTDR_Field 
 We retrieve 3 TTree from a file. These data tree contain data of the CTDR_Field inside a logical pixel of
 our detector. The data are obtained from a finite-emelent analysis software, COMSOL multiphysics, and
 we retreive an array of 100*100*100 for nodes inside the model at constant distance. Each data point
 is assigned a unique ID calculated from its position. It allow us to get the memory adress of a CTDR_Field value
 by calculating the ID associated to the position where we need the value. We then retreive the CTDR_Field
 value from the tree using this unique ID pointing to its adress in the tree's memory 
 The data trees are created one time , prior to simulation, using Treereader.c ROOT script .
 This allow to modify the script to use CTDR_Field Data from various sources without touching this code. 
 The Storage of the data in .root files allow to get in memory large amount of data, compressed with
 an efficient method that allow a fast acces to data in the tree. S 
 parameters: (reference to the ROOT file, number of division in X (100), in Y, in Z, size of the model
 in X,Y,Z)
double GetEx()
Data access function for the CTDR_Field components
double GetEy()
Data access function for the CTDR_Field components
double GetEz()
Data access function for the CTDR_Field components
void SetChamp(double xx, double yy, double zz)
This function Put in the public variable Ex,Ey,Ez, the CTDR_Field value for the point xx,yy,zz
void Interpole(double x, double y, double z)
 This function calculate the linear 3D interpolation of the Field at x,y,z, 
   1. We calculate the ID of the 8 surrounding points to (x,y,z)
   2. We get the Field value at he adress corresponding to these ID. 
   3  We compute the interpolation and put the interpolated values in Ex,Ey,Ez  
double GetLz()
Access method for the Model depth in z
CTDR_Field(TFile &Fichier,int NdivX,int NdivY, int NdivZ,double LX, double LY, double LZ)

Author: Mathieu Benoit
Last update: root/html:$Name: $:$Id: THtml.cxx,v 1.124 2006/11/24 16:01:02 brun Exp $


ROOT page - Class index - Class Hierarchy - 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.