MATLAB中使用quad函式進行定積分數值計算
在本教程中,我們將學習如何在MATLAB中使用quad函式計算定積分數值解。但在此之前,讓我們首先了解什麼是定積分數值計算。
什麼是定積分數值計算?
在數學中,確定函式在一定區間上定積分近似值的方法稱為定積分數值計算。其中,定積分指定函式曲線在指定區間內的有符號面積。
當無法使用標準積分技術找到函式的積分時,定積分數值計算對於逼近函式定積分的值非常有用。
定積分數值計算是透過將指定的總區間劃分為較小的子區間來執行的。然後,計算曲線在每個子區間下的面積。最後,將為子區間確定的曲線下所有面積加起來,以獲得曲線下的總面積。
定積分數值計算通常用於工程、物理、數學、經濟學、計算機科學等領域,以確定連續函式在一定範圍內累積效應。
在MATLAB中計算定積分數值解
MATLAB提供多個內建函式來計算函式的定積分數值解。但在本文中,我們將使用'quad'函式來使用MATLAB計算函式的定積分數值解。
在MATLAB中,'quad'函式可用於對僅針對單個變數在一定區間內定義的函式執行定積分數值計算。要執行定積分數值計算,我們使用'quad'函式的以下語法:
I = quad(f, a, b);
這裡,f是待積分的單變數函式,a和b是積分的下限和上限。
現在,讓我們對具有不同指定條件的函式執行定積分數值計算。
(1). 在指定區間上執行定積分數值計算
語法
使用“quad”函式的以下語法來在指定區間上執行函式的定積分數值計算:
I = quad(f, a, b);
其中,f是待積分函式,[a, b]是在其上執行定積分數值計算的指定區間。
考慮以下MATLAB程式碼以瞭解此語法在執行定積分數值計算中的用法。
MATLAB示例 (1)
% Define a function to be integrated f = @(x) sin(x); % Set the upper and lower limits a = 0; b = pi; % Calculate the definite integral I = quad(f, a, b); % Display the result disp('Definite integral of sin (x) from 0 to pi:'); disp(I);
輸出
Definite integral of sin (x) from 0 to pi: 2
解釋
此MATLAB程式計算並顯示函式'sin(x)'的定積分數值解。
在此程式碼中,我們首先定義了一個函式'@(x) sin(x)',這是一個匿名函式,用於計算輸入變數'x'的正弦值。此函式儲存在變數'f'中。接下來,我們指定積分的下限和上限'a和b',在本例中為[0, pi]。
之後,我們使用'quad'函式計算函式'f'在指定區間上的積分值,結果儲存在變數'I'中。最後,我們使用函式'disp'顯示定積分值。
(2). 在指定區間上以指定的容差執行定積分數值計算
語法
使用'quad'函式的以下語法來計算給定函式在指定區間上具有指定容差的定積分數值解:
I = quad(f, a, b, t);
這裡,f是待積分函式,a和b是區間的下限和上限,t是指定容差,表示結果中的誤差。
MATLAB示例 (2)
以下MATLAB程式演示了'quad'函式的程式碼實現,用於在指定區間上以指定的容差執行定積分數值計算。
% MATLAB program to perform definite numerical integration with specified tolerance % Define a function to be integrated f = @(x) sin(x); % Set the upper and lower limits a = 0; b = pi; % Specify the tolerance for the error in the result t = 1e-3; % Calculate the definite integral I = quad(f, a, b, t); % Display the result disp('Definite integral of sin (x) from 0 to pi with specified tolerance:'); disp(I);
輸出
Definite integral of sin (x) from 0 to pi with specified tolerance:
2
解釋
此MATLAB程式的程式碼實現和執行與前一個程式類似。此MATLAB程式碼計算並顯示函式'sin(x)'在指定區間[0, pi]上具有指定容差'1e-3'(表示結果誤差)的定積分數值解。
(3). 啟用跟蹤計算定積分數值解
可以使用以下語法的'quad'函式來執行函式在指定區間上具有指定容差且啟用跟蹤的定積分數值計算:
I = quad(f, a, b, t, trace);
這裡,“trace”選項採用布林值“true”或“false”,以顯示積分計算過程中的除錯資訊。
MATLAB示例 (3)
以下MATLAB程式演示了此'quad'函式語法的實現,用於執行啟用跟蹤的定積分數值計算。
% MATLAB program to perform definite numerical integration with specified tolerance % Define a function to be integrated f = @(x) sin(x); % Set the upper and lower limits a = 0; b = pi; % Specify the tolerance for the error in the result t = 1e-3; % Enable the tracing option trace = true; % Calculate the definite integral I = quad(f, a, b, t, trace); % Display the result disp('Definite integral of sin (x) from 0 to pi with tracing enabled:'); disp(I);
輸出
Definite integral of sin (x) from 0 to pi with tracing enabled: 2.0000
解釋
此MATLAB程式的程式碼實現和執行與之前的程式碼類似。此MATLAB程式計算函式'f'的定積分數值解,具有指定的容差,並跟蹤在計算過程中顯示的除錯資訊。
結論
這就是關於使用'quad'函式在MATLAB中計算定積分數值解的所有內容。在本教程中,我們解釋了定積分數值計算的概念以及'quad'函式的不同語法。此外,我們還包含了一些MATLAB示例程式,以演示如何計算給定函式的定積分數值解。您可以使用不同的數學函式嘗試所有這些MATLAB程式碼。