kml_?_interp_init

初始化插值对象interp。数据(xa, ya)中,xarr是大小为xsize的数组,yarr是函数结果数组,大小为xsize。插值对象(kml_float_interp,kml_double_interp)不保存xarr,yarr的数据数组,它只存有从数据中计算出的静态状态。xarr数据数组被认为是严格升序排列的。

接口定义

int kml_float_interp_init(kml_float_interp *interp, const float xarr[], const float yarr[], const size_t size)

int kml_double_interp_init(kml_double_interp *interp, const double x_array[], const double y_array[], size_t size);

参数

参数名

类型

描述

输入/输出

interp

kml_float_interp*, kml_double_interp*

插值对象指针。

输出

xarr

float, double

存有x值的数组。

输入

yarr

float, double

存有y值的数组。

输入

size

size_t

x数组长度。

输入

依赖

#include "kipl.h"

示例

const size_t xSize = 4;
float xArr[4] = {1,1.33,1.67,2};
float* yArr = (float*)malloc(xSize * sizeof(float));
kml_float_interp *interp = kml_float_interp_alloc(kml_float_interp_cspline, xSize);
kml_float_interp_init(interp, xSize, xArr, yArr);