Blame multifit/test_estimator.c

Packit 67cb25
void
Packit 67cb25
test_estimator ()
Packit 67cb25
{
Packit 67cb25
  gsl_vector_view c;
Packit 67cb25
  gsl_matrix_view cov;
Packit 67cb25
  gsl_vector_view x;
Packit 67cb25
  double y, y_err;
Packit 67cb25
  
Packit 67cb25
  double cov_ij[25] = {    
Packit 67cb25
    4.271520, -0.526675,  0.957930,  0.267750, -0.103610,
Packit 67cb25
    -0.526675,  5.701680, -0.098080,  0.641845,  0.429780,
Packit 67cb25
    0.957930, -0.098080,  4.584790,  0.375865,  1.510810,
Packit 67cb25
    0.267750,  0.641845,  0.375865,  4.422720,  0.392210,
Packit 67cb25
  -0.103610,  0.429780,  1.510810,  0.392210,  5.782750
Packit 67cb25
Packit 67cb25
 };
Packit 67cb25
    
Packit 67cb25
  double c_i[5] = {  
Packit 67cb25
    -0.627020,   0.848674,   0.216877,  -0.057883,   0.596668
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
  double x_i[5] = {
Packit 67cb25
    0.99932,   0.23858,   0.19797,   1.44008,  -0.15335
Packit 67cb25
  };
Packit 67cb25
Packit 67cb25
  double y_expected = -5.56037032230000e-01;
Packit 67cb25
  double yerr_expected = 3.91891123349318e+00;
Packit 67cb25
Packit 67cb25
  cov = gsl_matrix_view_array(cov_ij, 5, 5);
Packit 67cb25
  c = gsl_vector_view_array(c_i, 5);
Packit 67cb25
  x = gsl_vector_view_array(x_i, 5);
Packit 67cb25
Packit 67cb25
  gsl_multifit_linear_est(&x.vector , &c.vector, &cov.matrix, &y, &y_err);
Packit 67cb25
Packit 67cb25
  gsl_test_rel (y, y_expected, 256*GSL_DBL_EPSILON, "gsl_multifit_linear_est y");
Packit 67cb25
  gsl_test_rel (y_err, yerr_expected, 256*GSL_DBL_EPSILON, "gsl_multifit_linear_est yerr");
Packit 67cb25
}