三次参数样条曲线拟合(任意控制点) 您所在的位置:网站首页 合3的数有几个 三次参数样条曲线拟合(任意控制点)

三次参数样条曲线拟合(任意控制点)

2024-07-08 20:26| 来源: 网络整理| 查看: 265

      三次参数样条曲线拟合,主要是为解决三次样条函数不能解决的问题而提出的。三次样条函数要求x满足单调递增,即x序列满足x0x) khi=k; else klo=k; } hh=abs(xa[khi]-xa[klo]); aa=(xa[khi]-x)/hh; bb=(x-xa[klo])/hh; y=aa*ya[klo]+bb*ya[khi]+((aa*aa*aa-aa)*m[klo]+(bb*bb*bb-bb)*m[khi])*hh*hh/6.0; } //=========================================================================== // 函数功能: 对一系列点求二阶偏导数,点横坐标单调递增(I型边界)(结合Spline) // 输入参数: *xa 为横坐标值,ya为纵坐标值,n为点个数,m为二阶偏导数(输出值) // bound1、bound2为边界点一阶偏导数 // 返回值: 无返回值 // // 作者: 蒋锦朋 [email protected] // 单位: 中国地质大学(武汉) 地球物理与空间信息学院 // 日期: 2014/12/03 //=========================================================================== void CSpline::Spline1(double *xa,double *ya,int n,double *&m,double bound1,double bound2) { // 追赶法解方程求二阶偏导数 double f1=bound1,f2=bound2; double *a=new double[n]; // a:稀疏矩阵最下边一串数 double *b=new double[n]; // b:稀疏矩阵最中间一串数 double *c=new double[n]; // c:稀疏矩阵最上边一串数 double *d=new double[n]; double *f=new double[n]; double *bt=new double[n]; double *gm=new double[n]; double *h=new double[n]; m=new double[n]; for(int i=0;i



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有