许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  MATLAB学习笔记总结(二):常用函数与编程技巧

MATLAB学习笔记总结(二):常用函数与编程技巧

阅读数 20
点赞 0
article_banner

MATLAB软件及算法实现

一、MATLAB 程序设计  基础

MATLAB是一款以矩阵为基本运算单位的用途广泛,发展迅速,功能强大的数学与工程计算软件,我们先从认识MATLAB软件开始。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L0C0awT2-1680017551314)(2023-03-08-22-27-48.png)]

主界面上有5个窗口:主窗口, 命令 窗口,当前目录窗口,工作空间窗口,命令历史窗口,我们主要使用主窗口和命令窗口,其它窗口是辅助性的。命令窗口是我们和系统交互的场所,我们先来看一个实例:

例:计算,即123的45次方。这个问题用MATLAB来解决非常容易,只要在命令窗口中直接输入123^45,然后回车即可,得到的结果为1.1110e+094,表示。

为了进行更为复杂的运算,我们对MATLAB程序设计的一般方法作一点讨论。

1.1 MATLAB的基本操作和矩阵的基本运算

工作空间常用的管理指令有:

(1)who及whos(列出工作空间的所有变量):查询指令

(2)clear:清除工作空间中的所有变量

 clear var1 var2:清除工作空间中的变量var1和var2 
 clc: 清理窗口

(3)save FileName :把全部内存变量保存为Filename.mat文件

 save FileName v1 v2:把变量v1和v2保存为Filename.mat文件
 save FileName v1 v2 –append:把变量v1和v2添加到Filename.mat文件

(4)load FileName :把Filename.mat文件中全部变量调入内存

   load FileName v1 v2:把Filename.mat文件中v1 , v2调入内存

2.矩阵的产生

MATLAB的操作对象为矩阵。标量被看作是1×1的矩阵,维行向量或列向量可看作是或维矩阵。

   行向量生成基本格式:start: step : end(step缺省时为1)

   例如:在命令窗口中提示符>> 后输入,x=1:5,按回车【Enter】后,显示输出结果如下:

x =

   1 2 3 4 5

Matlab的每条命令后,若为逗号“,”或无标点符号,则显示命令的结果;若命令后为分号“;”,则禁止显示结果,用“%”来实现注释功能。

利用下面两个函数也可以产生向量。

linspace: 线性  等分向量,例如,a=linspace(0,2*pi,100)。

logspace:对数等分向量,例如,a=logspace(0,2*pi,100)。

在矩阵的输入中,约定:(1) 元素之间用空格或逗号隔开;

(2) 用中括号方[ ]把所有元素括起来;

(3) 用分号(;)说明行结束。

   在命令窗口,输入矩阵时,按Shift+Enter键表示开始输入新的一行,且要求所有的行具有相同的列。

   例如:a=[1 2 3; 4,5 6; 7 8,9]

   该矩阵一直保存在工作空间,直至被修改。

差分

   dx= diff  (x)

   x为行or列向量时:dx=x(2:end)-x(1:end-1)

   x为其他二位数组时:dx=x(2:end,:)-x(1:end-1,:)

   dx比x少一个或一行元素

求梯度

   FX=gradient(F)

取最小实数

   x=realmin

数值求和与近似求积分

   Sx=sum(X) %沿列方向求和

   St=trapz(x,y) %采用梯形法沿列方向求y关于x的积分

   Sx*d=通过sum求近似的数值积分榜 %d为小区间

计算精确度可控数值积分

   q=integral(fun,xmin,xmax) %求函数fun在[xmin,xmax]上的精确积分

坐标轴的控制函数

   axis([xmin,xmax,ymin,ymax,zmin,zmax])

一元函数在[x1,x2]中的极限

   [x,fval,exitflag,outopt]=fminbnd(fun,x1,x2,options)

   单纯形法求多元函数极值点

   [x,fval,exitflag,outopt]=fminsearch(fun,x0,options)

微分方程  数值解

   tspan=[-5,5] %定义范围

   [t,Y]=ode45(odefun,tspan,y0)

数值解

   fsolve

**

   一元函数的零点

   [x,fval]=fzero(fun,x0)

   解非线性方程组的零点

   [x,fval]=fsolve(fun,x0) %x0用来控制精度,即离x0最近的那个根

二项分布B(N,p)的相关命令

   pk=binopdf(k,N,p) %N次实验中,事件(以概率p)发生k次的概率

   fk=binocdf(k,N,p) %N次实验中,事件(以概率p)发生不大于k次的概率

正态分布N(mu,sigma^2)的相关命令

   px=normpdf(x,Mu,Sigma) %服从正态分布的随机变量x的概率密度

   fx=normcdf(x,Mu,Sigma) %服从正态分布的随机变量不大于x的概率密度

统计分析命令

   min(X) %最小值

   max(X) %最大值

   mean(X) %平均值

多项式运算

   a=[an an-1 … a2 a1]

   多项式的根

   roots(a)

   多项式在x0处的值

   polyval(a,0)

多项式拟合

   p=polyval(x0,y0,n)

随机数

   rand() randn%正态分布 randi%整数均匀分布


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空