allpix::ImpactIonization

Wrapper class and factory for impact ionization models. More…

#include <ImpactIonization.hpp>

Public Functions

Name
ImpactIonization() =default
ImpactIonization(const Configuration & config)
template <class… ARGS>
double
operator()(ARGS &&… args) const
template <class T >
bool
is() const
Helper method to determine if this model is of a given type The template parameter needs to be specified speicifcally, i.e. if(model->is()) { }.

Detailed Description

class allpix::ImpactIonization;

Wrapper class and factory for impact ionization models.

This class allows to store impact ionization objects independently of the model chosen and simplifies access to the function call operator. The constructor acts as factory, generating model objects from the model name provided, e.g. from a configuration file.

Public Functions Documentation

function ImpactIonization

ImpactIonization() =default

Default constructor

function ImpactIonization

inline explicit ImpactIonization(
    const Configuration & config
)

Parameters:

ImpactIonization constructor

function operator()

template <class... ARGS>
inline double operator()(
    ARGS &&... args
) const

Return: Gain

Function call operator forwarded to the impact ionization model

function is

template <class T >
inline bool is() const

Helper method to determine if this model is of a given type The template parameter needs to be specified speicifcally, i.e. if(model->is()) { }.

Return: Boolean indication whether this model is of the given type or not


Updated on 2024-12-13 at 08:31:36 +0000