DDASToys for NSCLDAQ  6.2-000
List of all members
ddastoys::analyticfit::SerialFitEngine2 Class Reference

Fit engine for analytic double pulse fits. More...

#include <jacobian_analytic.h>

Inheritance diagram for ddastoys::analyticfit::SerialFitEngine2:
Inheritance graph
[legend]
Collaboration diagram for ddastoys::analyticfit::SerialFitEngine2:
Collaboration graph
[legend]

Public Member Functions

 SerialFitEngine2 (std::vector< std::pair< uint16_t, uint16_t >> &data)
 Constructor. More...
 
virtual void jacobian (const gsl_vector *p, gsl_matrix *J)
 Compute the Jacobian matrix. More...
 
virtual void residuals (const gsl_vector *p, gsl_vector *r)
 Compute the residual vector. More...
 
- Public Member Functions inherited from ddastoys::CFitEngine
 CFitEngine (std::vector< std::pair< uint16_t, uint16_t >> &data)
 Constructor. More...
 
virtual ~CFitEngine ()
 Destructor.
 

Additional Inherited Members

- Protected Attributes inherited from ddastoys::CFitEngine
std::vector< uint16_t > x
 Trace x coordinate vector.
 
std::vector< uint16_t > y
 Trace y coordinate vector.
 

Detailed Description

Fit engine for analytic double pulse fits.

The concept is that each GSL lmfitter can supply a pair of methods: One that computes a vector of residuals and one that computes a Jacobian matrix of partial derivatives. At the implementation level we have two types of fits we need done: Single pulse fits and double pulse fits (the engines with names ending in 1 or 2). For each fit type we have two fit engines: 1) Serial computation (the engines with names starting with Serial) 2) GPU accelerated (the engines with names starting with Cuda). Finally a fit factory can generate the appropriate fit engine as desired by the actual fit.

Constructor & Destructor Documentation

◆ SerialFitEngine2()

ddastoys::analyticfit::SerialFitEngine2::SerialFitEngine2 ( std::vector< std::pair< uint16_t, uint16_t >> &  data)

Constructor.

Parameters
dataThe trace.

Delegates to base class construction.

Member Function Documentation

◆ jacobian()

void ddastoys::analyticfit::SerialFitEngine2::jacobian ( const gsl_vector *  p,
gsl_matrix *  J 
)
virtual

Compute the Jacobian matrix.

Parameters
[in]pThe current parameters.
[out]JThe Jacobian matrix to fill in.

Compute the Jacobian matrix of the fit with respect to current values of the fit parameters.

Implements ddastoys::CFitEngine.

◆ residuals()

void ddastoys::analyticfit::SerialFitEngine2::residuals ( const gsl_vector *  p,
gsl_vector *  r 
)
virtual

Compute the residual vector.

Parameters
[in]pCurrent parameter set.
[out]rPointwise residuals.

Implements ddastoys::CFitEngine.


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