關於matlab的積分問題,積不出來怎麼辦

2021-03-10 16:07:41 字數 975 閱讀 6109

1樓:匿名使用者

像這復類曲線積分的表

達式很難求製出解析表示式的,沒有辦法。

從計算定積分的角度來說,你沒必要過於糾結解析表示式,其實只要知道這是一個函式,只要給定了自變數,都能夠求出函式值來,就夠了。例如,按照你的要求,上限是一個具體的數例如8133.2,但下限是a,那麼我們就可以定義一個匿名函式j(a):

syms x;

y=3251*exp(-(x-8555)^2/2550^2)+378.4*exp(-(x-1.178e+004)^2/1281^2)...

+ 5.157e+017*exp(-(x-5.89e+005)^2/1.007e+005^2);

b = 8133.2;

j = @(a) quadl( @(t) subs(sqrt((diff(y,x))^2+1),x,t), a, b);

然後,只要你指定a的值,就可以計算出定積分的結果來,例如

>> j(7500)

ans =

842.4111

2樓:匿名使用者

你的積分表示式

復太複雜了,制sqrt(diff(y,x)^2+1)的符號表示式有很多項,非線性特別強,matlab無法求出的符號解,在這種情況下,只能先求出sqrt(diff(y,x)^2+1)的符號表示式,然後轉換為函式表示式,再用數值解法求解。

例如,我修改建議如下:

syms x;

y=3251*exp(-(x-8555)^2/2550^2)+378.4*exp(-(x-1.178e+004)^2/1281^2)+ 5.

157e+017*exp(-(x-5.89e+005)^2/1.007e+005^2);

y1=sqrt((diff(y,x))^2+1)y2=inline(y1)

quad(y2,0,1)

再0-1內的定積分結果:

ans =

1.0035

希望對你有幫組

求解關於二重積分的問題,求解關於一個二重積分的問題

是你自己想錯抄而且寫錯了襲 第二個圖形實際上bai是 x2 y a 2 a2即 y a 2 a2 x2然後得到開根號duy a a2 x2 難道a a2 x2 小於zhi0麼?或者你就想dao象第二個圖是 第一個向上移動了a 那麼第一個的式子加上a即可 解二次方程對平方項開根號時 時刻都要有正負兩個...

關於微積分的問題

1 來 d 就是表示一種運演算法則。準確來自 說應該是d dx 表示對x進行求導。你說的delta是用希臘字母表示的那個東西,那個是變化量。你說的變成dy通常是這樣理解的,比如dy dx f x 那麼f x 就是導數啦。可以寫成dy f x dx。這時候dy表示微分 可以理解成一個小微元,微小變化 ...

matlab求積分的數值解,MATLAB求積分的數值解

可以積分出來的,只是好像你的r和 怎麼是反的 clear all clc syms x r 0.3136 beta 0.579 y r 2 pi beta 0.5 x 1.5 exp x r 2 2 beta x s int x exp 3 x y,x,0,inf s double s s 0.08...