LSpace
class description - source file - inheritance tree
public:
LSpace LSpace()
LSpace LSpace(const int x, const int y, const int z)
LSpace LSpace(const LSpace&)
virtual void ~LSpace()
LParticle* AddParticle(const int i, const int j, const int k)
static TClass* Class()
float Distance(const int x, const int y, const int z) const
float Distance(const int idx)
float GetBias(const int k) const
float* GetBias() const
float GetEnergy(int i, int j, int k) const
float GetEnergyDifference(int i, int j, int k, int di, int dj, int dk) const
Lattice* GetLattice() const
LParticle* GetParticle() const
int GetX() const
int GetY() const
int GetZ() const
virtual TClass* IsA() const
int IsInside(const LParticle* e) const
void SetBias(const int k, const float bias)
void SetBias(const float* bias)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
protected:
int fx
int fy
int fz space size
Lattice* fspace !lattice
LParticle* fe !particle in a space
Float_t* fbias [fz] bias array
This class is for use to montecarlo
simulation of charge particle in a
disordered molecular crystal
with this class we bind together
particle properties and lattice
properties and external field (fbias).
The Lattice class
is for random energy, base cell size, etc.
The particle class knows its position,
time and energy
Lattice coordinates and particle coordinates
are not the same. Lattice coordinates i and j
are periodic. This is done with Lattice class.
This means, that when the
i > fNa then i%=fNa
i < 1 then i%=fNa and i+=fNa
...
where fNa and fNb are lattice sizes.
Logs:
$Log: LSpace.cc,v $
Revision 1.5 2003/06/26 14:46:16 cvs
found a bug in LSpace::GetEnergy() with fbias. Bug successfully resolved :)
Revision 1.4 2003/06/26 13:26:05 cvs
some bugs removed + some test methods implemented in LDisorder
Revision 1.3 2003/06/26 11:24:25 cvs
modified particle moving with LMiki and faster LDisorder operations
Revision 1.2 2003/06/26 09:27:11 cvs
added log fields...
LSpace()
default constructor
~LSpace()
destroy Lattice and particles and free memory space used by fbias
LSpace(const int x,const int y,const int z)
Create space of size x,y and z
including Lattice (of the size 100x100x100) and adds a LParticle
create fbias array for external field energy
fbias is (0..fz+1) 0 is external bias at one side, while fz+1 is
external bias at other side
LParticle* AddParticle(const int i,const int j,const int k)
(re)create particle e at coordinate i,j,k
particle energy is set
int IsInside(const LParticle *e)const
this is test method, which controls if the particle is inside the space
currently the control is done only for z direction
if particle is inside 1 is returned else 0 if is outside
float Distance(const int i,const int j,const int k)const
see Lattice::Distance
float Distance(int idx)
see Lattice::Distance
void SetBias(const int k,const float bias)
SetBias(const float* bias)
copy bias array
GetBias(const int k) const
float GetEnergy(int i,int j,int k) const
see Lattice::GetEnergy - fbias[k]
here is assumed we work with positive particles
float GetEnergyDifference(int i,int j,int k,int di,int dj,int dk) const
see Lattice::GetEnergyDifference + (fbias[k+dk]-fbias[k])
Inline Functions
LParticle* GetParticle() const
Lattice* GetLattice() const
int GetX() const
int GetY() const
int GetZ() const
float* GetBias() const
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
LSpace LSpace(const LSpace&)
Author: Egon Pavlica
Last update: Sat Oct 16 19:10:34 2004
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.