關於MATLAB中simulink的求定積分問題,求大神幫忙

2021-03-21 23:32:21 字數 3699 閱讀 1463

1樓:匿名使用者

關於求函式:

exp(-x.^2)

在0到1上的積分,可以這樣子:

i=quadl(@(x)exp(-x.^2),0,1)如果你的matlab不支援匿名函式的話,可以用行內函數:

i=quadl(inline('exp(-x.^2)'),0,1)兩種方法都會得到:

i=0.7468

當然如果可以建議還是使用匿名函式。

關於simulink的使用,建議參考http://****wochengzhang.

這是很簡單的一個**。

希望對你有所幫助。若果有需求,歡迎追問。

matlab求定積分式子!!求大神!

2樓:大家一起分享

符號計算

>>syms x

a=int(寫上定積分函式(假設是關於x的函式), 變數x, 積分下界, 積分上界) ;

>>vpa(a)

3樓:初懷雨步申

matlab說他也不會做。如果你只是想求解這個積分的值,可按如下方法做

1.首先看看被積函式是專什麼形態屬,有沒有奇點ezplot('(x^2*cos(x)^2+1)^(1/2)');

你這個函式是連續的,所以可積,然後

2.用簡單的數值積分

step

= 1e-2;x=

0:step:1;

y= (x.^2.*cos(x).^2

+1).^(1/2);

step*sum(y)

%積分值

求助利用matlab進行復雜函式的定積分方法! 詳情見補充,多謝了!

4樓:菰曉月寒

只要不是不定積分要求得到積分後的表示式,能實際計算出結果的積分就是定積分了。定積分不就是求函式在某區間或領域下的面積或體積麼,所以可以用梯形法之類的方法來近似求解這個面積。比如說步長為h,那麼求出f(0),f(h),f(2h),......

f(nh),

則f(x)在0~nh的定積分得到的面積就是h*(f(0)+f(h)+...+f(nh))。

matlab給出的求解積分的函式指令為intf=int(f,v,a,b),表示對f求指定變數v的定積分,積分割槽間為[a,b]。當v預設時,由symvar確認變數,當a,b預設時,則是求f指定變數的不定積分。

請問如何用simulink搭建求x*ln(1+x)的定積分,積分範圍是0到1?謝謝 5

5樓:匿名使用者

在simulink中搭建沒有固定的模組,不過自己可以通過matlab function 或者s-function自己編寫程式在嵌入進去。就ok了,

function y=definite(x)

y=@(x)x.*log(1+x);。

6樓:匿名使用者

用積分模組 設定時間1作為積分範圍

matlab在做simulink**時出現問題,求大神幫忙

關於matlab求定積分的問題,已知積分結果,求積分的上界 5

7樓:我愛郝靜怡

我也想知道怎麼求 現在跟你遇到了同樣的情況 知道下界,被積函式和積分結果,需要求積分上界引數值

8樓:流浪的醉人

可以用matlab的函式 int(),具體用法請自己查詢。

用 y=int(f,a,b)%f為函式,a、b為上下界,在此下界已知。可以求得f的定積分表示式,該定積分表示式裡面上界a為未知參量。

令這個 表示式=已知積分值,然後solve這個方程即可得到a

9樓:黃玉花不巳

matlab找不到explicit表示式,應該最多隻能求數值近似。可以用

double(int(sqrt(1+(x*cos(x))^2),0,1))

或者integral(@(x)

sqrt(1+(x.*cos(x)).^2),0,1)

關於用matlab求定積分的問題

10樓:

從理論上這個解是有無窮多的。

比如可以把y = g(x)構造成很多個衝擊函式的和,這樣就有無窮多很多分解方式。

所以 現在約束條件嚴重不足。

matlab中simulink中的積分模組啥樣子 30

11樓:楊亮亮天飛

saturation是用來限幅的,因為控制器本身不可能有那麼大的控制量,同樣,某一個通道的控制發散會使得整個系統發散。積分是帶一個1/s,微分是s,這些都是自控原理裡面的

matlab中求定積分的運算

12樓:

int(函式f(x),a,b) 計算函式f(x)在區間[a,b]的定積分

quadl:該函式使用了稱為洛巴託求積(lobatto quadrature)的演算法,對於高精度和光滑函式效率更高

i=quadi(func,a,b,tol);

func是被積函式,a,b是積分限,tot是期望的絕對誤差(如果不提供,預設為1e-6)

eps是一個浮點誤差值,如果不帶引數,它的值為1到下一個能表示的比1大的浮點數之間差距的,它用來表示浮點相對誤差精度

理解為機器最小數即可

i=quadl(@(t)(t-3*t.^2+2*t.^3).^(-1/3),eps,1/2)表示積分限在[0,0.5]

13樓:白楊龍

int是解析解,用的牛頓萊布尼茨公式求定積分,亦即先求出不定積分,再用上下限代入,所得解為精確解,當然前提式子有能積分,有些式子沒有不定積分這個知道吧。

quadl是數值解,基本思想按照積分原始定義來求解,亦即將積分割槽域(上下限間)無限分割(程式中體現為分割成很多段)求各微元面積(quadl求一個個小梯形面積)

eps是很接近0的正數,因為0代入t-3*t.^2+2*t.^3).^(-1/3)會出錯,用極小數替代

數值解很多方法很多函式像ode23.ode45

14樓:匿名使用者

是matlab裡兩種不同的積分函式,你可以檢視一樣的應的函式說明。

15樓:孟尹宗政綺煙

^>>syms

x>>int((-0.0342)*x^6-0.016*x^5+1.

3545*x^4+0.4611*x^3-16.9306*x^2-2.

9858*x+33.9888,x,-3.1416,3.

1416)

ans=

-0.1235977977

16樓:桓富貴祖妝

matlab說他也不會做。如果你只是想求解這個積分的值,可按如下方法做

1.首先看看被積函式是什麼形態,有沒有奇點ezplot('(x^2*cos(x)^2+1)^(1/2)');

你這個函式是連續的,所以可積,然後

2.用簡單的數值積分

step

= 1e-2;x=

0:step:1;

y= (x.^2.*cos(x).^2

+1).^(1/2);

step*sum(y)

%積分值

MATLAB中MAX的用法,matlab中max函式的用法問題

a是cell陣列,max函式不支援對cell陣列直接操作。可以這樣 aa cell2mat a max aa 各列最大值 max aa aa中所有元素最大值 max在數學中表示最大的集合元素,即最大值。min表示最小的意思。a 你這個地方a不是一個矩陣應該是 a 1 2 3 3 4 5 6 7 8 ...

matlab中怎麼產生Matlab中怎麼產生1到1之間的隨機數

x 2 rand m,n 0.5 產生m n個數,他們構成一個矩陣。一樓正解 例如 x 2 rand 5,5 0.5 x 0.7867 0.7374 0.1372 0.7279 0.7061 0.9238 0.8311 0.8213 0.7386 0.2441 0.9907 0.2004 0.636...

如何在matlab中呼叫matlab中已有的函式

呼叫函式檔案 myfile.m clear clcfor t 1 10 y mylfg t end 自定義函式檔案 mylfg.m function y mylfg x 注意 函式名 mylfg 必須與檔名 mylfg.m 一致 y x 1 3 注 這種方法要求自定義函式必須單獨寫一個m檔案,不能與...