20.matlab数据分析极限(matlab程序)

1.简述

      

计算极限

MATLAB提供计算极限的limit函数。在其最基本的形式中,limit函数将表达式作为参数,并在独立变量为零时找到表达式的极限。

例如,要计算函数f(x)=(x^3 + 5)/(x^4 + 7)的极限,因为x趋向于零。

syms xlimit((x^3 + 5)/(x^4 + 7))

MATLAB

执行上面示例代码,得到以下结果 -

Trial>> syms x limit((x^3 + 5)/(x^4 + 7)) ans = 5/7

Shell

limit函数落在符号计算域; 需要使用syms函数来告诉MATLAB正在使用的符号变量。还可以计算函数的极限,因为变量趋向于除零之外的某个数字。要计算 -

 

 

83cf451872d264937f01f4fbdeff737f.jpeg

 

可使用带有参数的limit命令。第一个是表达式,第二个是数字 - x表示接近,这里它是a。

例如,要计算函数f(x)=(x-3)/(x-1)的极限,因为x倾向于1。

limit((x - 3)/(x-1),1)

MATLAB

执行上面示例代码,得到以下结果 -

ans = NaN

Shell

下面再看另外一个例子,

limit(x^2 + 5, 3)

Shell

执行上面示例代码,得到以下结果 -

ans = 14

Shell

使用Octave计算极限

以下是Octave版本的上述示例使用symbolic包,尝试执行并比较结果 -

pkg load symbolic symbols x=sym("x");subs((x^3+5)/(x^4+7),x,0)

MATLAB

执行上面示例代码,得到以下结果 -

ans = 0.7142857142857142857

Shell

验证极限的基本属性

代数极限定理提供了极限的一些基本属性。这些属性如下 -

 

 

format,png

 

下面来考虑两个函数 -

f(x) = (3x + 5)/(x - 3) g(x) = x^2 + 1.

下面计算函数的极限,这两个函数的x趋向于5,并使用这两个函数和MATLAB验证极限的基本属性。

例子

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

syms x f = (3*x + 5)/(x-3);g = x^2 + 1;l1 = limit(f, 4)l2 = limit (g, 4)lAdd = limit(f + g, 4)lSub = limit(f - g, 4)lMult = limit(f*g, 4)lDiv = limit (f/g, 4)

MATLAB

执行上面示例代码,得到以下结果 -

l1 = 17 l2 = 17 lAdd = 34 lSub = 0 lMult = 289 lDiv = 1

Shell

使用Octave验证极限的基本属性

以下是Octave版本的上述示例使用symbolic包,尝试执行并比较结果 -

 

pkg load symbolic symbols x = sym("x");f = (3*x + 5)/(x-3);g = x^2 + 1;l1=subs(f, x, 4)l2 = subs (g, x, 4)lAdd = subs (f+g, x, 4)lSub = subs (f-g, x, 4)lMult = subs (f*g, x, 4)lDiv = subs (f/g, x, 4)

MATLAB

执行上面示例代码,得到以下结果 -

l1 = 17.0 l2 = 17.0 lAdd = 34.0 lSub = 0.0 lMult = 289.0 lDiv = 1.0

Shell

左右边界极限

当函数对变量的某个特定值具有不连续性时,该点不存在极限。 换句话说,当x = a时,函数f(x)的极限具有不连续性,当x的值从左侧接近x时,x的值不等于x从右侧接近的极限值。

对于x <a的值,左极限被定义为x - > a的极限,从左侧即x接近a。 对于x> a的值,右极限被定义为x - > a的极限,从右边,即x接近a。 当左极限和右极限不相等时,极限不存在。

下面来看看一个函数 -

f(x) = (x - 3)/|x - 3|

下面将显示

 

cf28b6d80b6c304e5a832395d02ed832.jpeg

不存在。MATLAB帮助我们以两种方式说明事实 -

  • 通过绘制函数图并显示不连续性。
  • 通过计算极限并显示两者都不同。

通过将字符串“left”和“right”作为最后一个参数传递给limit命令来计算左侧和右侧的极限。

例子

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

f = (x - 3)/abs(x-3);ezplot(f,[-1,5])l = limit(f,x,3,'left')r = limit(f,x,3,'right')

MATLAB

执行上面示例代码,得到以下结果 -

 

 

7bd171516a7e3013a4f5457b088da3d7.jpeg

 

显示以下输出结果 -

Trial>> Trial>> f = (x - 3)/abs(x-3); ezplot(f,[-1,5]) l = limit(f,x,3,'left') r = limit(f,x,3,'right') l = -1 r = 1

Shell

 

 

MATLAB提供用于计算符号导数的diff命令。 以最简单的形式,将要微分的功能传递给diff命令作为参数。

例如,计算函数的导数的方程式 -

 

 

format,png

 

2.代码

 

%%  学习目标:  极限

clc;
clear all;
syms x;
f=(3*x^2-1)/(3*x^2-2*x+3);
y=limit(f,x,1)   %趋近于1时


clc;
clear all;
syms x;
f=sin(sin(x))/x;
y=limit(f,x,0)    %趋近于0

clc;
clear all;
syms x;
f=(1+3/x)^(4*x);
y=limit(f,x,inf)   %趋近于无穷大
%  
%右极限

clc;
clear all;
syms x;
f=((x^x)^x);
y=limit(f,x,0,'right')

 

3.运行结果

 

9349867318694d47a91db42bfe488f15.png

 74a7ad61a65e4eb488e06d2855c82421.png

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

素馨堂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值