Skip to content
/ KDetSim Public

simulation of signal formation in silicon detectors

Notifications You must be signed in to change notification settings

pitzl/KDetSim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

original code from
kdetsim.org
as of Apr 2017
(thanks to Gregor Kramberger, Jozef Stefan Institute, Ljubljana)

--------------------------------------------------------------------------------
prerequisites:
ROOT installation (ROOT 6  preferred)

--------------------------------------------------------------------------------
compile and link:
make
( creates lib/KDetSim.sl and src/KDetSimDictUX_rdict.pcm )

--------------------------------------------------------------------------------
once, before you try it out
cd ~/ROOT/root/lib
ln -s /home/YOU/KDetSim/src/KDetSimDictUX_rdict.pcm   KDetSimDictUX_rdict.pcm

--------------------------------------------------------------------------------
cd ~/KDetSim/examples
root -l
gSystem->Load( "/home/YOU/KDetSim/lib/KDetSim.sl" );
.x TestPixel_1.C

--------------------------------------------------------------------------------
unit: um
field unit: V/um
signal: one e per track segment

--------------------------------------------------------------------------------
extension (Daniel Pitzl, DESY)
multiple readout nodes: up to 99 (for multi-pixel detector)
	 (multiple Ramo potentials, see TestPixel_2 or TestPixel_9)

--------------------------------------------------------------------------------
if you add a new function (outside an existing class), or a new class,
it must be registered in KDetSim_LinkDef.h

--------------------------------------------------------------------------------
memory leak in KField.cxx

TVector3 * KField::CalFieldXYZ( Float_t x, Float_t y, Float_t z )
{
  Float_t E[4];
  CalFieldXYZ( x, y, z, E ); 
  TVector3 * vec = new TVector3( E[1], E[2], E[3] ); // memory leak
  return vec;
}
should not be used

fixed in KDetector::Drift
      use
      Float_t EE[4];
      Real.CalFieldXYZ( cx, cy, cz, EE ); 
      TVector3 EV( EE[1], EE[2], EE[3] );
      and EE[0] is like E->mag()

About

simulation of signal formation in silicon detectors

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages