WireCellToolkit
Wire Cell Simulation, Signal Process and Reconstruction Toolki for Liquid Argon Detectors
WireCell::Gen::GausDesc Struct Reference

#include <GaussianDiffusion.h>

Public Member Functions

 GausDesc (double center, double sigma)
 
double distance (double x)
 Return the distance in number of sigma that x is from the center. More...
 
std::pair< double, double > sigma_range (double nsigma=3.0)
 
std::vector< double > sample (double start, double step, int nsamples) const
 
std::vector< double > binint (double start, double step, int nbins) const
 
std::vector< double > weight (double start, double step, int nbins, std::vector< double > pvec) const
 

Public Attributes

double center
 
double sigma
 The Gaussian sigma (half) width. More...
 

Detailed Description

A GausDesc describes a Gaussian distribution.

Two are used by GaussianDiffusion. One describes the transverse dimension along the direction of wire pitch (and for a given wire plane) and one the longitudinal dimension is along the drift direction as measured in time.

Definition at line 21 of file GaussianDiffusion.h.

Constructor & Destructor Documentation

◆ GausDesc()

WireCell::Gen::GausDesc::GausDesc ( double  center,
double  sigma 
)
inline

Definition at line 29 of file GaussianDiffusion.h.

Member Function Documentation

◆ binint()

std::vector< double > Gen::GausDesc::binint ( double  start,
double  step,
int  nbins 
) const

Integrate Gaussian across uniform bins. Result is normalized assuming integral of Gaussian over entire domain is 1.0.

Definition at line 31 of file GaussianDiffusion.cxx.

Here is the caller graph for this function:

◆ distance()

double WireCell::Gen::GausDesc::distance ( double  x)
inline

Return the distance in number of sigma that x is from the center.

Definition at line 35 of file GaussianDiffusion.h.

Here is the caller graph for this function:

◆ sample()

std::vector< double > Gen::GausDesc::sample ( double  start,
double  step,
int  nsamples 
) const

Sample the Gaussian at points on a uniform linear grid.

Definition at line 8 of file GaussianDiffusion.cxx.

Here is the caller graph for this function:

◆ sigma_range()

std::pair<double,double> WireCell::Gen::GausDesc::sigma_range ( double  nsigma = 3.0)
inline

Definition at line 46 of file GaussianDiffusion.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ weight()

std::vector< double > Gen::GausDesc::weight ( double  start,
double  step,
int  nbins,
std::vector< double >  pvec 
) const

Integrate Gaussian diffusion with linear weighting to redistribute the charge to the two neartest impact positions for linear interpolation of the field response

Definition at line 64 of file GaussianDiffusion.cxx.

Here is the caller graph for this function:

Member Data Documentation

◆ center

double WireCell::Gen::GausDesc::center

The absolute location of the mean of the Gaussian as measured relative to some externally defined origin.

Definition at line 25 of file GaussianDiffusion.h.

◆ sigma

double WireCell::Gen::GausDesc::sigma

The Gaussian sigma (half) width.

Definition at line 27 of file GaussianDiffusion.h.


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