使用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);
输出
带有指定容差的 sin(x) 在0到pi的定积分:
2
解释
这个MATLAB程序的代码实现和执行方式与前一个类似。这个MATLAB代码计算并显示了函数’sin(x)’在指定区间[0, pi]
上的定积分,结果的误差指定了容差’1e-3’。
(3). 启用追踪功能计算定积分数值
可以使用以下语法的’quad’函数来执行指定容差下的函数在指定区间上的定积分,并启用追踪功能:
I = quad(f, a, b, t, trace);
这里,’trace’选项接受一个布尔值,可以是’true’或’false’,用于在积分计算过程中显示调试信息。
Matlab示例(3)
以下MATLAB程序演示了使用带有启用跟踪功能的此’squad’函数的语法执行确定性数值积分的实现。
% 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代码。