Atomic pairs


{
  gROOT->ProcessLine(".x loadlibs.cxx");

  time_t t0 = time(0);

  char path[255];
  sprintf( path, "%s/dirac/dipgen/pro/crsc", home );

  FILE *f = fopen("job","r");
  if (!f || ferror(f) ) {
    fprintf( stderr, "Failed to find job numbern" );
    exit();
  };

  char bufstr[255];
  fgets( bufstr, sizeof(bufstr), f );
  int job = strtol( bufstr, 0, 10 );
  fclose(f);

  fprintf( stderr, "Job %i started...n", job );

  gRandom = new TRandom3( job );

  TGenVertex *vertex = new TGenVertex( 97.6e-4 );

  TF1 *f1 = new TF1( "PlabforCC", 
                     "x^2*exp(-1.1*x)*(1-exp(-0.4066-0.2864*x))",
                     2.5, 10.0 );
  TGenPlabTF1 *Plab = new TGenPlabTF1(f1);

  int nmax = 8;
  TSysIndex *indscheme = new SysSphSym();
  double mpi = 0.13957018;
  TGenQcmsAtom *Qcms = new TGenQcmsAtom( indscheme, nmax, mpi, mpi );
  Qcms->fselect = 0;
  char libstr2[255];
  sprintf( libstr2, "%s/NiD%%i%%i%%i.dat", path );
  InitQcmsAtomSphQbr( Qcms, libstr2 );

  TSysMatrMC *sysMC = new TSysMatrMC( nmax, indscheme ); 
  sprintf( libstr, "%s/NiTOT.DAT", path );
  sprintf( libstr2, "%s/NiEXC.DAT", path );
  sysMC->Open( libstr, libstr2, 0 );

  sprintf( libstr, "%s/NiION.DAT", path );
  sysMC->OpenIonisationCS( libstr, 0 );

  // sysMC->CalcCoef( rho, A,     M_A,                tau_1S, any pos. number )
  sysMC->CalcCoef( 8.91, 58.6934, 2*Qcms->GetMass(1), 3.0e-15, 4.0 );

  sysMC->SetUnrecEvol(0);

  sysMC->CalcMatrix();
  sysMC->SetN(nmax);

  TGenPairAtomic *pair = new TGenPairAtomic( vertex, Plab, Qcms, sysMC );
  pair->fcheckQcms = kFALSE;
  pair->fcheckacceptance = kTRUE;

  TKfactorCounter *kcount = new TKfactorCounter( Qcms->GetMass(1), Qcms->GetMass(2), kSPHERE );
  kcount->fselect = 0;
  kcount->fifPsumtest = kTRUE;
  kcount->SetPsumRange( 3.0, 8.4 );

  pair->SetKfactorCounter(kcount);

  TTree *t = pair->GenXPRandom( 50000 );
  WriteGeantInputTTree( t, "kine.dat" );
  delete t;

  pair->Print();	

  printf( "Time elapsed=%in", time(0)-t0 );

  delete pair;
  delete kcount;
  delete vertex;
  delete Plab;
  delete Qcms;
  delete sysMC;
  delete indscheme;
}


If you have any comments or suggestions about this class contact Mikhail Zhabitsky


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.