Matlab与微积分计算

简介: 一.极限问题的解析解   1.1 单变量函数的极限   格式1: L= limit( fun, x, x0)  格式2: L= limit( fun, x, x0, ‘left’ 或 ‘right’) >> syms x a b; >> f=x*(1+a/x)^x*sin(b/x); >> L=limit(f,x,inf) L = b*exp(a)   可以结合函数图像来观察。

一.极限问题的解析解

  1.1 单变量函数的极限

  格式1: L= limit( fun, x, x0)
  格式2: L= limit( fun, x, x0, ‘left’ 或 ‘right’)

>> syms x a b;
>> f=x*(1+a/x)^x*sin(b/x);
>> L=limit(f,x,inf) 
L = 
b*exp(a)

  可以结合函数图像来观察。

  1.2 多变量

  格式: L1=limit(limit(f,x,x0),y,y0)
  或 L1=limit(limit(f,y,y0), x,x0)

  如果x0 或y0不是确定的值,而是另一个变量的函数,如x->g(y),则上述的极限求取顺序不能交换。

相当于换元法,那肯定是先还原。

>> syms x y a; 
>> f=exp(-1/(y^2+x^2)) … *sin(x)^2/x^2*(1+1/y^2)^(x+a^2*y^2);
>> L=limit(limit(f,x,1/sqrt(y)),y,inf)
L =
exp(a^2)

 

二.函数导数的解析解  

  2.1 导数

  格式: y=diff(fun,x) %求导数
  y= diff(fun,x,n) %求n阶导数

  例:

>> syms x; f=sin(x)/(x^2+4*x+3);
>> f1=diff(f); pretty(f1)

pretty函数可以使多项式看起来更清晰。

cos(x) sin(x) (2 x + 4)
--------------- - -------------------
2 2 2
x + 4 x + 3 (x + 4 x + 3)

否则是 cos(x)/(x^2 + 4*x + 3) - (sin(x)*(2*x + 4))/(x^2 + 4*x + 3)^2

原函数及一阶导数图:
>> x1=0:.01:5; 
>> y=subs(f, x, x1);
>> y1=subs(f1, x, x1);
>> plot(x1,y,x1,y1,‘:’)

更高阶导数:
>> tic, diff(f,x,100); toc
elapsed_time =
4.6860

  2.2 多元函数偏导  

  和求多远极限的方法类似。
  格式: f=diff(diff(f,x,m),y,n)
  或 f=diff(diff(f,y,n),x,m)

  例:求其偏导数并用图表示。

>> syms x y; z=(x^2-2*x)*exp(-x^2-y^2-x*y);
>> zx=simple(diff(z,x))
zx =
-exp(-x^2-y^2-x*y)*(-2*x+2+2*x^3+x^2*y-4*x^2-2*x*y)

>> zy=diff(z,y)
zy =
(x^2-2*x)*(-2*y-x)*exp(-x^2-y^2-x*y)
直接绘制三维曲面
>> [x,y]=meshgrid(-3:.2:3,-2:.2:2);
>> z=(x.^2-2*x).*exp(-x.^2-y.^2-x.*y);
>> surf(x,y,z), axis([-3 3 -2 2 -0.7 1.5]) %直接surf(x,y,z)就行

axis([-3 3 -2 2 -0.7 1.5])产生三维坐标系。

  matlab中三维网格图(mesh)和三维曲面图(surf)区别?
  感觉没啥区别,颜色不同。
  http://www.cnblogs.com/hxsyl/archive/2012/10/10/2718380.html#3218180

三.积分问题解析解  

  格式: F=int(fun,x)
  定积分 格式: I=int(f,x,a,b)
  无穷积分 格式: I=int(f,x,a,inf)

  多重积分:顺序的改变使化简结果不同于原函数,但其误差为0,表明二者实际完全一致。这是由于积分顺序不同,得不出实际的最简形式。
用simple(f-f1),看结果是不是0

四.级数展开

  taylor(f,x,k,a)
  在x = a出展开的前k项。没a的话默认在0出。

例:对y=sinx进行Taylor幂级数展开,并观察不同阶次的近似效果。

>> x0=-2*pi:0.01:2*pi; y0=sin(x0); syms x; y=sin(x);
>> plot(x0,y0,'r-.'), axis([-2*pi,2*pi,-1.5,1.5]); hold on
>> for n=[8:2:16] p=taylor(y,x,n), y1=subs(p,x,x0); line(x0,y1) end % p=taylor(y,n) (2009b

 

  line([起点横坐标,终点横坐标],[起点纵坐标,终点纵坐标]),

  例line([1,2],[3,4])将画出(1,3)到(2,4)的一条直线,而不是(1,2)到(3,4)。

  当line(a,b)中,a b是相同大小的矩阵时,将会在对应的每一列做一条直线。

  当line(a,b,c)时,相应地会在三维图中画一条线。

  a b c 均为2XN矩阵。
  注意:实际上就是连接了几个点,说成折现比较好。

  其他的用到再说吧。

五.级数求和

 

 

>> x = [1 2 3]

x =

1 2 3

>> y = [4 5 6 ]

y =

4 5 6

>> x*y
错误使用 * 
内部矩阵维度必须一致。

>> x.*y

ans =

4 10 18

  别被.*理解错了,我理解的是对于两个行向量a和b,a*b会是向量乘法,就是的到了一个数,a.*b也会是向量乘法,其实这是因为对matlab不熟悉所致,想想对min/max函数的误解。其实*就是矩阵乘法,提示维度不同,.*就是对应位置相乘,且并没有自动连加操作。

>> syms m,n
未定义函数或变量 'n'。

>> syms m n
>> f = symsum(1/m,m,1,n)-log(n)

f =

eulergamma + psi(n + 1) - log(n)

>> limit(f,n,1,inf)
错误使用 mupadmex
Unexpected second parameter to mupadmex.

出错 sym/limit (line 50)
rSym = mupadmex('symobj::map', args{1}.s, 'symobj::limit', args{2}.s, args{3}.s, dir);

>> limit(f,n,inf)

ans =

eulergamma

六.数值微分

  d(x+1)-d(x)/Δx或者d(x)-d(x-1)/Δx或者d(x+1)-d(x-1)/2*Δx。

目录
相关文章
|
5月前
|
算法 计算机视觉 异构计算
基于FPGA的图像PSNR质量评估计算实现,包含testbench和MATLAB辅助验证程序
基于FPGA的图像PSNR质量评估计算实现,包含testbench和MATLAB辅助验证程序
|
5天前
|
算法
MATLAB符号计算
【10月更文挑战第9天】MATLAB不仅擅长数值计算,还具备强大的符号计算功能,支持代数运算、方程求解、微积分等。本文介绍如何使用MATLAB的符号工具箱进行符号变量定义、方程求解、微分积分及矩阵运算,并通过多个实际应用案例展示了其在机械系统、电路分析、经济优化和物理运动学等领域的应用。此外,文章还提供了符号计算的最佳实践和未来展望。
16 2
|
19天前
|
安全 调度
电力系统的负荷损失和潮流计算matlab仿真,对比最高度数,最高介数以及最高关键度等节点攻击
本课题研究节点攻击对电力系统稳定性的影响,通过模拟最高度数、最高介数和最高关键度攻击,对比不同攻击方式下的停电规模。采用MATLAB 2022a 进行系统仿真,核心程序实现线路断开、潮流计算及优化。研究表明,节点攻击会导致负荷损失和系统瘫痪,对电力系统的安全构成严重威胁。通过分析负荷损失率和潮流计算,提出减少负荷损失的方法,以提升电力系统的稳定性和安全性。
二阶锥松弛在配电网最优潮流计算中的应用matlab
二阶锥松弛在配电网最优潮流计算中的应用matlab
|
1月前
|
算法 数据可视化 数据安全/隐私保护
基于LK光流提取算法的图像序列晃动程度计算matlab仿真
该算法基于Lucas-Kanade光流方法,用于计算图像序列的晃动程度。通过计算相邻帧间的光流场并定义晃动程度指标(如RMS),可量化图像晃动。此版本适用于Matlab 2022a,提供详细中文注释与操作视频。完整代码无水印。
|
2月前
|
Python
【Python】实现MATLAB中计算两个矩形相交面积的rectint函数
Python中实现MATLAB中rectint函数的方法,该函数用于计算两个矩形相交区域的面积,并通过定义Rectangle类和calc_area函数展示了如何计算两个矩形的交集面积。
41 1
|
3月前
|
安全 C++
基于MATLAB的电力线路参数计算仿真
*1. 课题概述** - 电力线路分为输电与配电,计算关键参数至关重要 - 本项目开发基于MATLAB的软件,用于计算电力线路的重要参数 *2. 系统仿真结果** - 实现了工频电场、电力系统潮流等参数的计算。 - 包括MATLAB界面设计与计算功能实现。 *3. 系统原理简介** - **额定电压**: 设备最佳工作电压,保障性能稳定及延长使用寿命。 - **输变电设施**: 运行时产生工频电场和磁场,需符合国家标准限值。 - **线径计算**: 依据电流密度和趋肤效应确定导线截面积。 - **电力系统潮流计算**: 基于牛顿-拉夫逊法求解电力系统稳态运行状态,用于检查系统过负荷及电压质量。
|
3月前
|
监控
基于偏微分方程离散化计算的地下换热器建模与温度检测matlab仿真
**摘要:** 探索地下换热器的建模与温度检测,使用MATLAB2022a进行系统仿真,关注传热过程的热传导、对流和辐射。通过离散化偏微分方程建立数值模型,模拟温度场,考虑地质特性和水流影响。建模以网格单元描述温度变化,采用热电偶、红外和光纤测温技术验证模型并监控温度,各具优缺点。光纤测温法提供高精度和抗干扰的分布式监测。
|
4月前
|
存储 算法 计算机视觉
m基于FPGA的FIR低通滤波器实现和FPGA频谱分析,包含testbench和滤波器系数MATLAB计算程序
在Vivado 2019.2平台上开发的系统,展示了数字低通滤波器和频谱分析的FPGA实现。仿真结果显示滤波效果良好,与MATLAB仿真结果一致。设计基于FPGA的FIR滤波器,利用并行处理和流水线技术提高效率。频谱分析通过离散傅里叶变换实现。提供了Verilog核心程序以示例模块工作原理。
44 4
|
4月前
|
算法
m基于PSO粒子群优化的LDPC码NMS译码算法最优归一化参数计算和误码率matlab仿真
MATLAB2022a仿真实现了基于遗传优化的NMS LDPC译码算法,优化归一化参数以提升纠错性能。NMS算法通过迭代处理低密度校验码,而PSO算法用于寻找最佳归一化因子。程序包含粒子群优化的迭代过程,根据误码率评估性能并更新解码参数。最终,展示了迭代次数与优化过程的关系,并绘制了SNR与误码率曲线。
47 2

热门文章

最新文章