作业帮 > 数学 > 作业

matlab已经拟合出一组多项式的系数 怎么求相应的多项式函数对应的某亮点间曲线的长度

来源:学生作业帮 编辑:百度作业网作业帮 分类:数学作业 时间:2024/08/08 14:04:45
matlab已经拟合出一组多项式的系数 怎么求相应的多项式函数对应的某亮点间曲线的长度
已经使用poltfit得到了一组7阶的多项式系数 想要求其中一段曲线的长度
试了很多方法都不行
另外 怎么用这些多项式系数求关于长度的变上限积分 意思就是选择起点以后 如果把终点横坐标看作是变量 怎么去求曲线长度关于这个变量的函数.急用
matlab已经拟合出一组多项式的系数 怎么求相应的多项式函数对应的某亮点间曲线的长度
用折线逼近曲线,只要取的点数够多,应该可以达到要求的精度.
 
示例代码:
% 产生测试数据
x=0:.1:20;
y=sin(x);
 
% 多项式拟合(使用centering and scaling变换改善拟合效果)
n = 7;
[p,S,mu] = polyfit(x,y,n);
y1 = polyval(p,x,[],mu);
 
% 曲线的区间
x1=5;
x2=15;
 
% 使用折线逼近曲线,只要取的点足够多,总能达到要求精度(不考虑数值自身)
N=10; S0=0; e=1e-6;
plot(x,y1);
hold on
h = plot(NaN,NaN,'r.-');
while 1
    x = linspace(x1,x2,N);
    y = polyval(p,x,[],mu);
    set(h,'x',x,'y',y);
    drawnow
    S = sum( sqrt(diff(x).^2 + diff(y).^2) );
    % 若达到精度要求则退出循环
    if abs(S-S0)<=e,break,end
    % 未达到精度要求则增加点的数量
    S0 = S;
    N = N * 2;
end
 
% 输出曲线长度
S


再问: 已经用了别方法的东西拟合了 再问一个问题就是 我们做的建模是一个建造水渠 需要最少的土方量 for i=1:length(xx)-1, for k=1:i, for j=k:i, s(i)=s(i)+len(j); end end end
再答: 上面求曲线长度的方法是有一定通用性的,和用什么方法拟合无关,只要给出一组x并求出对应的y,就可以用上面的方法来求。 你追问的问题说的也太不清楚了吧?只说建造水渠,然后贴那么几行代码,您认为足以把问题描述清楚吗?让我怎么回答你呢?
再问: 百度hi加你了 这字数老超。。谢谢了!
再答: 我没装百度hi,追问有字数限制的话,请另开问题提问吧。 不需要悬赏,向我定向求助即可。