HerdSoftware  0.1.1
Public Member Functions | Private Attributes | List of all members
Herd::SiliconDetectorDigitizationTools::SDGaussianNonLinearChargePacket Class Reference

Class to describe a charge packet that diffuses with a simple gaussian profile. More...

#include <algorithms/digitization/SiliconDetectorDigitizationTools/SDGaussianNonLinearChargePacket.h>

Inheritance diagram for Herd::SiliconDetectorDigitizationTools::SDGaussianNonLinearChargePacket:
Herd::SiliconDetectorDigitizationTools::SDChargePacket

Public Member Functions

 SDGaussianNonLinearChargePacket (Point origin)
 
virtual ~SDGaussianNonLinearChargePacket ()=default
 
virtual void Diffuse (float distance, CarrierType type) override
 
virtual float IntegrateCharge (float xmin, float xmax) const override
 
virtual std::pair< float, float > EffectiveRange () const override
 
void SetDiffusionParameters (float biasVoltage, float intrinsicVoltage, float siliconDepth)
 
- Public Member Functions inherited from Herd::SiliconDetectorDigitizationTools::SDChargePacket
 SDChargePacket (Point origin)
 
virtual ~SDChargePacket ()=default
 

Private Attributes

float m_biasVoltage
 
float m_intrinsicVoltage
 
float m_siliconDepth
 
float m_sigma
 

Additional Inherited Members

- Public Types inherited from Herd::SiliconDetectorDigitizationTools::SDChargePacket
enum  CarrierType { CarrierType::Electron, CarrierType::Hole }
 
- Protected Attributes inherited from Herd::SiliconDetectorDigitizationTools::SDChargePacket
Point m_origin
 

Detailed Description

Class to describe a charge packet that diffuses with a simple gaussian profile.

The diffusion is assumed to be in 2D, z being the transverse direction to the silicon wafer, and x the longitudinal one.

Constructor & Destructor Documentation

◆ SDGaussianNonLinearChargePacket()

Herd::SiliconDetectorDigitizationTools::SDGaussianNonLinearChargePacket::SDGaussianNonLinearChargePacket ( Point  origin)
inline

◆ ~SDGaussianNonLinearChargePacket()

virtual Herd::SiliconDetectorDigitizationTools::SDGaussianNonLinearChargePacket::~SDGaussianNonLinearChargePacket ( )
virtualdefault

Member Function Documentation

◆ Diffuse()

void Herd::SiliconDetectorDigitizationTools::SDGaussianNonLinearChargePacket::Diffuse ( float  distance,
CarrierType  type 
)
overridevirtual

◆ EffectiveRange()

std::pair< float, float > Herd::SiliconDetectorDigitizationTools::SDGaussianNonLinearChargePacket::EffectiveRange ( ) const
overridevirtual

◆ IntegrateCharge()

float Herd::SiliconDetectorDigitizationTools::SDGaussianNonLinearChargePacket::IntegrateCharge ( float  xmin,
float  xmax 
) const
overridevirtual

◆ SetDiffusionParameters()

void Herd::SiliconDetectorDigitizationTools::SDGaussianNonLinearChargePacket::SetDiffusionParameters ( float  biasVoltage,
float  intrinsicVoltage,
float  siliconDepth 
)

Member Data Documentation

◆ m_biasVoltage

float Herd::SiliconDetectorDigitizationTools::SDGaussianNonLinearChargePacket::m_biasVoltage
private

◆ m_intrinsicVoltage

float Herd::SiliconDetectorDigitizationTools::SDGaussianNonLinearChargePacket::m_intrinsicVoltage
private

◆ m_sigma

float Herd::SiliconDetectorDigitizationTools::SDGaussianNonLinearChargePacket::m_sigma
private

◆ m_siliconDepth

float Herd::SiliconDetectorDigitizationTools::SDGaussianNonLinearChargePacket::m_siliconDepth
private

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