24小时热门版块排行榜    

查看: 813  |  回复: 5

huameitang05

银虫 (初入文坛)


[交流] 【求助】急求帮忙解决MATLAB 样条差值求解微分代码出现的问题,使代码正常运行

function y0=hillsplines3(x0,x,y)
if size(x,1)~=1
    x=x';
end
if size(y,1)~=1
    y=y';
end
[a,t]=hillsplinex(x,y);a=a';t=t';
for i=1:length(t)-4
      phi(i)=powerplus3(x0,t(i:i+4));
end
y0=sum(a.*phi);
function [ax,tx]=hillsplinex(t,y)
h=diff(t);delta=diff(y)./h;n=length(h)+1
d1=pchipendpoint(h(1),h(2),delta(1),delta(2));
dn=pchipendpoint(h(n-1),h(n-2),delta(n-1),delta(n-2));
r=[d1;y';dn];
tx=[t(1)-[1:3]*h(1),t,t(length(t)+[1:3])*h(length(h))];
a=zeros(length(tx)-4,length(tx)-4);
for i=1:3
    a(1,i)=depowerplus3(t(1),tx(i:i+4));
end
for i=length(tx)-6:length(tx)-4
    a(length(tx)-4,i)=depowerplus3(t(length(t)),tx(i:i+4));
end
for j=2:length(tx)-5
     for i=j-1:j+1
         a(j,i)=powerplus3(t(j-1),tx(i:i+4));
     end
end
ax=a\r;tx=tx';
    function y=powerplus3(x,t)
        c=t;
        for i=1:5
            c(i)=[];
            beta(i)=24/prod(t(i)-c);
            c=t;
        end
        powerplus=abs(x-t).^3;
        y=0.5*sum(beta.*powerplus);
        function y=depowerplus3(x,t)
            c=t;
        for i=1:5
             c(i)=[];
            beta(i)=24/prod(t(i)-c);
            c=t;
        end
        powerplus=3*sign(x-t).*(x-t).^2;
        y=0.5*sum(beta.*powerplus);
            function d=pchipendpoint(h1,h2,del1,del2)
            d=((2*h1+h2)*del1-h1*del2)/(h1+h2);
            if sign(d)~=sign(del1)
                d=0;
            elseif(sign(del1)~=sign(del2))&(abs(d)>abs(3*del1))
                d=3*del1;
            end

[ Last edited by huameitang05 on 2011-1-4 at 17:21 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijinfeng042

木虫 (小有名气)


★ ★ ★ ★ ★
huameitang05(金币+1):谢谢参与
huameitang05(金币+1):谢谢意见 2011-01-04 19:14:27
xiegangmai(金币+2):辛苦了! 2011-01-07 22:06:47
robert2020(金币+2):辛苦了!最近比较忙,评帖不及时,敬请见谅! 2011-01-11 10:47:08
引用回帖:
Originally posted by huameitang05 at 2011-01-04 17:13:22:
function y0=hillsplines3(x0,x,y)
if size(x,1)~=1
    x=x';
end
if size(y,1)~=1
    y=y';
end
[a,t]=hillsplinex(x,y);a=a';t=t';
for i=1:length(t)-4
      phi(i)=powerplus3(x0,t(i:i+4));
en ...

具体太多代码没看...只是说说思路 离散数据的微分问题
既然你用的是样条插值 那就说说这个方法
数据->csapi(x,y)->fnder(cs)->fnval(pp,x)
2楼2011-01-04 19:06:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shl1025

金虫 (初入文坛)



huameitang05(金币+1):谢谢参与
祝福!程序就是难啊!
3楼2011-01-04 19:31:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ysh2225

木虫 (著名写手)



huameitang05(金币+1):谢谢参与
robert2020(金币-2):为了他人的方便,请勿在求助帖中纯表无意义回复! 2011-01-11 10:47:46

版主扣我BB,这大过年的。。55555

[ Last edited by ysh2225 on 2011-1-11 at 14:46 ]
4楼2011-01-04 19:47:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijinfeng042

木虫 (小有名气)


引用回帖:
Originally posted by huameitang05 at 2011-01-04 17:13:22:
function y0=hillsplines3(x0,x,y)
if size(x,1)~=1
    x=x';
end
if size(y,1)~=1
    y=y';
end
[a,t]=hillsplinex(x,y);a=a';t=t';
for i=1:length(t)-4
      phi(i)=powerplus3(x0,t(i:i+4));
en ...

程序啊 数值计算的书都有啊 需要的话 你搜一下 我发的帖子就有
5楼2011-01-04 19:49:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

honeypirl

铜虫 (初入文坛)



huameitang05(金币+1):谢谢参与
hillsplinex是个函数吗?
6楼2011-02-28 21:36:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 huameitang05 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[文学芳草园] 梦想 +5 myrtle 2026-08-26 8/400 2026-09-02 02:42 by Leogzhya
[基金申请] 面上合作单位盖章 +6 ssyjh 2026-08-27 9/450 2026-09-01 20:01 by huagongfeihu
[基金申请] 学科评审组评审是指会评吗? +4 瞬息宇宙 2026-08-31 4/200 2026-09-01 14:58 by jiaoxg
[基金申请] 麻烦专家们看看评委们的意见(F口面上) +7 gdd2018 2026-08-28 12/600 2026-09-01 08:32 by 尼古拉斯小虫
[基金申请] 国社科又开始会评了,不知道这次命运如何 +7 雨打竹帘 2026-08-30 11/550 2026-08-31 23:16 by hittle2008
[基金申请] 基金未中,这种答复是模板吗? +6 zhaosm1982 2026-08-27 7/350 2026-08-31 21:18 by qdxxmc
[基金申请] 哪位高人中了,把查询到的截图贴出来让我看看,让我长长见识 +6 yuleib84 2026-08-26 7/350 2026-08-31 19:46 by 鱼翔浅底1
[基金申请] 能否申诉? +7 echo8914667 2026-08-30 8/400 2026-08-31 17:00 by yihongxu
[基金申请] 中青基了要发朋友圈吗? +7 349506619 2026-08-28 7/350 2026-08-31 13:39 by 冼亮淀粉酶
[基金申请] 29号明天会评吗 +4 笨笨唐 2026-08-28 4/200 2026-08-31 09:30 by huixian257
[基金申请] 有没有仍没收到信息的 +7 德尚中行 2026-08-27 8/400 2026-08-30 20:52 by purplejack
[基金申请] 我就是申请一个面上项目而已,这评审意见是按照杰青的条件评的吧? +6 gouxfjh 2026-08-28 11/550 2026-08-30 07:57 by gouxfjh
[基金申请] 系统查不到 +11 董八千 2026-08-26 11/550 2026-08-28 18:06 by Leogzhya
[基金申请] 基金系统什么内容也没有 30+4 winsaint 2026-08-27 9/450 2026-08-28 11:06 by maolC
[基金申请] 看板上这么多中的,有点像50人群里49个人都是骗子的那种感觉…… +5 a089 2026-08-26 6/300 2026-08-27 14:05 by jonewore
[基金申请] 为什么 国际(地区)合作与交流项目 没有放榜? 10+3 majunge000 2026-08-26 11/550 2026-08-27 08:42 by 北京莱茵编辑
[基金申请] 我不理解! +15 Edward_pc 2026-08-26 23/1150 2026-08-26 20:34 by zzuzxg
[基金申请] 国合里面能看到了 +7 一怀馨秋 2026-08-26 7/350 2026-08-26 11:23 by zhaosm1982
[基金申请] 项目信息和经费信息在系统里都可以看到了 +6 wittyboy 2026-08-26 14/700 2026-08-26 10:55 by wittyboy
[基金申请] 国合可查了 +3 paperzjh 2026-08-26 3/150 2026-08-26 10:41 by LemmonTr
信息提示
请填处理意见