91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3.13MB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2023-09-09
  • 語言: C/C++
  • 標簽:

資源簡介

將三次樣條函數(shù)封裝成了一個CSpline類。實現(xiàn)了樣條函數(shù)I型邊界條件和II型邊界條件。

資源截圖

代碼片段和文件信息

#include?“StdAfx.h“
#include?“3OrderSpline.h“


CSpline::CSpline(void)
{
}


CSpline::~CSpline(void)
{
}
//================================================================
//?函數(shù)功能:?利用求出的二階導(dǎo)數(shù)求給定點值(結(jié)合Spline1Spline2)
//?輸入?yún)?shù):?*xa?為橫坐標值,ya為縱坐標值,n為點個數(shù),m為二階偏導(dǎo)數(shù)
//????????????x為給定點,y接收插出來的值
//?返回值:???無返回值
//
//?作者:????蔣錦朋???1034378054@qq.com
//?單位:????中國地質(zhì)大學(xué)(武漢)?地球物理與空間信息學(xué)院
//?日期:????2014/12/03
//================================================================
void?CSpline::Splint(double?*xadouble?*yadouble?*mint?ndouble?&xdouble?&y)
{
int?klokhik;
klo=0;?khi=n-1;
double?hhbbaa;

while(khi-klo>1)????????????//??二分法查找x所在區(qū)間段
{
k=(khi+klo)>>1;
if(xa[k]>x)??khi=k;
else?klo=k;
}
hh=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;

}
//===========================================================================
//?函數(shù)功能:?對一系列點求二階偏導(dǎo)數(shù),點橫坐標單調(diào)遞增(I型邊界)(結(jié)合Spline)
//?輸入?yún)?shù):?*xa?為橫坐標值,ya為縱坐標值,n為點個數(shù),m為二階偏導(dǎo)數(shù)(輸出值)
//????????????bound1、bound2為邊界點一階偏導(dǎo)數(shù)
//?返回值:???無返回值
//
//?作者:????蔣錦朋???1034378054@qq.com
//?單位:????中國地質(zhì)大學(xué)(武漢)?地球物理與空間信息學(xué)院
//?日期:????2014/12/03
//===========================================================================
void?CSpline::Spline1(double?*xadouble?*yaint?ndouble?*&mdouble?bound1double?bound2)
{
????????????????????????????????????????//??追趕法解方程求二階偏導(dǎo)數(shù)
double?f1=bound1f2=bound2;

double?*a=new?double[n];????????????????//??a:稀疏矩陣最下邊一串數(shù)
double?*b=new?double[n];????????????????//??b:稀疏矩陣最中間一串數(shù)
double?*c=new?double[n];????????????????//??c:稀疏矩陣最上邊一串數(shù)
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 for(int?i=0;i for(int?i=1;i a[n-1]=1;

c[0]=1;
for(int?i=1;i
for(int?i=0;i f[i]=(ya[i+1]-ya[i])/(xa[i+1]-xa[i]);

d[0]=6*(f[0]-f1)/h[0];
d[n-1]=6*(f2-f[n-2])/h[n-2];

for(int?i=1;i
bt[0]=c[0]/b[0];?????????????????????????????????????????????//??追趕法求解方程
for(int?i=1;i
gm[0]=d[0]/b[0];
for(int?i=1;i<=n-1;i++)??gm[i]=(d[i]-a[i]*gm[i-1])/(b[i]-a[i]*bt[i-1]);

m[n-1]=gm[n-1];
for(int?i=n-2;i>=0;i--)??m[i]=gm[i]-bt[i]*m[i+1];

delete?a;
delete?b;
delete?c;
delete?d;
delete?gm;
delete?bt;
delete?f;
delete?h;
}
//===========================================================================
//?函數(shù)功能:?對一系列點求二階偏導(dǎo)數(shù),點橫坐標單調(diào)遞增(II型邊界)(結(jié)合Spline)
//?輸入?yún)?shù):?*xa?為橫坐標值,ya為縱坐標值,n為點個數(shù),m為二階偏導(dǎo)數(shù)(輸出值)
//????????????bound1、bound2為邊界點二階偏導(dǎo)數(shù),當bound1和bound2不給值時則使用
//????????????默認值0,即自然邊界
//?返回值:???無返回值
//
//?作者:????蔣錦朋???1034378054@qq.com
//?單位:????中國地

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????5266??2014-12-04?16:16??三次樣條函數(shù)插值\3OrderSpline.cpp

?????文件????????329??2014-12-04?16:16??三次樣條函數(shù)插值\3OrderSpline.h

?????文件?????936960??2014-12-04?16:16??三次樣條函數(shù)插值\三次樣條插值.ppt

?????文件????2792008??2014-12-04?16:21??三次樣條函數(shù)插值\三次樣條插值程序原理.docx

?????文件??????16139??2014-12-04?16:22??三次樣條函數(shù)插值\調(diào)用方法.docx

?????目錄??????????0??2014-12-05?23:33??三次樣條函數(shù)插值

-----------?---------??----------?-----??----

??????????????3750702????????????????????6


評論

共有 條評論