2021-06-01 MATLAB学习随记——微积分

一、limit:极限

limit(expr,x,a)
limit(expr,a)
limit(expr)
limit(expr,x,a,'left')
limit(expr,x,a,'right')

expr为代求极限表达式;x为自变量;a为自变量取极限时的取值,默认为0;'left''right'分别代表求左右极限。

命令行:

clear;
syms x h a;
L1 = limit(sin(x)/x)        %求默认x等于默认0时的极限
L2 = limit((sin(x+h) - sin(x))/h,h,0)       %求h等于0时的极限
L3 = limit(1/x,x,0,'right')     %求方程在x=0时的右极限
L4 = limit(1/x,x,0,'left')      %求方程在x=0时的右极限
v = [(1 + a/x)^x, exp(-x)]
L5 = limit(v,x,inf)     %求数组中每个变量对应的x=inf时的极限。inf:正无穷;-inf:负无穷

输出:

>> Test
 
L1 =1
 
L2 =cos(x)
  
L3 =Inf
 
L4 =-Inf
  
v =[ (a/x + 1)^x, exp(-x)]
 
L5 =[ exp(a), 0]

二、diff:导数

diff(expr)
diff(expr,v)
diff(expr,sym('v'))
diff(expr,n)
diff(expr,v,n)
diff(expr,n,v)

expr为代求导数表达式;v为自变量;n为阶次,默认为1

命令行:

clear;
syms x a s t;
c = sym('5'); %与syms 5;功能一样
f = sin(5*x);
g = exp(x)*cos(x);
h = sin(s*t);
A = [cos(a*x),sin(a*x);-sin(a*x),cos(a*x)];

cD = diff(c)        %对c求导
cD1 = diff(5)       %对常数5求导
fD = diff(f)        %对f求导
gD = diff(g)        %对g求导
g2D = diff(g,2)     %对g求2阶导
hDt = diff(h,t)     %对h中的自变量t求导
hDs = diff(h,s)     %对h中的自变量s求导

输出:

>> Test
 
cD =0
 
cD1 =     []
 
fD =5*cos(5*x)
  
gD =exp(x)*cos(x) - exp(x)*sin(x)
  
g2D =-2*exp(x)*sin(x)
  
hDt = s*cos(s*t)
 
hDs =t*cos(s*t)

三、int:积分

int(expr,var)
int(expr,var,a,b)

ab分别为下、上限

命令行:

clear;
syms x t z;
alpha = sym('alpha');
eq1 = -2*x/(1 + x^2)^2;
eq2 = x/(1 + z^2);
eq3 = x*log(1 + x);
eq4 = 2*x;
eq6 = acos(sin(x));

I1 = int(eq1)       %求eq1的不定积分
I2 = int(eq2,z)     %求eq2关于变量z的不定积分
I3 = int(eq3,0,1)   %求eq3中x从01的定积分
I4 = int(eq4,sin(t),1)      %求eq4中x从sin(t)1的不定积分
I5 = int([exp(t),exp(alpha*t)])     %求数组中每个元素的不定积分
I6 = int(eq6,x)     %求eq6中关于x的不定积分

输出:

>> Test
 
I1 =1/(x^2 + 1)
  
I2 =x*atan(z) 
 
I3 =1/4
  
I4 =cos(t)^2
  
I5 =[ exp(t), exp(alpha*t)/alpha]
 
I6 =x*acos(sin(x)) + (x^2*sign(cos(x)))/2

四、symsum:级数求和; symprod:级数求积

1.symsum

symsum(expr)
symsum(expr,v)
symsum(expr,a,b)
symsum(expr,v,a,b)

expr为待求表达式,v为变量,ab为级数下标和上限

命令行:

clear;
syms k x;
SUM1 = symsum(k)
SUM2 = symsum(1/k^2)
SUM3 = symsum(k^2,0,10)
eq = x^k/sym('k!');
SUM4 = symsum(eq,k,0,Inf)

输出:

>> Test
SUM1 =k^2/2 - k/2
 
SUM2 =-psi(1, k)
 
SUM3 =385
 
SUM4 =exp(x)

2.symprod

symprod(expr)
symprod(expr,v)
symprod(expr,a,b)
symprod(expr,v,a,b)

命令行:

clear;
syms k x
PROD1 = symprod(k)
PROD2 = symprod((2*k - 1)/k^2)
PROD3 = symprod(1 - 1/k^2,k,2,Inf)

输出:

>> Test
PROD1 =factorial(k)
 
PROD2 =(1/2^(2*k)*2^(k + 1)*factorial(2*k))/(2*factorial(k)^3)
 
PROD3 =1/2

五、taylor:泰勒级数

taylor(f)
taylor(f,v)
taylor(f,v,a)
taylor(f,Name,Value)
taylor(f,v,Name,Value)
taylor(f,v,a,Name,Value)

f为待展开式;v为变量;a为展开点;返回的结果为f的五阶泰勒展开;NameValue是配对输入,需改变扩展点和阶次的时候可用。

命令行:

clear
syms x
expX = taylor(exp(x))
sinX = taylor(sin(x))
cosX = taylor(cos(x),x,'ExpansionPoint',1)  %以x=1为展开点
acosX = taylor(acos(x),x,'Order',1)         %展开阶次为1

输出:

>> Test
expX =x^5/120 + x^4/24 + x^3/6 + x^2/2 + x + 1
 
sinX =x^5/120 - x^3/6 + x
 
cosX =cos(1) + (sin(1)*(x - 1)^3)/6 - (sin(1)*(x - 1)^5)/120 - sin(1)*(x - 1) - (cos(1)*(x - 1)^2)/2 + (cos(1)*(x - 1)^4)/24
 
acosX =pi/2
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值