你好,我遇到了这样的问题:是有关matlab求未知曲线长度的。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了你好,我遇到了这样的问题:是有关matlab求未知曲线长度的。相关的知识,希望对你有一定的参考价值。

根据给我的一些数据,我用三次样条插值法绘出了一条曲线,不知道函数形式,现在想要求出该曲线的长度,手头仅有该曲线的一系列散点值,请问如何做到呢?

曲线段在上的弧长为采用积分
所求弧长s=∫√(1+y'²)dx
matlab求出各点的导数,然后按照上式积分追问

能帮忙给出具体的语句吗?初次接触matlab,会的不多。
例如我现在的图是用plot(xx1,yy1,xx2,yy2)绘出的。

追答

clear
>> x=1:0.1:10;
>> y=rand(1,length(x));
>> dy=diff(y);
>> S=0.1*trapz((1+dy.^2).^0.5)

S =

9.6474

>> plot(x,y,'o-')

追问

你好,非常感谢你的帮助,但是使用上述方法试了一下,结果偏小,以第一段为例(由左下往右上为第一段),显然长度大于500,但是计算结果为485,我猜测是我的程序里没有函数的具体形式。所以给出程序,想请你帮我分析一下:
先定义x1=[……],y1=[……](原始数据)
xx1=0:0.1:478;
yy1=interp1(x1,y1,xx1,'spline');%三次样条插值
plot(xx1,yy1)%第一段的图
dy=diff(yy1);
S=0.1*trapz((1+dy.^2).^0.5)
结果:485.2278

来自:求助得到的回答
参考技术A 既然有了离散点xx1,yy1,那就计算各点之间线段长度,然后累加。

参考资料:自己解答

matlab中有关mean的问题

matlab中
mean(mean(mean(I))) 代表什么意思
I是一幅彩色图像

I是一个m×n×p维的数组,先对p维求均值:mean(A),这是两个行向量,再分别求两个行向量的均值,得到两个数,然后再求均值。
%比较
A=rand(3,2,2)
mean(A)
mean(mean(A))
mean(mean(mean(A)))
参考技术A 图像处理我不会,当mean表示平均值。
如果A是二维的,那么
mean(A)为每列的平均值
mean(mean(A))是每列的平均值的平均值,就是A中所有数的平均值。
至于你上面那个mean(mean(mean(I)))
也许I是一个三维的矩阵数据

以上是关于你好,我遇到了这样的问题:是有关matlab求未知曲线长度的。的主要内容,如果未能解决你的问题,请参考以下文章

请问在MATLAB中,如何计算含有未知数的矩阵?

python_matlab_样条插值求未知曲线的函数解析式

悬赏20!用matlab求直线和椭圆的交点坐标!

求数字信号处理有关车牌识别的MATLAB代码

你好,想向你咨询用matlab求多元二次函数最大值的问题。希望能够得到你的帮助,非常感谢!

matlab中有关mean的问题