Message: Re: Detecting optical photons Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

None Re: Detecting optical photons 

Forum: Hits, Digitization and Pileup
Re: Question Detecting optical photons (Phil Matvey)
Date: 22 Apr, 2004
From: Vlasios Vasileiou <Vlasios Vasileiou>

Try to specify dielectric_metal with reflectivity 100% to your detector surface (efficiency as an optical property here doesn't matter).

Then in the userSD:ProcessHits after you save all the data you want for the hit kill the particle with

	  aStep->GetTrack()->SetTrackStatus(fStopAndKill);

If you have detector efficiency different than 100% and it is constant you can use a line like

 if (G4UniformRand()< Efficiency ) { detect...}

and then kill

If your efficiency is energy dependent then in userSD:Initialize

create a table with the efficiency data like that

    G4double PhotonEnergy[N]={E1,E2...};
    G4double Efficiency[N]={Eff1,Eff2...};
    EfficiencyTable = new G4MaterialPropertiesTable();
    EfficiencyTable->AddProperty("DetectorEfficiency", PhotonEnergy, Efficiency, N);

and in the userSD:ProcessHits

use

energy=aStep->GetPreStepPoint()->GetTotalEnergy();

if (G4UniformRand()< (EfficiencyTable->GetProperty("DetectorEfficiency")->GetProperty(energy)) ) {

Hope that helps, Vlasios Vasileiou

Vlasios Vasileiou

Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

1 None: Re: Detecting optical photons   (Phil Matvey - 23 Apr, 2004)
 Add Message Add Message
to: "Re: Detecting optical photons"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]