社区
数据结构与算法
帖子详情
三次样条函数的疑问
yunhaiC QQ654777694
2009-07-24 12:06:11
已知函数y=f(x)的数表如下表所示
x 0 0.15 0.30 0.45 0.60
y 1 0.97800 0.91743 0.83160 0.73529
求满足边界条件
s'(0)=0,s'(0.60)=-0.64879的三次样条函数s(x)
我真是超级郁闷,s'(0)=0,s'(0.60)=-0.64879这两个端点的一阶导数值到底怎么根据上面的数表得来的???????
我实际应用中只有点啊,哪里会像题目一样给出一阶导数值??????
怎么求解啊,怎么来的?
...全文
527
8
打赏
收藏
三次样条函数的疑问
已知函数y=f(x)的数表如下表所示 x 0 0.15 0.30 0.45 0.60 y 1 0.97800 0.91743 0.83160 0.73529 求满足边界条件 s'(0)=0,s'(0.60)=-0.64879的三次样条函数s(x) 我真是超级郁闷,s'(0)=0,s'(0.60)=-0.64879这两个端点的一阶导数值到底怎么根据上面的数表得来的??????? 我实际应用中只有点啊,哪里会像题目一样给出一阶导数值?????? 怎么求解啊,怎么来的?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
donkey301
2009-07-24
打赏
举报
回复
三次样条函数是要有一些边界条件才能确定,要不然这个样条函数就不是唯一的。
你自己的数据只有点值,那么你就需要自己定边界条件,譬如就让s'(0)=0,s'(0.60)=-0.64879,那么可以求出一个样条函数。
但如果定成s'(0)=1,s'(0.60)=2,那求出的样条函数就不一样了。
donkey301
2009-07-24
打赏
举报
回复
你先假设s=ax^3+bx^2+cx+d
一阶导就是3ax^2+2bx+c
yunhaiC QQ654777694
2009-07-24
打赏
举报
回复
[Quote=引用 7 楼 yunhaiC 的回复:]
引用 5 楼 a88015056 的回复:
边界条件不是随便设的。。有条件的。。周期函数的和非周期函数的边界条件有差别。。
一般都是自然边界条件。周期函数的边界条件上有S(FIRST)=S(LAST),S'(FIRST)=S'(LAST),或者S''(FIRST)=S''(LAST),
求解三次样条需要满足的要求为,凑出4N个方程。N为(数据个数-1)。
首先,端点函数值构造出N+1个方程。
其次,函数连续构造出N-1个方程。
再次,函数一阶导数连续构造出N-1个方程。
然后…
[/Quote]
是没有办法用追赶法求出M1与Mn
yunhaiC QQ654777694
2009-07-24
打赏
举报
回复
[Quote=引用 5 楼 a88015056 的回复:]
边界条件不是随便设的。。有条件的。。周期函数的和非周期函数的边界条件有差别。。
一般都是自然边界条件。周期函数的边界条件上有S(FIRST)=S(LAST),S'(FIRST)=S'(LAST),或者S''(FIRST)=S''(LAST),
求解三次样条需要满足的要求为,凑出4N个方程。N为(数据个数-1)。
首先,端点函数值构造出N+1个方程。
其次,函数连续构造出N-1个方程。
再次,函数一阶导数连续构造出N-1个方程。
然后,函数二阶导数连续构造出N-1个…
[/Quote]
就算“非周期函数直接以自然边界条件约束”在用追赶法求解结果的时候是求不出来的,因为那样算的结果会是0,说不明白,因为没办法画图
yunhaiC QQ654777694
2009-07-24
打赏
举报
回复
[Quote=引用 4 楼 donkey301 的回复:]
引用 3 楼 yunhaiC 的回复:
引用 2 楼 donkey301 的回复:
三次样条函数是要有一些边界条件才能确定,要不然这个样条函数就不是唯一的。
你自己的数据只有点值,那么你就需要自己定边界条件,譬如就让s'(0)=0,s'(0.60)=-0.64879,那么可以求出一个样条函数。
但如果定成s'(0)=1,s'(0.60)=2,那求出的样条函数就不一样了。
那就奇怪了,我怎么样设定边界条件?标准是什么?怎么样根据我的边界条件得出的样条函数达到最好的效…
[/Quote]
你的观点我现在保留
a88015056
2009-07-24
打赏
举报
回复
边界条件不是随便设的。。有条件的。。周期函数的和非周期函数的边界条件有差别。。
一般都是自然边界条件。周期函数的边界条件上有S(FIRST)=S(LAST),S'(FIRST)=S'(LAST),或者S''(FIRST)=S''(LAST),
求解三次样条需要满足的要求为,凑出4N个方程。N为(数据个数-1)。
首先,端点函数值构造出N+1个方程。
其次,函数连续构造出N-1个方程。
再次,函数一阶导数连续构造出N-1个方程。
然后,函数二阶导数连续构造出N-1个方程。
累计4N-2个方程。
再加上两个边界条件。
一般由题目中给出,如果题目没有给出,则非周期函数直接以自然边界条件约束。周期函数以周期函数边界条件约束。
得到4N个方程组成的方程组。
donkey301
2009-07-24
打赏
举报
回复
[Quote=引用 3 楼 yunhaiC 的回复:]
引用 2 楼 donkey301 的回复:
三次样条函数是要有一些边界条件才能确定,要不然这个样条函数就不是唯一的。
你自己的数据只有点值,那么你就需要自己定边界条件,譬如就让s'(0)=0,s'(0.60)=-0.64879,那么可以求出一个样条函数。
但如果定成s'(0)=1,s'(0.60)=2,那求出的样条函数就不一样了。
那就奇怪了,我怎么样设定边界条件?标准是什么?怎么样根据我的边界条件得出的样条函数达到最好的效果???
[/Quote]
怎么才算是最好的效果呢?如果有判断效果的判据,你再想如何得到一个好的样条函数。如果没有,那么任意的一个满足条件的样条函数都可以了,也就是说边界条件随便设,只要能得到唯一的一个解就行了。
yunhaiC QQ654777694
2009-07-24
打赏
举报
回复
[Quote=引用 2 楼 donkey301 的回复:]
三次样条函数是要有一些边界条件才能确定,要不然这个样条函数就不是唯一的。
你自己的数据只有点值,那么你就需要自己定边界条件,譬如就让s'(0)=0,s'(0.60)=-0.64879,那么可以求出一个样条函数。
但如果定成s'(0)=1,s'(0.60)=2,那求出的样条函数就不一样了。
[/Quote]
那就奇怪了,我怎么样设定边界条件?标准是什么?怎么样根据我的边界条件得出的样条函数达到最好的效果???
三次
样条
函数
计算(很完整看了就明白)
计算方法与算法分析课程中的一个上机实验,自己看书写很麻烦的,我都已经写好了,直接下载copy交给老师就行啦
图形化界面,matlab
三次
样条
曲线拟合小程序
在绘图区用鼠标点上点,然后在按钮区从左到右分别进行“自然边界条件”“二阶导数边界条件”“一阶导数边界条件”“
三次
样条
曲线拟合1”“
三次
样条
曲线拟合2”。自己编的一个很好玩的GUI程序,在这里给大家分享。对代码有任何
疑问
欢迎私信联系我。如果喜欢的话,别忘了回头评个分哦~
ss.zip_插值法
插值计算的MATLAB代码,可以计算相关的插值
python中的插值 scipy-interp的实现代码
主要介绍了python中的插值 scipy-interp的实现代码,需要的朋友可以参考下
pytorch之Resize()
函数
具体使用详解
主要介绍了pytorch之Resize()
函数
具体使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
数据结构与算法
33,027
社区成员
35,335
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章