HerdSoftware  0.4.0
Public Member Functions | Private Attributes | List of all members
Herd::ScdDigitizationTools::ScdGaussianChargePacket Class Reference

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

#include <algorithms/digitization/ScdDigitizationTools/ScdGaussianChargePacket.h>

Inheritance diagram for Herd::ScdDigitizationTools::ScdGaussianChargePacket:
Herd::ScdDigitizationTools::ScdChargePacket

Public Member Functions

 ScdGaussianChargePacket (Point origin)
 
 ~ScdGaussianChargePacket () override=default
 
void Diffuse (float distance, CarrierType type) override
 
float IntegrateCharge (float xmin, float xmax) const override
 
std::pair< float, float > EffectiveRange () const override
 
void SetEffectiveDiffusionCoefficients (float posCoeff, float negCoeff)
 
- Public Member Functions inherited from Herd::ScdDigitizationTools::ScdChargePacket
 ScdChargePacket (Point origin)
 
virtual ~ScdChargePacket ()=default
 

Private Attributes

float m_posEffDiffCoeff
 
float m_negEffDiffCoeff
 
float m_sigma
 

Additional Inherited Members

- Public Types inherited from Herd::ScdDigitizationTools::ScdChargePacket
enum  CarrierType { CarrierType::Electron, CarrierType::Hole }
 
- Protected Attributes inherited from Herd::ScdDigitizationTools::ScdChargePacket
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

◆ ScdGaussianChargePacket()

Herd::ScdDigitizationTools::ScdGaussianChargePacket::ScdGaussianChargePacket ( Point  origin)
inline

◆ ~ScdGaussianChargePacket()

Herd::ScdDigitizationTools::ScdGaussianChargePacket::~ScdGaussianChargePacket ( )
overridedefault

Member Function Documentation

◆ Diffuse()

void Herd::ScdDigitizationTools::ScdGaussianChargePacket::Diffuse ( float  distance,
CarrierType  type 
)
overridevirtual

◆ EffectiveRange()

std::pair< float, float > Herd::ScdDigitizationTools::ScdGaussianChargePacket::EffectiveRange ( ) const
overridevirtual

◆ IntegrateCharge()

float Herd::ScdDigitizationTools::ScdGaussianChargePacket::IntegrateCharge ( float  xmin,
float  xmax 
) const
overridevirtual

◆ SetEffectiveDiffusionCoefficients()

void Herd::ScdDigitizationTools::ScdGaussianChargePacket::SetEffectiveDiffusionCoefficients ( float  posCoeff,
float  negCoeff 
)
inline

Member Data Documentation

◆ m_negEffDiffCoeff

float Herd::ScdDigitizationTools::ScdGaussianChargePacket::m_negEffDiffCoeff
private

◆ m_posEffDiffCoeff

float Herd::ScdDigitizationTools::ScdGaussianChargePacket::m_posEffDiffCoeff
private

◆ m_sigma

float Herd::ScdDigitizationTools::ScdGaussianChargePacket::m_sigma
private

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