16#define _SPLINE_NATURAL_ 0
17#define _SPLINE_EST_DERIV_ 1
19void array_derive_spline(
const double* x_array,
22 const double* array_splined,
27void array_derive_spline_table_line_to_line(
const double* x_array,
35void array_spline(
double* array,
43void array_spline_table_line_to_line(
const double* x,
51void array_spline_table_columns(
const double* x,
53 const double* y_array,
58void array_spline_table_columns2(
const double* x,
60 const double* y_array,
65void array_spline_table_lines(
const double* x,
67 const double* y_array,
72void array_integrate_all_spline(
const double* array,
80void array_integrate_all_trapzd_or_spline(
const double* array,
83 int index_start_spline,
89void array_integrate_spline_table_line_to_line(
const double* x_array,
97void array_interpolate_spline(
const double* x_array,
100 const double* array_splined,
107void array_search_bisect(
int n_lines,
const double* array,
double c,
int* last_index);
109void array_interpolate_linear(
const double* x_array,
118void array_interpolate_one_growing_closeby(
const double* array,
127void array_interpolate_spline_growing_closeby(
const double* x_array,
130 const double* array_splined,
137void array_interpolate_two(
const double* array_x,
140 const double* array_y,
146void array_interpolate_two_bis(
const double* array_x,
149 const double* array_y,
156void array_interpolate_two_arrays_one_column(
157 const double* array_x,
158 const double* array_y,
164void array_interpolate_cubic_equal(
165 double x0,
double dx,
const double* yarray,
int Nx,
double x,
double* result);
167void array_interpolate_parabola(
double x1,
178void array_smooth(
double* array,
184void array_trapezoidal_mweights(
const double* x,
int n,
double* w_trapz);
186void array_trapezoidal_integral(
const double* integrand,
int n,
const double* w_trapz,
double* I);
188void array_trapezoidal_convolution(
189 const double* integrand1,
const double* integrand2,
int n,
const double* w_trapz,
double* I);