亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> MATLAB
MATLAB - 集成

集成处理两种本质上不同类型的问题。

定积分可用于求面积、体积、重心、惯性矩、力所做的功以及许多其他应用。

使用 MATLAB 求不定积分

根据定义,如果函数 f(x) 的导数是 f'(x),那么我们说 f'(x) 对 x 的不定积分是 f(x)。例如,由于 x 2 的导数(相对于 x) 是 2x,我们可以说 2x 的不定积分是 x 2 .

在符号中 -

f'(x 2 ) =2x ,因此,

∫ 2xdx =x 2 .

不定积分不是唯一的,因为 x 2 的导数 + c,对于常数 c 的任何值,也将是 2x。

这用符号表示为 -

∫ 2xdx =x 2 + c .

其中,c称为“任意常数”。

MATLAB 提供了一个 int 用于计算表达式积分的命令。为了导出函数的不定积分的表达式,我们写 -

int(f);

例如,从我们之前的例子中 -

syms x int(2*x)

MATLAB 执行上述语句并返回以下结果 -

ans =x^2

示例 1

在这个例子中,让我们找出一些常用表达式的积分。创建一个脚本文件并在其中键入以下代码 -

syms x nint(sym(x^n))f ='sin(n*t)'int(sym(f))syms a tint(a*cos(pi*t)) int(a^x)

当您运行该文件时,它会显示以下结果 -

ans =分段([n ==-1, log(x)], [n ~=-1, x^(n + 1)/(n + 1)])f =sin(n*t)ans =-cos(n*t)/n ans =(a*sin(pi*t))/pi ans =a^x/log(a)

示例 2

创建一个脚本文件并在其中键入以下代码 -

syms x nint(cos(x))int(exp(x))int(log(x))int(x^-1)int(x^5*cos(5*x) ))漂亮(int(x^5*cos(5*x)))int(x^-5)int(sec(x)^2)pretty(int(1 - 10*x + 9 * x^2) )int((3 + 5*x -6*x^2 - 7*x^3)/2*x^2)pretty(int((3 + 5*x -6*x^2 - 7*x^ 3)/2*x^2))

请注意,漂亮 函数以更易读的格式返回表达式。

当您运行该文件时,它会显示以下结果 -

ans =sin(x) ans =exp(x) ans =x*(log(x) - 1) ans =log(x) ans =(24*cos(5*x) )/3125 + (24*x*sin(5*x))/625 - (12*x^2*cos(5*x))/125 + (x^4*cos(5*x))/5 - (4*x^3*sin(5*x))/25 + (x^5*sin(5*x))/5 2 4 24 cos(5 x) 24 x sin(5 x) 12 x cos (5 x) x cos(5 x) ----------- + ------------- - -------------- + ------------ 3125 625 125 5 3 5 4 x sin(5 x) x sin(5 x) ------------- + ---- ------- 25 5 ans =-1/(4*x^4) ans =tan(x) 2 x (3 x - 5 x + 1) ans =- (7*x^6)/12 - (3*x^5)/5 + (5*x^4)/8 + x^3/2 6 5 4 3 7 x 3 x 5 xx - ---- - ---- + --- - + -- 12 5 8 2

使用 MATLAB 求定积分

根据定义,定积分基本上是和的极限。我们使用定积分来求面积,例如曲线和 x 轴之间的面积以及两条曲线之间的面积。定积分也可用于其他情况,其中所需的数量可以表示为和的极限。

int 函数可用于通过传递您要计算积分的限制来进行定积分。

计算

我们写,

int(x, a, b)

例如,要计算的值 我们写 -

int(x, 4, 9)

MATLAB 执行上述语句并返回以下结果 -

ans =65/2

以下是上述计算的 Octave 等效项 -

pkg 加载符号符号x =sym("x");f =x;c =[1, 0];integral =polyint(c);a =polyval(integral, 9) - polyval(积分, 4);display('Area:'), disp(double(a));

Octave 执行代码并返回以下结果 -

面积:32.500

可以使用 Octave 提供的 quad() 函数给出替代解决方案,如下所示 -

pkg 加载符号符号f =inline("x");[a, ierror, nfneval] =quad(f, 4, 9);display('Area:'), disp(double(a) ));

Octave 执行代码并返回以下结果 -

面积:32.500

示例 1

让我们计算 x 轴和曲线 y =x 3 之间包围的面积 −2x+5 和纵坐标 x =1 和 x =2。

所需面积由 -

给出

创建一个脚本文件并输入以下代码 -

f =x^3 - 2*x +5;a =int(f, 1, 2)display('Area:'), disp(double(a));

当您运行该文件时,它会显示以下结果 -

a =23/4Area:5.7500

以下是上述计算的 Octave 等效项 -

pkg 加载符号符号x =sym("x");f =x^3 - 2*x +5;c =[1, 0, -2, 5];integral =polyint(c );a =polyval(integral, 2) - polyval(integral, 1);display('Area:'), disp(double(a));

Octave 执行代码并返回以下结果 -

面积:5.7500

可以使用 Octave 提供的 quad() 函数给出替代解决方案,如下所示 -

pkg 加载符号符号x =sym("x");f =inline("x^3 - 2*x +5");[a, ierror, nfneval] =quad(f, 1 , 2);display('Area:'), disp(double(a));

Octave 执行代码并返回以下结果 -

面积:5.7500

示例 2

求曲线下面积:f(x) =x 2 cos(x) 对于 −4 ≤ x ≤ 9。

创建一个脚本文件并编写以下代码 -

f =x^2*cos(x);ezplot(f, [-4,9])a =int(f, -4, 9)disp('Area:'), disp(double(a));

运行文件时,MATLAB 绘制图形 -

输出如下 -

a =8*cos(4) + 18*cos(9) + 14*sin(4) + 79*sin(9) 面积:0.3326

以下是上述计算的 Octave 等效项 -

pkg 加载符号符号x =sym("x");f =inline("x^2*cos(x)");ezplot(f, [-4,9])print -deps graph.eps[a, ierror, nfneval] =quad(f, -4, 9);display('Area:'), disp(double(a));

MATLAB

  1. MATLAB - 数据类型
  2. MATLAB - 函数
  3. MATLAB - 变量
  4. MATLAB - 矩阵
  5. MATLAB - 基本语法
  6. MATLAB - 图形