(UNKNOWN PRODUCT) » INCLUDE » PDensityMatrix

class PDensityMatrix: public PEmbeddedParticles


 Reads an ASCII-matrix and samples observables
 in 1-, 2- or 3-dimensional space. The sampled
 observables can be written to PParticles via
 batch scripting


Function Members (Methods)

public:
virtual~PDensityMatrix()
voidTObject::AbstractMethod(const char* method) const
Bool_tPEmbeddedParticles::AddParticle(PParticle* particle, int downsc = 1)
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 = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
Bool_tDo(const char* command)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
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
Bool_tGetBin(Double_t* x, Int_t* bins)
Bool_tGetBin(Int_t bin, Int_t* bins)
Double_tGetBinWidth(Int_t dim, Int_t bin)
PParticle**PBulkInterface::GetBranchArray(Int_t i)
Int_t*PBulkInterface::GetBranchNum(Int_t i)
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
Int_t*PBulkInterface::GetKeysBranches()
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
Int_tPBulkInterface::GetPriority()
Int_tGetRandomBin(Int_t num)
Int_t*PBulkInterface::GetSizeBranches()
virtual const char*TObject::GetTitle() const
TTree*PBulkInterface::GetTree()
virtual UInt_tTObject::GetUniqueID() const
Double_tPBulkInterface::GetWeight()
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
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() constMENU
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_tModify(PParticle** stack, int* decay_done, int* num, int stacksize)
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
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)
PDensityMatrix&operator=(const PDensityMatrix&)
PDensityMatrix&operator=(PDensityMatrix&&)
virtual voidTObject::Paint(Option_t* option = "")
PDensityMatrix()
PDensityMatrix(const PDensityMatrix&)
PDensityMatrix(PDensityMatrix&&)
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
Bool_tReadDensityMatrix(const char* filename, Int_t dim, Bool_t use_bin_width, Double_t min_selection, Double_t max_selection)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidPBulkInterface::SetBranchArray(Int_t i, PParticle** my_particle)
voidPBulkInterface::SetBranchNum(Int_t i, Int_t* my_size)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidPBulkInterface::SetKeysBranches(Int_t* my_key_branches)
voidSetMatrix(Int_t i)
static voidTObject::SetObjectStat(Bool_t stat)
voidPBulkInterface::SetPriority(Int_t p)
Bool_tPEmbeddedParticles::SetSampling(Double_t pMin, Double_t pMax, Double_t openingAngle, Double_t theta, Double_t phi, Double_t mMin = 0., Double_t mMax = -0.10000000000000001)
Bool_tPEmbeddedParticles::SetSamplingSector(Double_t pMin, Double_t pMax, Double_t thetaMin, Double_t thetaMax, Double_t phiMin, Double_t phiMax, Double_t phiStartVal, Int_t numParticle, Double_t deltaPhi = 60., Int_t numSectors = 6)
voidPBulkInterface::SetSizeBranches(Int_t* my_size_branches)
voidPBulkInterface::SetTree(TTree* my_tree)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidPBulkInterface::SetWeight(Double_t c)
virtual voidShowMembers(TMemberInspector& insp) const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_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()
private:
Bool_tIsBorder(Int_t bin)

Data Members

public:
static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TObject::EStatusBitsTObject::kHasUUID
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TObject::EStatusBitsTObject::kMustCleanup
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TObject::(anonymous)TObject::kSingleKey
static TObject::(anonymous)TObject::kWriteDelete
static TObject::(anonymous)TObject::kZombie
private:
Double_t*axes[3]
Int_taxes_size[3]
Int_tcurrent_matrix
Int_tdimension
Double_t*matrix[16]
Double_t*matrix_integral[16]
Int_tmatrixsize
PProjector*projector
Double_t*x
Double_t*y
Double_t*z

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

PDensityMatrix()
Bool_t IsBorder(Int_t bin)
checks if there is a grid border between bin-1 and bin
Bool_t GetBin(Double_t* x, Int_t* bins)
Bool_t GetBin(Int_t bin, Int_t* bins)
Double_t GetBinWidth(Int_t dim, Int_t bin)
Int_t GetRandomBin(Int_t num)
Bool_t Do(const char* command)
Bool_t ReadDensityMatrix(const char* filename, Int_t dim, Bool_t use_bin_width, Double_t min_selection, Double_t max_selection)
Reads a density matrix which must be organized in one of the the two following way

Method 1:
x [y] [z] f1 f2 f3 ....

The first column contains the bin center on the x-axis, the following
columns the values of 1 or more matrices. Optionally, for 2- and 3-dimensional
matrixes, the first colum might be followed by the y- and z-value of the bin center

The matrixes support variable bin width, the flag "use_bin_width" should be used
to select of the sample statistics should be corrected by the bin width

Method 2:
"section value 1"
x [y] [z] f0 f1 f2 ....

"section value 2"
x [y] [z] f0 f1 f2 ....


Here, the syntax is like in method 1, but if lines have only one number,
they are considered to be a "selection number". Which of the sections should be read
and used to fill the internal matrix, can be selected by "min_selection" and "max_selection"
The section is used if "min_selection" <= "section value" <= "max_selection"

In your macro, to select one of the matrixes, use
  matrix->SetMatrix(N);
where N corresponds to fN, e.g.
  matrix->SetMatrix(2);
uses the values f2 as defined above
Bool_t Modify(PParticle** stack, int* decay_done, int* num, int stacksize)
 Read the particles from the defined stack and copy this to the official
 particle stream
PDensityMatrix()
void SetMatrix(Int_t i)