当前位置:文档之家› matlab基本方法

matlab基本方法

matlab基本方法
matlab基本方法

张德丰书

当matlab在命令窗口出现k>>提示符时,表示当前处于调试状态,输入“dbquit”,即可放回正常模式

在操作系统命令前添加“!”可以在不退出matlab的情况下调用工具或其他可执行程序如:!dir 可以调用dos的dir命令。如果希望外部程序完成任务或者退出以后返回matlab可以在末尾行添加“&”字符,如!dir&

用exist函数查看制定变量是否在工作空间中

>> t=0:pi/30:4*pi;

>> y=sin(t);

>> exist t

ans =

1

使用doc函数获取制定函数的帮助,如:doc sin 可获得sin函数的帮助

disp显示文本或数组如:disp(rand(5,3))

length:数组长度

matlab预定义变量

pi和i,分别代表圆周率和叙述单位。

eps:机器零阀值inf,Inf无穷大nan非数nargin:函数输入参数个数

nargout函数输出参数个数realmax:最大正实数realmin:最小正实数lasterr:存放最新的错误信息lastwarn:存放最新的警告信息

banks:银行格式,元、角、分表示compact:输出变量之间没有空行

loose:输出变量之间有空行

u=input(‘提示内容’):在屏幕上显示提示内容

eye():产生单位矩阵;ones()产生“1”矩阵;zeros()产生零矩阵

矩阵的拆分:

1,矩阵元素

A(2,3)=100或A(6)=100:对一个矩阵的某个元素进行修改

下标(subscript),序号(index)

sub2ind(size(b),1,1) ans = 1 ;sub2ind(size(b),1,2) ans =3

reshape(A,m,n):函数在矩阵总数保持不变的情况下,将矩阵重新排列成n*m的而为矩阵prod(A):元素乘积cumprod():累乘积

rectplus(t,width):用来产生对称性的矩形脉冲信号

square(t,duty):用来产生周期性矩形波信号或方波信号

tripuls(t,width,skew):用来产生三角波脉冲信号

sawtooth(t,width):周期三角波信号和锯齿波信号

matlab表达式y=的含义就是t>=0时y=1,而当t<0时y=0;已将uct定义为节约信号数值表示方法对于延时t的单位阶跃信号可以用uct(t-t0)表示;而在matlab的maple内核中,将heaviside函数定义为阶跃信号符号表达式,在符号运算过程中若要调用它,必须用sym定以后才能实现;如:>> y=sym('heaviside(t)');

>> ezplot(y,[-1,5]);grid on;

离散系统之间相互转换的matlab工具箱

离散系统的matlab实现

(1),filter函数

filter函数是利用递归滤波器或非递归滤波器对数据进行滤波。因为一个离散系统可以看作是一个滤波器,系统的输出就是输入经过滤波器滤波的结果:

如:y=filter(b,a,x):表示由向量b和a组成的系统对输入x进行滤波,系统的输出为y。

[y,zf]=filter(b,a,x,zi):zi表示输入信号的初始状态,zf表示该函数返回的系统的最终状态量。

(2)impz函数

impz函数直接给出系统的单位冲激响应。

Impz(b,a)

(3)传递函数响应

Matlab中实现传递函数响应的函数为freqz函数,该函数使用基于FFT的算法系统传递函数响应模型中的系统向量a和b: [h,f]=freqz(b,a,n,fs,)其中向量b,a为离散系统的参数,fs为采样频率,n为区间[0 fs/2]频率范围内选取的频率点数,f为记录频率点数。由于freqz函数是基2的fft算法,n常取2的幂次方

(4)零极点增益

系统的零、极点可以通过matlab中的roots函数求得,从而可以得到系统的零极点增益表示也可以使用zplane函数绘出系统的零极点图

(5)状态空间法

(6)卷机矩阵

C=convmtx(h,n):h为mx1列向量维数,n为x列向量维数,C为(m+n-1)xn阶卷积矩阵

matlab函数用法

A a abs 绝对值、模、字符的ASCII码值 acos 反余弦 acosh 反双曲余弦 acot 反余切 acoth 反双曲余切 acsc 反余割 acsch 反双曲余割 align 启动图形对象几何位置排列工具 all 所有元素非零为真 angle 相角 ans 表达式计算结果的缺省变量名 any 所有元素非全零为真 area 面域图 argnames 函数M文件宗量名 asec 反正割 asech 反双曲正割 asin 反正弦 asinh 反双曲正弦 assignin 向变量赋值 atan 反正切 atan2 四象限反正切 atanh 反双曲正切 autumn 红黄调秋色图阵 axes 创建轴对象的低层指令 axis 控制轴刻度和风格的高层指令 B b bar 二维直方图 bar3 三维直方图 bar3h 三维水平直方图 barh 二维水平直方图 base2dec X进制转换为十进制 bin2dec 二进制转换为十进制 blanks 创建空格串 bone 蓝色调黑白色图阵 box 框状坐标轴 break while 或for 环中断指令 brighten 亮度控制 C c

capture (3版以前)捕获当前图形 cart2pol 直角坐标变为极或柱坐标 cart2sph 直角坐标变为球坐标 cat 串接成高维数组 caxis 色标尺刻度 cd 指定当前目录 cdedit 启动用户菜单、控件回调函数设计工具cdf2rdf 复数特征值对角阵转为实数块对角阵ceil 向正无穷取整 cell 创建元胞数组 cell2struct 元胞数组转换为构架数组 celldisp 显示元胞数组内容 cellplot 元胞数组内部结构图示 char 把数值、符号、内联类转换为字符对象chi2cdf 分布累计概率函数 chi2inv 分布逆累计概率函数 chi2pdf 分布概率密度函数 chi2rnd 分布随机数发生器 chol Cholesky分解 clabel 等位线标识 cla 清除当前轴 class 获知对象类别或创建对象 clc 清除指令窗 clear 清除内存变量和函数 clf 清除图对象 clock 时钟 colorcube 三浓淡多彩交叉色图矩阵 colordef 设置色彩缺省值 colormap 色图 colspace 列空间的基 close 关闭指定窗口 colperm 列排序置换向量 comet 彗星状轨迹图 comet3 三维彗星轨迹图 compass 射线图 compose 求复合函数 cond (逆)条件数 condeig 计算特征值、特征向量同时给出条件数condest 范-1条件数估计 conj 复数共轭 contour 等位线 contourf 填色等位线 contour3 三维等位线

matlab常用操作命令

matlab常用操作备忘(1)2007-11-30 22:01:06 分类: 北京理工大学 20981 陈罡 帮助朋友做几个数据的卷积的仿真,一用才知道,呵呵,发现对不住偶的导师了。。。好多matlab的关键字和指令都忘记了。特意收集回顾一下: (1)管理命令和函数 addpath :添加目录到MATLAB搜索路径 doc :在Web浏览器上现实HTML文档 help :显示Matlab命令和M文件的在线帮助 helpwin helpdesk :help 兄弟几个 lookfor :在基于Matlab搜索路径的所有M文件中搜索关键字 partialpath:部分路径名 8*) path :所有关于路径名的处理 pathtool :一个不错的窗口路径处理界面 rmpath :删除搜索路径中指定目录 type :显示指定文件的内容 ver :版本信息 version :版本号 web :打开web页 what :列出当前目录吓所有的M文件 Mat文件和 Mex文件 whatsnew :显示readme文件 which :显示文件位置 (2)管理变量和工作区 clear :从内存中删除所有变量,clear x y z是删除某个变量 disp :显示文本或数组内容 length :数组长度(最长维数) load :重新载入变量(从磁盘上) mlock :锁定文件,防止文件被错误删除 munlock :解锁文件 openvar :在数组编辑器中打开变量 pack :整理内存空间 save :保存变量到文件 8*) size :数组维数

who whos :列出内存变量 workspace :显示工作空间窗口 (3)管理命令控制窗口(command窗口) clc :清空命令窗口 echo :禁止或允许显示执行过程 format :设置输出显示格式 home :光标移动到命令窗口左上角 more :设置命令窗口页输出格式 (4)文件和工作环境 cd :改变工作目录 copyfile :复制文件 delete :删除文件和图形对象 diary :把命令窗口的人机交互保存到文件 dir :显示目录 edit :编辑文本文件 fileparts :返回文件的各个部分 fullfile :使用指定部分建立文件全名 inmem :返回内存(伪代码区)的matlab函数名 ls :在unix系统中列出目录(win中亦可) matlabroot :根目录 mkdir :新建目录 open :打开文件 pwd :显示当前目录 tempdir :返回系统临时目录的名字 tempname :随机给出一个临时字符串(可用作文件名) ! :直接调用操作系统command命令 (5)启动和推出matlab matlabrc :Matlab的启动M文件 exit quit :退出Matlab startup :运行matlab启动文件 (6)程序设计 builtin :从可重载方法中调用内置函数 eval :执行包含可执行表达式的字符串

0.618法的matlab实现

实验报告 实验题目: 0.618法的MATLAB实现学生姓名: 学号: 实验时间: 2013-5-13

一.实验名称: 0.618法求解单峰函数极小点 二.实验目的及要求: 1. 了解并熟悉0.618法的方法原理, 以及它的MATLAB 实现. 2. 运用0.618法解单峰函数的极小点. 三.实验内容: 1. 0.618法方法原理: 定理: 设f 是区间],[b a 上的单峰函数, ] ,[ ,)2()1(b a x x ∈, 且)2()1(x x <. 如果)()()2()1(x f x f >, 则对每一个],[)1(x a x ∈, 有)()()2(x f x f >; 如果)()()2()1(x f x f ≤, 则对每一个] ,[) 2(b x x ∈, 有)()()1(x f x f ≥. 根据上述定理, 只需选择两个试探点, 就可将包含极小点的区间缩短. 事实上, 必有 如果)()()2()1(x f x f >, 则],[)1(b x x ∈; 如果)()() 2()1(x f x f ≤, 则][)2(x a x ,∈. 0.618 法的基本思想是, 根据上述定理, 通过取试探点使包含极小点的区间(不确定区间)不断缩短, 当区间长度小到一定程度时, 区间上各点的函数值均接近极小值, 因此任意一点都可作为极小点的近似. 0.618 法计算试探点的公式: ). (618.0),(382.0k k k k k k k k a b a a b a -+=-+=μλ 2. 0.618法的算法步骤: ①置初始区间],[11b a 及精度要求0>L , 计算试探点1λ和1μ, 计算函数值)(1λf 和)(1μf . 计算公式是 ).(618.0 ),(382.011111111a b a a b a -+=-+=μλ 令1=k . ②若L a b k k <-, 则停止计算. 否则, 当)()(k k f f μλ>时, 转步骤③; 当)()(k k f f μλ≤时, 转步骤④. ③置k k a λ=+1, k k b b =+1, k k μλ=+1,)(618.01111++++-+=k k k k a b a μ, 计算函数值)(1+k f μ, 转步骤⑤.

实验1熟悉matlab环境和基本操作

实验1 熟悉Matlb环境及基本操作 实验目的: 1.熟悉Matlab环境,掌握Matlab的主要窗口及功能; 2.学会Matlab的帮助使用; 3.掌握向量、矩阵的定义、生成方法和基本运算; 4.掌握Matlab的基本符号运算; 5.掌握Matlab中的二维图形的绘制和控制。 实验内容: 1.启动Matlab,说明主窗口、命令窗口、当前目录窗口、工作空间窗口、历史窗口、图形窗口、M文件编辑器窗口的功能。 2.实例操作Matlab的帮助使用。 3.实例操作向量、矩阵的定义、生成方法和基本运算。 4.实例操作Matlab的基本符号运算。 5.实例操作Matlab中的二维图形绘制和控制。 实验仪器与软件: 1.CPU主频在2GHz以上,内存在512Mb以上的PC; 2.Matlab 7及以上版本。 实验讲评: 实验成绩: 评阅教师: 年月日

实验1 熟悉Matlab环境及基本操作 一、Matlab环境及主要窗口的功能 运行Matlab安装目录下的matlab.exe文件可启动Matlab环境,其默认布局如下图: 其中, 1.主窗口的功能是:主窗口不能进行任何计算任务操作,只用来进行一些整体的环境参数设置,它主要对6个下拉菜单的各项和10个按钮逐一解脱。 2.命令窗口的功能是:对MATLAB搜索路径中的每一个M文件的注释区的第一行进行扫描,一旦发现此行中含有所查询的字符串,则将该函数名及第一行注释全部显示在屏幕上。 3. 历史窗口的功能是:历史窗口显示命令窗口中的所有执行过的命令,一方面可以查看曾经执行过的命令,另一方面也可以重复利用原来输入的命令行,可以从命令窗口中直接通过双击某个命令行来执行该命令,

matlab基本用法

目录: 一、说明 二、数据类型及基本输入输出 三、流程控制 四、循环 五、数组、数组运算和矩阵运算 六、M脚本文件和M函数文件、函数句柄 七、文件 八、数据和函数的可视化 一、说明 matlab作为数学软件有其强大的图形用户界面操作、数据和函数的可视化和数值计算功能,且自带很多现有的函数和工具包。而本文只涉及一些比较系统的基本操作,在最后附带介绍一些基本的数据和函数的可视化命令。建议要用的时候再利用matlab自带的帮助文档来搜索有用的函数和工具包。matlab的函数和命令都是比较人性化的,比如想要搜索读取fits文件的函数,搜索fits就能够搜到fitsread函数;需要将读出的fits数据重新做图,搜索image就可以找到imagesc函数。从书和别人的文档都只能学到有限的比较系统的操作,看帮助文档能发现更多的东西并整理出自己的使用方法。 二、数据类型及基本输入输出 1、数据类型,声明及赋初值 matlab中存储的数据类型(class)有以下几种: 而实际上matlab不需要对变量做声明,当它发现一个新的变量名时,将默认将其为双精度浮点类型(double)并分配内存空间。(这比C和 Fortran方便了许多,但在完成大运算量的程序时就显得浪费存储空间了) 当需要把变量a从double转为其他类型的时候,比如要转为int16型,可以使用以下命令:a=int16(a) 当需要创建一个字符型变量x并对其赋初值时,用以下格式:x='字符串'; 注意: (1)在命令后加“;”表示不在command window中显示结果,而对上例来说如果不加“;”则会显示所赋字符串内容。 (2)所有的命令必须在英文输入状态下,如果使用中文输入状态下全角的“;”,将被处理为非法字符。其中logical,cell和structure为逻辑,元胞和构架数组类型,将在后面的数组部分提到;function handle为函数句柄类型,将在后面的“M脚本文件和M函数文件、函数句柄”部分提到;java类供JAVA API应用程序接口使用,本文不进行说明。最后说明一下,matlab也支持复数操作,赋值的时候直接输入即可,比如:a=1+2i; 2、基本输入输出 输入:v=input('message') %将用户输入的内容赋给变量v v=input('message','s') %将用户输入的内容作为字符串赋给变量v keyboard %用户可以从键盘输入任意多个指令 v=yesinput('prompt',default,possib) %prompt为文字提示,default为缺省设置“值”,possib为设置值的范围。

实验一 MATLAB基本操作及运算

实验一 MATLAB 基本操作及运算 一、 实验目的 二、 实验的设备及条件 三、 实验内容 1、 建立以下标量: 1) a=3 2) ,(j 为虚数单位) 3) c=3/2πj e 2、 建立以下向量: 1) Vb= 2.71382882????????-???? 2) Vc=[4 3.8 … -3.8 -4 ] (向量中的数值从4到-4,步长为-0.2) 3、 建立以下矩阵: 1) 3 333Ma ????=?????? Ma 为一个7×7的矩阵,其元素全为3. 2) 11191212921020100Mb ??????=??????

Mb 为一个10×10的矩阵. 3) 114525173238Mc ????=?????? 4、 使用题1中的变量计算下列等式的x,y,z 的值: 1) ((15)/6)111a x e --=+ 2) 2x π= 3) 3ln([()()]sin(/3))x b c b c a π=+-R ,其中R 表示复数实部。 5、 求解函数值22/(2.25)ct y e -=,其中c 取值见题1,t 的取值范围为题2中行 向量Vc 。 6、 使用题1和题3中所产生的标量和矩阵计算等式 1()()T Mx a Mc Mc Mc -=?? 其中*为矩阵所对应行列式的值,参考det 。 7、 函数的使用和矩阵的访问。 1) 计算矩阵Mb 每一列的和,结果应为行向量形式。 2) 计算整个矩阵Mb 的平均值。 3) 用向量[1 1…1] 替换Mb 的最上一行的值 4) 将矩阵Mb 的第2~5行,第3到9列的元素所构成的矩阵赋值给矩阵SubMb 。 5) 删除矩阵Mb 的第一行; 6) 使用函数rand 产生一个1×10的向量r ,并将r 中值小于0.5的元素设置为0。 8、 已知CellA (1, 1)=‘中国’,CellA (1,2)=‘北京’,CellA (2,1)是一个3乘3的单位阵,CellA (2, 2)=[1 2 3],试用MATLAB 创建一个2×2的细胞数组CellA 。 9、 已知结构数组student 中信息包含有姓名,学号,性别,年龄和班级,试用MATLAB 创建相应的结构数组student 。该数组包含有从自己学号开始连续5个同学的信息(如果学号在你后面的同学不足5个则往前排序),创建完成后查看自己的信息。

最优化方法的Matlab实现(公式(完整版))

第九章最优化方法的MatIab实现 在生活和工作中,人们对于同一个问题往往会提出多个解决方案,并通过各方面的论证从中提取最佳方案。最优化方法就是专门研究如何从多个方案中科学合理地提取出最佳方案的科学。由于优化问题无所不在,目前最优化方法的应用和研究已经深入到了生产和科研的各个领域,如土木工程、机械工程、化学工程、运输调度、生产控制、经济规划、经济管理等,并取得了显著的经济效益和社会效益。 用最优化方法解决最优化问题的技术称为最优化技术,它包含两个方面的内容: 1)建立数学模型即用数学语言来描述最优化问题。模型中的数学关系式反映了最优化问题所要达到的目标和各种约束条件。 2)数学求解数学模型建好以后,选择合理的最优化方法进行求解。 最优化方法的发展很快,现在已经包含有多个分支,如线性规划、整数规划、非线性规划、动态规划、多目标规划等。 9.1 概述 利用Matlab的优化工具箱,可以求解线性规划、非线性规划和多目标规划问题。 具体而言,包括线性、非线性最小化,最大最小化,二次规划,半无限问题,线性、非线性方程(组)的求解,线性、非线性的最小二乘问题。另外,该工具箱还提供了线性、非线性最小化,方程求解,曲线拟合,二次规划等问题中大型课题的求解方法,为优化方法在工程中的实际应用提供了更方便快捷的途径。 9.1.1优化工具箱中的函数 优化工具箱中的函数包括下面几类: 1 ?最小化函数

2.方程求解函数 3.最小—乘(曲线拟合)函数

4?实用函数 5 ?大型方法的演示函数 6.中型方法的演示函数 9.1.3参数设置 利用OPtimSet函数,可以创建和编辑参数结构;利用OPtimget函数,可以获得o PtiOns优化参数。 ? OPtimget 函数 功能:获得OPtiOns优化参数。 语法:

MATLAB文件各种操作方法(全)

1.1 文件的打开和关闭 1.1.1 文件的打开 fopen ('filename', 'mode') mode格式有: ‘r’:只读方式打开文件(默认的方式),该文件必须已存在。 ‘r+’:读写方式打开文件,打开后先读后写。该文件必须已存在。 ‘w’:打开后写入数据。该文件已存在则更新;不存在则创建。 ‘w+’:读写方式打开文件。先读后写。该文件已存在则更新;不存在则创建。 ‘a’:在打开的文件末端添加数据。文件不存在则创建。 ‘a+’:打开文件后,先读入数据再添加数据。文件不存在则创建。 如果rt表示该文件以文本方式打开,如果添加的是“b”,则以二进制格式打开,这也是fopen函数默认的打开方式。 Fopen函数两个返回值: 1、一个是返回一个文件标识(file Identifier),它会作为参数被传入其他对文件进 行读写操作的命令,通常是一个非负的整数,可用此标识来对此文件进行各种处理。 (如果返回的文件标识是–1,则代表fopen无法打开文件,其原因可能是文件不 存在,或是用户无法打开此文件权限); 2、另一个返回值就是message,用于返回无法打开文件的原因; 例:1-1 [f,message]=fopen('fileexam1', 'r') if f==-1 disp(message); %显示错误信息 end (若文件fileexam1不存在,则显示如下信息。 Cannot open file.existence?permissions?memory?) 例:1-2 [f,message]=fopen('fileexam2', 'r'); if f==-1 disp (message); %显示错误信息 else disp(f); end 若文件fileexam2存在,则返回f值。 1.1.2文件的关闭 Fclose(f) F为打开文件的标志,若若fclose函数返回值为0,则表示成功关闭f标志的文件;若返回值为–1,则表示无法成功关闭该文件。(打开和关闭文件比较耗时,最好不要在循环体内使用文件) 若要一次关闭打开的所有文件,可以使用下面的命令:fclose all

实验1 MATLAB使用方法和程序设计

实验1 MATLAB 使用方法和程序设计 一、实验目的 1、掌握MATLAB 软件使用的基本方法。 2、熟悉MATLAB 的数据表示、基本运算和程序控制语句。 3、熟悉MATLAB 绘图命令及基本绘图控制。 4、熟悉MATLAB 程序设计的基本方法。 二、实验内容 1.帮助命令 使用Help 命令,查找sqrt (开方)函数的使用方法。 2、矩阵运算 (1)矩阵乘法 已知A=[1 2;3 4];B=[5 5;7 8]; 求A^2*B 。 (2) 矩阵除法 已知A=[1 2 3;4 5 6;7 8 9];B=[1 0 0;0 2 0;0 0 3]; 求A\B,A/B 。 (3) 矩阵的转置及共轭转置 已知A=[5+i ,2-i ,1;6*i ,4,9-i];求A.’,A ’ 。 (4)使用冒号选出指定元素 已知A=[1 2 3 ; 4 5 6 ; 7 8 9]; 求A 中第3列前2个元素;A 中所有列第2,3行的元素。 (5)方括号[] 用magic 函数生成一个4阶魔术矩阵,删除该矩阵的第四列。 3、多项式 (1)求多项式p(x)=x 3-2x-4的根。 (2)求 f (x) = (cos x)2 的一次导数。 (3)求微分方程 的通解,并验证。 4、基本绘图命令 (1)绘制余弦曲线cost =y , ]2,0[π∈t 。 (2)在同一坐标系中绘制余弦曲线 0.25)-cos(t =y 和正弦曲线 )5.0sin(-=t y ,]2,0[π∈t (3)用plot3函数绘制三维螺线: 22x dy xy xe dx -+= sin()cos()x t y t z t =??=??=?( 0 < t < 20 )

实验一 Matlab基本操作(2016)

实验一 MATLAB 基本操作 一、实验目的 1. 学习和掌握MA TLAB 的基本操作方法 2. 掌握命令窗口的使用 3. 熟悉MATLAB 的数据表示、基本运算 二、实验内容和要求 1. 实验内容 1) 练习MATLAB7.0或以上版本 2) 练习矩阵运算与数组运算 2. 实验要求 1) 每位学生独立完成,交实验报告 2) 禁止玩游戏! 三、实验主要软件平台 装有MATLAB7.0或以上的PC 机一台 四、实验方法、步骤及结果测试 1. 实验方法:上机练习。 2. 实验步骤: 1) 开启PC ,进入MA TLAB 。 2) 使用帮助命令,查找sqrt 函数的使用方法 答: help sqrt 3) 矩阵、数组运算 a) 已知 ??????????=987654321A ,???? ??????=963852741B ,求)2()(A B B A -?+ 答: A=[1, 2, 3; 4, 5, 6; 7, 8, 9]; B=[1, 4, 7; 2, 5, 8; 3, 6, 9]; (A+B)*(2*B-A) b) 已知?? ????-=33.1x ,??????=π24y ,求T xy ,y x T c) 已知??????????=987654321A ,???? ??????=300020001B ,求A/B, A\B. d) 已知???? ??????=987654321A ,求:(1) A 中第三列前两个元素;(2) A 中所有第二行元素;(3) A 中四个角上的元素;(4) 交换A 的第1、3列。(5) 交换A 的第1、2行。(6) 删除A 的第3列。

e) 已知[]321=x ,[]654=y ,求:y x *.,y x /.,y x \.,y x .^, 2.^x ,x .^2。 f) 给出x=1,2,…,7时,x x sin 的值。 3)常用的数学函数 a )随机产生一个3x3的矩阵A ,求:(1) A 每一行的最大、最小值,以及最大、最小值所在的列;(2) A 每一列的最大、最小值,以及最大、最小值所在的行;(3) 整个矩阵的最大、最小值;(4) 每行元素之和;(5) 每列元素之和;(6) 每行元素之积;(7) 每列元素之积。 b) 随机产生两个10个元素的向量x ,y 。(1) 求x 的平均值、标准方差。(2) 求x ,y 的相关系数。(3)对x 排序,并记录排序后元素在原向量中的位置。 4) 字符串操作函数 建立一个字符串向量(如‘ABc123d4e56Fg9’),然后对该向量做如下处理: (1) 取第1~5个字符组成的子字符串。 (2) 将字符串倒过来重新排列。 (3) 将字符串中的小写字母变成相应的大写字母,其余字符不变。 (4) 统计字符串中小写字母的个数。

MATLAB中plot的用法

MATLAB中plot的用法(2011-05-17 22:10:50)转载▼ 标签:杂谈 第五讲计算结果的可视化 本节介绍MATLAB 的两种基本绘图功能:二维平面图形和三维立体图形。 5.1 二维平面图形 5.1.1 基本图形函数 plot 是绘制二维图形的最基本函数,它是针对向量或矩阵的列来绘制曲线的。也就是说,使用plot 函数之前,必须首先定义好曲线上每一点的x 及y 坐标,常用格式为:(1)plot(x) 当x 为一向量时,以x 元素的值为纵坐标,x 的序号为横坐标值绘制 曲线。当x 为一实矩阵时,则以其序号为横坐标,按列绘制每列元素值相对于其序号的曲线, 当x 为m×n 矩阵时,就由n 条曲线。 (2)plot(x,y) 以x 元素为横坐标值,y 元素为纵坐标值绘制曲线。 (3)plot(x,y1,x,y2,…) 以公共的x 元素为横坐标值,以y1,y2,…元素为纵坐标值绘 制多条曲线。 例5.1.1 画出一条正弦曲线和一条余弦曲线。 >> x=0:pi/10:2*pi; >> y1=sin(x); >> y2=cos(x); >>plot(x,y1,x,y2) 图5.1.1 函数plot 绘制的正弦曲线 在绘制曲线图形时,常常采用多种颜色或线型来区分不同的数据组,MATLAB 软件专 门提供了这方面的参数选项(见表5.1.1),我们只要在每个坐标后加上相关字符串,就可实 现它们的功能。 - 2 - 表5.1.1 绘图参数表 色彩字符颜色线型字符线型格式标记符号数据点形式标记符号数据点形式 y 黄- 实线. 点<小于号 m 紫:点线o 圆s 正方形 c 青-. 点划线x 叉号 d 菱形 r 红- - 虚线+ 加号h 六角星 g 绿* 星号p 五角星 b 蓝v 向下三角形 w 白^ 向上三角形 k 黑>大于号 例如,在上例中输入 >>plot(x,y1,'r+-',x,y2,'k*:') 则得图5.1.2 图5.1.2 使用不同标记的plot 函数绘制的正弦曲线 5.1.2 图形修饰 MATLAB 软件为用户提供了一些特殊的图形函数,用于修饰已经绘制好的图形。 表5.1.2 图形修饰函数表

王能超 计算方法——算法设计及MATLAB实现课后代码

第一章插值方法 1.1Lagrange插值 1.2逐步插值 1.3分段三次Hermite插值 1.4分段三次样条插值 第二章数值积分 2.1 Simpson公式 2.2 变步长梯形法 2.3 Romberg加速算法 2.4 三点Gauss公式 第三章常微分方程德差分方法 3.1 改进的Euler方法 3.2 四阶Runge-Kutta方法 3.3 二阶Adams预报校正系统 3.4 改进的四阶Adams预报校正系统 第四章方程求根 4.1 二分法 4.2 开方法 4.3 Newton下山法 4.4 快速弦截法 第五章线性方程组的迭代法 5.1 Jacobi迭代 5.2 Gauss-Seidel迭代 5.3 超松弛迭代 5.4 对称超松弛迭代 第六章线性方程组的直接法 6.1 追赶法 6.2 Cholesky方法 6.3 矩阵分解方法 6.4 Gauss列主元消去法

第一章插值方法 1.1Lagrange插值 计算Lagrange插值多项式在x=x0处的值. MATLAB文件:(文件名:Lagrange_eval.m)function [y0,N]= Lagrange_eval(X,Y,x0) %X,Y是已知插值点坐标 %x0是插值点 %y0是Lagrange插值多项式在x0处的值 %N是Lagrange插值函数的权系数 m=length(X); N=zeros(m,1); y0=0; for i=1:m N(i)=1; for j=1:m if j~=i; N(i)=N(i)*(x0-X(j))/(X(i)-X(j)); end end y0=y0+Y(i)*N(i); end 用法》X=[…];Y=[…]; 》x0= ; 》[y0,N]= Lagrange_eval(X,Y,x0) 1.2逐步插值 计算逐步插值多项式在x=x0处的值. MATLAB文件:(文件名:Neville_eval.m)function y0=Neville_eval(X,Y,x0) %X,Y是已知插值点坐标 %x0是插值点 %y0是Neville逐步插值多项式在x0处的值 m=length(X); P=zeros(m,1); P1=zeros(m,1); P=Y; for i=1:m P1=P; k=1; for j=i+1:m k=k+1;

MATLAB操作手册常用快捷键大全

常用对象操作:除了一般windows窗口的常用功能键外。 1、!dir 可以查看当前工作目录的文件。!dir& 可以在dos状态下查看。 2、who 可以查看当前工作空间变量名,whos 可以查看变量名细节。 3、功能键: 功能键快捷键说明 方向左键Ctrl+B 光标向后移一个字符 方向右键Ctrl+F 光标向前移一个字符 Ctrl+方向右键Ctrl+R 光标向右移一个字符 Ctrl+方向左键Ctrl+L 光标向左移一个字符 home Ctrl+A 光标移到行首 End Ctrl+E 光标移到行尾 Esc Ctrl+U 清除一行 Del Ctrl+D 清除光标所在的字符 Backspace Ctrl+H 删除光标前一个字符 Ctrl+K 删除到行尾 Ctrl+C 中断正在执行的命令 4、clc可以命令窗口显示的内容,但并不清除工作空间。 二、函数及运算 1、运算符: +:加,-:减,*:乘,/:除,\:左除^:幂,‘:复数的共轭转置,():制定运算顺序。 2、常用函数表: sin( ) 正弦(变量为弧度) Cot( ) 余切(变量为弧度) sind( ) 正弦(变量为度数) Cotd( ) 余切(变量为度数) asin( ) 反正弦(返回弧度) acot( ) 反余切(返回弧度) Asind( ) 反正弦(返回度数) acotd( ) 反余切(返回度数) cos( ) 余弦(变量为弧度) exp( ) 指数 cosd( ) 余弦(变量为度数) log( ) 对数 acos( ) 余正弦(返回弧度) log10( ) 以10为底对数 acosd( ) 余正弦(返回度数) sqrt( ) 开方 tan( ) 正切(变量为弧度) realsqrt( ) 返回非负根 tand( ) 正切(变量为度数) abs( ) 取绝对值 atan( ) 反正切(返回弧度) angle( ) 返回复数的相位角

2matlab基本使用方法

(12+2*(7-4))/3^2 ans = 2 format short;pi ans = 3.1416 format long;pi ans = 3.141592653589793 format rat;pi ans = 355/113 format long;vpa(pi,50) ans = 3.141592653589793115997963468544185161590576171875 who Your variables are: ans a=randn(4) a = -0.1241 0.6715 0.4889 0.2939 1.4897 -1.2075 1.0347 -0.7873 1.4090 0.7172 0.7269 0.8884 1.4172 1.6302 -0.3034 -1.1471 whos Name Size Bytes Class Attributes a 4x4 128 double ans 1x1 8 double who Your variables are: a ans what M-files in the current directory E:\Matlab2010\智能仿生算法\遗传算法TSP_SuiJiSuanFa ZhuanJiaXiTongP167 fun_SuiJiSuanFa TSPrun_SuiJiSuanFa f fun_SuiJiSuanFa0

ZhuanJiaXiTongP162 f1 fun_SuiJiSuanFa2 MAT-files in the current directory E:\Matlab2010\智能仿生算法\遗传算法 my27city dir . ZhuanJiaXiTongP162.asv f.m my27city.mat .. ZhuanJiaXiTongP162.m f1.m temp 3d.asv ZhuanJiaXiTongP167.asv fun_SuiJiSuanFa.asv temp.prj 3d.m ZhuanJiaXiTongP167.m fun_SuiJiSuanFa.m zia03836 New Folder bou2_4l.shp fun_SuiJiSuanFa0.asv TSP_SuiJiSuanFa.m da fun_SuiJiSuanFa0.m TSPrun_SuiJiSuanFa.m da.prj fun_SuiJiSuanFa2.m type 3d clf; x=-3:0.1:3; y=-3:0.1:3; [X Y]=meshgrid(x,y); Z=f(X,Y)+4; mesh(X,Y,Z); hold on; plot3(-0.7,-1,f(-0.7,-1)+4,'g*'); contour(X,Y,Z,'r'); which rand built-in (D:\Program Files\MATLAB\R2010a\toolbox\matlab\randfun\rand) which 3d.m E:\Matlab2010\智能仿生算法\遗传算法\3d.m help exist EXIST Check if variables or functions are defined. EXIST('A') returns: 0 if A does not exist 1 if A is a variable in the workspace 2 if A is an M-file on MATLAB's search path. It also returns 2 when A is the full pathname to a file or when A is the name of an ordinary file on MATLAB's search path 3 if A is a MEX-file on MATLAB's search path 4 if A is a MDL-file on MATLAB's search path 5 if A is a built-in MATLAB function 6 if A is a P-file on MATLAB's search path 7 if A is a directory 8 if A is a Java class

[设计]罚函数法MATLAB程序

[设计]罚函数法MATLAB程序 一、进退法、0.618法、Powell法、罚函数法的Matlab程序设计罚函数法(通用) function y=ff(x,k) y=-17.86*0.42*x(1)/(0.8+0.42*x(1))*(1-exp(- 2*(0.8+0.42*x(1))/3))*exp(-1.6)*x(2)-22. 99*x(1)/(0.8+x(1))*(1-exp(-2*(0.8+x(1))/3))*x(3)+k*(x(2)- (1.22*10^2*(9517.8*exp(-1 .6-2*0.42*x(1)/3)*x(2)+19035.6*exp(- 2*x(1)/3)*x(3)))/(1.22*10^2+9517.8*exp(-1.6-2 *0.42*x(1)/3)*x(2)+19035.6*exp(-2*x(1)/3)*x(3)))^2+k*(x(3)-exp(-0.8-2*x(1)/3)*x(3) -exp(-2.4-2*0.42*x(1)/3)*x(2))^2; % 主函数,参数包括未知数的个数n,惩罚因子q,惩罚因子增长系数k,初值x0,以及允许的误差r function G=FHS(x0,q,k,n,r,h,a) l=1; while (l) x=powell(x0,n,q,r(1),h,a); %调用powell函数 g(1)=ff1(x),g(2)=ff2(x) . . . g(p)=ffp(x); %调用不等式约束函数,将其值 %存入数组g h(1)=hh1(x),h(2)=hh2(x) . . . h(t)=hht(x); %调用等式约束函数,将其值%存入数组h for i=1:p

matlab软件的使用方法

MATLAB 软件使用简介 默认分类2007-03-15 21:26:49 阅读4106 评论8 字号:大中小订阅 MATLAB 软件使用简介 MATLAB 是一个功能强大的常用数学软件, 它不但可以解决数学中的数值计算问题, 还可以解决符号演算问题, 并且能够方便地绘出各种函数图形。MATLAB自1984年由美国的MathWorks公司推向市场以来,历经十几年的发展和竞争,现已成为国际最优秀的科技应用软件之一。这里主要以适用于Windows操作系统的MATLAB5.3版本向读者介绍MATLAB 的使用命令和内容。 一、MATLAB 的进入/退出 MA TLAB 的安装成功后, 系统会在Windows【开始】菜单的【程序】子菜单中加入启动MATLAB命令的图标, 用鼠标单击它就可以启动MATLAB系统,见图2.1。 图2.1 启动MA TLAB 启动MATLAB后, 屏幕上出现MATLAB命令窗口: 图2.2 MA TLAB命令窗口 图2.2的空白区域是MATLAB 的工作区(命令输入区), 在此可输入和执行命令。 退出MATLAB系统像关闭Word文件一样, 只要用鼠标点击MATLAB系统集成界面右上角的关闭按钮即可。 二、MATLAB 操作的注意事项 l 在MA TLAB工作区输入MATLAB命令后, 还须按下Enter键, MA TLAB才能执行你输入的MA TLAB命令, 否则MA TLAB不执行你的命令。 l MATLAB 是区分字母大小写的。 l 一般,每输入一个命令并按下Enter键, 计算机就会显示此次输入的执行结果。(以下用↙表示回车)。如果用户不想计算机显示此次输入的结果,只要在所输入命令的后面再加上一个分号“;”即可以达到目的。如: x= 2 + 3 ↙x=5 x = 2 + 3 ; ↙不显示结果5 l 在MA TLAB工作区如果一个表达式一行写不下,可以用在此行结尾处键入三个英文句号的方法达到换行的目的。如: q=5^6+sin(pi)+exp(3)+(1+2+3+4+5)/sin(x)… -5x+1/2-567/(x+y) l MATLAB 可以输入字母、汉字,但是标点符号必须在英文状态下书写。 l MATLAB 中不需要专门定义变量的类型,系统可以自动根据表达式的值或输入的值

matlab基本使用方法

1-1、基本运算与函数 在MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可。例如:>> (5*2+1.3-0.8)*10/25 ans =4.2000 MATLAB会将运算结果直接存入一变数ans,代表MATLAB运算後的答案(Answer)并显示其数值於萤幕上。小提示: ">>"是MATLAB的提示符号(Prompt),但在PC中文视窗系统下,由於编码方式不同,此提示符号常会消失不见,但这并不会影响到MATLAB的运算结果。 我们也可将上述运算式的结果设定给另一个变数x: x = (5*2+1.3-0.8)*10^2/25 x = 42 此时MATLAB会直接显示x的值。由上例可知,MATLAB认识所有一般常用到的加(+)、减(-)、乘(*)、除(/)的数学运算符号,以及幂次运算(^)。 小提示: MATLAB将所有变数均存成double的形式,所以不需经过变数宣告(Variable declaration)。MATLAB同时也会自动进行记忆体的使用和回收,而不必像C语言,必须由使用者一一指定.这些功能使的MATLAB易学易用,使用者可专心致力於撰写程式,而不必被软体枝节问题所干扰。 若不想让MATLAB每次都显示运算结果,只需在运算式最後加上分号(;)即可,如下例: y = sin(10)*exp(-0.3*4^2); 若要显示变数y的值,直接键入y即可: >>y y =-0.0045 在上例中,sin是正弦函数,exp是指数函数,这些都是MATLAB常用到的数学函数。 下表即为MATLAB常用的基本数学函数及三角函数: 小整理:MATLAB常用的基本数学函数 abs(x):纯量的绝对值或向量的长度 angle(z):复数z的相角(Phase angle) sqrt(x):开平方 real(z):复数z的实部 imag(z):复数z的虚部 conj(z):复数z的共轭复数 round(x):四舍五入至最近整数 fix(x):无论正负,舍去小数至最近整数 floor(x):地板函数,即舍去正小数至最近整数 ceil(x):天花板函数,即加入正小数至最近整数 rat(x):将实数x化为分数表示 rats(x):将实数x化为多项分数展开 sign(x):符号函数 (Signum function)。 当x<0时,sign(x)=-1; 当x=0时,sign(x)=0; 当x>0时,sign(x)=1。 > 小整理:MATLAB常用的三角函数 sin(x):正弦函数 cos(x):馀弦函数 tan(x):正切函数

龙格库塔方法matlab实现

龙格库塔方法matlab实现~ function ff=rk(yy,x0,y0,h,a,b)%yy为y的导函数,x0,y0,为初值,h为步长,a,b为区间 c=(b-a)/h+1;i1=1; %c为迭代步数;i1为迭代步数累加值 y=y0;z=zeros(c,6); %z生成c行,5列的零矩阵存放结果; %每行存放c次迭代结果,每列分别存放k1~k4及y的结果 for x=a:h:b if i1<=c k1=feval(yy,x,y); k2=feval(yy,x+h/2,y+(h*k1)/2); k3=feval(yy,x+h/2,y+(h*k2)/2); k4=feval(yy,x+h,y+h*k3); y=y+(h/6)*(k1+2*k2+2*k3+k4); z(i1,1)=x;z(i1,2)=k1;z(i1,3)=k2;z(i1,4)=k3;z(i1,5)=k4;z(i1,6)=y; i1=i1+1; end end fprintf(‘结果矩阵,第一列为x(n),第二列~第五列为k1~k4,第六列为y(n+1)的结果') z %在命令框输入下列语句 %yy=inline('x+y'); %>> rk(yy,0,1,0.2,0,1) %将得到结果 %结果矩阵,第一列为x(n),第二列~第五列为k1~k4第六列为y(n+1)的结果 %z = % 0 1.0000 1.2000 1.2200 1.4440 1.2428 % 0.2000 1.4428 1.6871 1.7115 1.9851 1.5836 % 0.4000 1.9836 2.2820 2.3118 2.6460 2.0442 % 0.6000 2.6442 3.0086 3.0451 3.4532 2.6510 % 0.8000 3.4510 3.8961 3.9407 4.4392 3.4365 % 1.0000 4.4365 4.9802 5.0345 5.6434 4.4401

相关主题
文本预览
相关文档 最新文档