matlab對不定積分和定積分的計算

卢宇博發表於2024-08-15

在高等數學中,對這兩種積分的計算是一種常見的考題,而matlab有內建的函式能夠直接幫助我們解決這個計算問題

目錄
  • 一、matlab求解不定積分
    • 1.int函式求解不定積分
    • 2.int函式求解不定積分的常見問題
  • 二、matlab求解定積分
    • 1.求具體數值的定積分
    • 2.求具體帶引數的定積分
    • 3.求瑕積分
  • 三、求數值積分
    • 1.函式控制代碼-function_handle
    • (1)函式控制代碼的建立
    • (2)函式控制代碼的呼叫
    • 2.integral求解數值積分

一、matlab求解不定積分

1.int函式求解不定積分

int(y,x)
第一個引數是待求的函式,第二個引數是對自變數x進行積分(多元函式的自變數不止一個)

syms x
y = x^2 / (1+x^2)
int(y,x)
% x - atan(x)

2.int函式求解不定積分的常見問題

(1)Matlab計算時不會給我們加上常數C
(2)Matlab計算1/x形式的不定積分時不會給我們加上絕對值

二、matlab求解定積分

int(y,x,a,b)
第三與第四個引數是定積分的上下限

1.求具體數值的定積分

syms x
y = sin(x)
int(y,x,0,pi/2) 
% ans=1

2.求具體帶引數的定積分

syms x a b
y = exp(x)
int(y,x,a,b)
% ans=exp(b) - exp(a)

3.求瑕積分

syms x
y = (sin(x))^2 / x^2
b=int(y,x,0,+inf)

三、求數值積分

不是所有的函式都可以利用int函式計算出最後的結果,數值積分可用於求定積分的近似值。在數值分析中,數值積分是計算定積分數值的方法和理論。

1.函式控制代碼-function_handle

函式控制代碼就是把計算的方法儲存到一個變數裡面去進行傳遞

(1)函式控制代碼的建立

y = @(x1,x2) f(x1,x2)
函式控制代碼既然是傳遞計算方法,那麼就要建立一個變數y。
這個y的自變數輸入到@裡的括號中,在後面輸入計算方法,但計算方法都要用點除或者點乘
例如:y = @(x) 1 ./ exp(x)

(2)函式控制代碼的呼叫

函式控制代碼已經將演算法儲存到變數當中了,其呼叫方式與我們創造的函式是一致的,例如

y(1)

ans =

    0.3679

2.integral求解數值積分

integral(y,a,b)
integral函式可以使用數值積分的方法求解函式權柄中從a到b的積分

y = @(x) 1 ./ exp(x) .* log(x+2.*x.^2+sin(x))  % 注意,寫成函式控制代碼時,要用點乘或者點除
integral(y,0,4)

相關文章