1.
首先举一个简单的例子:求y=x^2
,在x为[0,2]上的曲线长度。
%%把下面的复制粘贴进MATLAB
syms
t
x=t;
y=t^2;
df=@(t)(1+4*t.^2).^0.5;
%%MATLAB早期版本不支持@功能
quad(df,0,1)
%%%
答案ans=1.4789
2.
再回答你的问题:
clc
clear
syms
t
x=sin
(t);
y=t^2;
z=log(t+1);
%%%
dL=
sqrt((diff(x)^2+diff(y)^2+diff(z)^2))
求曲线长度公式
%%%
dL=(1/(t
+
1)^2
+
cos(t)^2
+
4*t^2)^(1/2)
即上述公式的数学表达式
df=
@(t)(1./(t
+
1).^2
+
cos(t).^2
+
4*t.^2).^(1/2);
%%
将上述表达式卸载@(t)之后,注意加'.'运算。
quad(df,0,20)
%%%
答案
ans=400.9527
可是,你为什么要到我这个Mathematica专攻的团队来提问呢……那我也给个Mma的解法来消灭这个提问吧:
NIntegrate[Sqrt@Total[D[{Sin@t, t^2, Log@(t + 1)}, t]^2], {t, 0, 20}]
(* 400.953 *)