FlyoDoc_2011 Pisa 2011 by GmP --- 011
Public Member Functions | Protected Attributes

DevFluka Class Reference

#include <devfluka.h>

Inheritance diagram for DevFluka:
DevCrn DevCln Device

List of all members.

Public Member Functions

 DevFluka ()
int Traccia (Particella *)
 ================ T R A C C I A ====================================
virtual void Prgeom ()

Protected Attributes

double Lato_z
double zintgas

Detailed Description

Author:
Giuseppe Pierazzini Decay region with cylindric shape (corona circolare). The "buco", of the Fluka device defines a cylindric space that corresponds to the decay region. The procedure define the path of the beam inside the region before to interact with the gas.

Definition at line 24 of file devfluka.h.


Constructor & Destructor Documentation

DevFluka::DevFluka ( )

The "buco", of the Fluka device defines a cylindric space that corresponds to the decay region. The beam particles entering the region interact with the gas and in Trasport the tracing is stopped with the production of a cluster.

Author:
Giuseppe Pierazzini

Definition at line 23 of file devfluka.cpp.

{
  //tipico device per lo studio delle interazioni co il gasss
  devtype=TypDevGas;
  devclass="Dec_Tubo";
  fun =Gasint;
  Lato_z=2.*Lout.z;
}

Member Function Documentation

int DevFluka::Traccia ( Particella pr) [virtual]

================ T R A C C I A ====================================

Traccia le particelle nell'apparato per un tratto come definito in Get_camm(). Nel tracciare la particella si tiene conto della possibilita' della pair production e del bremsstrhalung.

Reimplemented from Device.

Definition at line 33 of file devfluka.cpp.

{double tratok=0;

  // particella stabile 
  
  if(pr->Get_Ido()==1 && pr->Get_Ctau()==-1.0 &&nowpos==-1)     
  {
  //tracing in the device "buco".....
  // define the interaction point inside the device,..
  // even if the particle is stable. Mark the particle as decay
//    cout<<"\n Ev0 "<< Eventi_Fatti<< " "<<pr->Get_Nome()<<" f "<<pr->Get_Fato() <<" z "<<setw(8)<<pr->X.z<<"  pathmax "<<setw(8)<< pr->path_max
//    <<" done "<<setw(8)<<pr->path_done<<" pathok "<<setw(8)<<pr->pathok<<" last "<<setw(8)<<pr->last_path<<flush;
   
   
    if(pr->path_max==Zona)
    {
   tratok= Pran()* Lato_z;
    pr->path_max=Cface.z+ tratok;
    }
    
    if(pr->pathok > (  pr->path_max- pr->path_done ) )
        {
            pr->pathok= ( pr->path_max-pr->path_done+0.000001 );
           pr->Set_Fato(Decay,-2);   
        
        }

//    cout<<"\n Ev1 "<< Eventi_Fatti<< " "<<pr->Get_Nome()<<" f "<<pr->Get_Fato()<<" z "<<setw(8)<<pr->X.z<<"  pathmax "<<setw(8)<< pr->path_max
//    <<" done "<<setw(8)<<pr->path_done<<" pathok "<<setw(8)<<pr->pathok<<" last "<<setw(8)<<pr->last_path<<flush; 
 
  }
    
int ok = Device::Traccia(pr);

 return ok;
}

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables