CTL  0.6.1
Computed Tomography Library
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
CTL::RadiationEncoder Class Reference
Collaboration diagram for CTL::RadiationEncoder:
Collaboration graph
[legend]

Public Member Functions

 RadiationEncoder (const SimpleCTSystem *system)
 
void assignSystem (const SimpleCTSystem *system)
 
IntervalDataSeries finalSpectrum (uint nbSamples) const
 
IntervalDataSeries finalSpectrum (EnergyRange range, uint nbSamples) const
 
double finalPhotonFlux () const
 
float photonsPerPixelMean () const
 
float photonsPerPixel (uint module) const
 
std::vector< float > photonsPerPixel () const
 
float detectiveQuantumEfficiency () const
 
float detectiveMeanEnergy () const
 
const SimpleCTSystemsystem () const
 

Static Public Member Functions

static SpectralInformation spectralInformation (AcquisitionSetup setup, float energyResolution=0.0f)
 

Private Attributes

const SimpleCTSystem_system
 Pointer to system whose radiation shall be encoded.
 

Member Function Documentation

◆ assignSystem()

void CTL::RadiationEncoder::assignSystem ( const SimpleCTSystem system)

Assignes system to this instance.

This instance does not take ownership of system.

◆ detectiveMeanEnergy()

float CTL::RadiationEncoder::detectiveMeanEnergy ( ) const

Returns the average energy of a photon detected by the detector with respect to the incident radiation spectrum and the spectral response model of the detector.

◆ detectiveQuantumEfficiency()

float CTL::RadiationEncoder::detectiveQuantumEfficiency ( ) const

Returns the average detective quantum efficiency of the detector. This value represents the fraction of incoming photons (distributed w.r.t. to the incident radiation spectrum) that is detected by the detector, considering the spectral response model of the detector.

Thus, the number of detected photons per pixel (averaged over modules) would compute as: photonsPerPixelMean() * detectiveQuantumEfficieny().

◆ finalPhotonFlux()

double CTL::RadiationEncoder::finalPhotonFlux ( ) const

Returns the final photon flux (i.e. photons per cm² in 1m distance) of the system. This considers all properties of the source component as well as all modifications caused by beam modifiers (e.g. filters).

◆ finalSpectrum() [1/2]

IntervalDataSeries CTL::RadiationEncoder::finalSpectrum ( uint  nbSamples) const

Returns the final radiation spectrum of the system. This considers the original spectrum emitted by the source component as well as all modifications caused by beam modifiers (e.g. filters).

The spectrum will by samples with nbSamples points over the interval defined by the energyRange() method of the source component.

◆ finalSpectrum() [2/2]

IntervalDataSeries CTL::RadiationEncoder::finalSpectrum ( EnergyRange  range,
uint  nbSamples 
) const

Returns the final radiation spectrum of the system. This considers the original spectrum emitted by the source component as well as all modifications caused by beam modifiers (e.g. filters).

The spectrum will by samples with nbSamples points equally distributed over the interval specified by range.

◆ photonsPerPixel() [1/2]

float CTL::RadiationEncoder::photonsPerPixel ( uint  module) const

Returns the average number of photons that incide on a detector pixel in module module.

◆ photonsPerPixel() [2/2]

std::vector< float > CTL::RadiationEncoder::photonsPerPixel ( ) const

Returns the average numbers of photons that incide on a detector pixel for all modules.

◆ photonsPerPixelMean()

float CTL::RadiationEncoder::photonsPerPixelMean ( ) const

Returns the number of photons that incide on a detector pixel averaged over all detector modules.


The documentation for this class was generated from the following files: