gstlal_cdf_weighted_chisq_P

gstlal_cdf_weighted_chisq_P

Functions

Types and Values

Description

Functions

GSTLAL_CDF_WEIGHTED_CHISQ_P_TRACE_INITIALIZER

#define GSTLAL_CDF_WEIGHTED_CHISQ_P_TRACE_INITIALIZER ((struct gstlal_cdf_weighted_chisq_P_trace) {0.0, 0, 0, 0.0, 0.0, 0.0, 0})


gstlal_cdf_weighted_chisq_P ()

double
gstlal_cdf_weighted_chisq_P (const double *A,
                             const double *noncent,
                             const int *dof,
                             int N,
                             double var,
                             double c,
                             int lim,
                             double accuracy,
                             struct gstlal_cdf_weighted_chisq_P_trace *trace,
                             int *fault);

Compute the cummulative distribution function for a linear combination of non-central chi-squared random variables.

On failure, the value stored in the location pointed to by fault means: 1 required accuracy NOT achieved, 2 round-off error possibly significant, 3 invalid parameters, 4 unable to locate integration parameters, 5 out of memory,

Parameters

A

coefficient of j-th \chi^{2} variable

 

noncent

non-centrality parameter of the j-th \chi^{2} variable

 

dof

degrees of freedom of the j-th \chi^{2} variable

 

N

number of \chi^{2} variables

 

var

variance of zero-mean normal variable

 

c

point at which distribution is to be evaluated

 

lim

maximum number of terms in integration; < 0 --> no limit

 

accuracy

maximum error

 

trace

if not NULL will contain diagnostic information

 

fault

if not NULL will contain reason for failure

 

Returns

the value of the cumulative distribution function at c or NaN on failure.

Types and Values

struct gstlal_cdf_weighted_chisq_P_trace

struct gstlal_cdf_weighted_chisq_P_trace {
	/* absolute sum */
	double absolute_sum;
	/* total number of integration terms */
	int number_of_terms;
	/* number of integrations */
	int number_of_integrations;
	/* integration interval in final integration */
	double integration_interval;
	/* truncation point in initial integration */
	double truncation_point;
	/* s.d. of initial convergence factor */
	double init_convergence_factor_sd;
	/* cycles to locate integration parameters */
	int cycles;
};