Chi-SquaredFit v0.3.0 Chi2fit

Implements fitting a distribution function to sample data. It minimizes the liklihood function.

Link to this section Summary

Functions

Calculates the alpha-matrix

Calculates the beta-matrix

Calculates the Chi-squared function for a list of observables

Probes the chi-squared surface within a certain range of the parameters

Calculates the gamma-matrix

Link to this section Types

Link to this type chi2()
chi2() :: float
Link to this type model()
model() :: {[float], (x :: float, [parameter :: float] -> float)}
Link to this type observable()
observable() :: {x :: float, y :: float, dy :: float}
Link to this type observables()
observables() :: [observable]
Link to this type params()
params() :: [{float, float}]

Link to this section Functions

Link to this function alpha(arg1, observables, arg2)
alpha({pos_integer, pos_integer}, observables, model) :: float

Calculates the alpha-matrix.

Link to this function beta(index, observables, arg3)
beta({pos_integer, pos_integer}, observables, model) :: float

Calculates the beta-matrix.

Link to this function chi2(observables, fun, penalties \\ fn _ -> 0.0 end, options \\ [])
chi2(observables, (float -> float), (float -> float), Keyword.t) :: float

Calculates the Chi-squared function for a list of observables.

Options

`model` - Required. Determines the contribution to chi-squared taking the asymmetric errors into account.
Vaid values are `:linear`, `:simple`, and `:asimple`
Link to this function chi2fit(observables, model, max \\ 100, error \\ nil, options \\ [debug: false])

Fits observables to a known model.

Returns the found minimum chi-squared value, parameter values, and covariance matrix.

Link to this function chi2probe(observables, parranges, fun_penalties, options)
chi2probe(observables, [float], (... -> any), Keyword.t) :: {chi2 :: float, [float], {[float], [float]}}

Probes the chi-squared surface within a certain range of the parameters.

Returns the minimum chi-squared found and the parameter values.

Link to this function gamma(k, observables, arg)
gamma(pos_integer, observables, model) :: float

Calculates the gamma-matrix.