/************************************************************************** * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * * * * Author: The ALICE Off-line Project. * * Contributors are mentioned in the code where appropriate. * * * * Permission to use, copy, modify and distribute this software and its * * documentation strictly for non-commercial purposes is hereby granted * * without fee, provided that the above copyright notice appears in all * * copies and that both the copyright notice and this permission notice * * appear in the supporting documentation. The authors make no claims * * about the suitability of this software for any purpose. It is * * provided "as is" without express or implied warranty. * **************************************************************************/ /* $Id$ */ // As AliGenScan, generation of particles on a 3-dim grid // but here double hits with a predefined distance are generated. // The second particle is generated at a constant distance but with random phi. // Generator can be used to evaluate double hit resolutions. // Author: andreas.morsch@cern.ch #include "AliGenDoubleScan.h" #include "AliRun.h" ClassImp(AliGenDoubleScan) AliGenDoubleScan::AliGenDoubleScan() :AliGenScan(-1), fDistance(0.) { // Default constructor } AliGenDoubleScan::AliGenDoubleScan(Int_t npart) :AliGenScan(npart), fDistance(0.) { // Constructor fName = "Double Scan"; fTitle= "Particle Generator for two correlated particles on a grid"; } //____________________________________________________________ AliGenDoubleScan::~AliGenDoubleScan() { // Destructor } //____________________________________________________________ void AliGenDoubleScan::Generate() { // // Generate one trigger // Float_t polar[3]= {0,0,0}; // Float_t origin[3]; Float_t p[3]; Int_t nt; Float_t pmom, theta, phi; // Float_t random[6]; Float_t dx,dy,dz; // if (fNx > 0) { dx=(fXCmax-fXCmin)/fNx; } else { dx=1e10; } if (fNy > 0) { dy=(fYCmax-fYCmin)/fNy; } else { dy=1e10; } if (fNz > 0) { dz=(fZmax-fZmin)/fNz; } else { dz=1e10; } for (Int_t ix=0; ix