欢迎来到天天文库
浏览记录
ID:35604890
大小:227.00 KB
页数:81页
时间:2019-03-31
《数值运算(微分方程求解与函数优化)《第二讲MATLAB的数值计算》》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第二讲MATLAB的数值计算——matlab具有出色的数值计算能力,占据世界上数值计算软件的主导地位数值运算的功能创建矩阵矩阵运算多项式运算线性方程组数值统计线性插值函数优化微分方程的数值解一、命令行的基本操作创建矩阵的方法直接输入法规则:矩阵元素必须用[]括住矩阵元素必须用逗号或空格分隔在[]内矩阵的行与行之间必须用分号分隔》a=1;b=2;c=3;》x=[5bc;a*ba+cc/b]x=5.0002.0003.0002.0004.0001.500》y=[2,4,5;368]y=245368矩阵元素可以是任何matl
2、ab表达式,可以是实数,也可以是复数,复数可用特殊函数I,j输入。大的矩阵可以用分行输入,回车键代表分号。a=[123;456]x=[2pi/2;sqrt(3)3+5i]矩阵元素符号的作用逗号和分号的作用逗号和分号可作为指令间的分隔符,matlab允许多条语句在同一行出现。分号如果出现在指令后,屏幕上将不显示结果。注意:只要是赋过值的变量,不管是否在屏幕上显示过,都存储在工作空间中,以后可随时显示或调用。变量名尽可能不要重复,否则会覆盖。当一个指令或矩阵太长时,可用•••续行冒号的作用用于生成等间隔的向量,默认间隔为1
3、。用于选出矩阵指定行、列及元素。循环语句2.用matlab函数创建矩阵空阵[]—matlab允许输入空阵,当一项操作无结果时,返回空阵。rand——随机矩阵eye——单位矩阵zeros——全部元素都为0的矩阵ones——全部元素都为1的矩阵diag——产生对角矩阵例》eye(2,3)》zeros(2,3)ans=ans=100000010000》ones(2,3)ans=111111》V=[572];A=diag(V)A=500070002例》eye(2)ans=1001》zeros(2)ans=0000》ones(2)
4、ans=1111例在区间[20,50]内均匀分布的5阶随机矩阵。命令如下:x=20+(50-20)*rand(5)此外,常用的函数还有reshape(A,m,n),它在矩阵总元素保持不变的前提下,将矩阵A重新排成m×n的二维矩阵。也可用linspace函数产生行向量。其调用格式为:linspace(a,b,n)其中a和b是生成向量的第一个和最后一个元素,n是元素总数。例》a=linspace(1,10,10)a=12345678910还有伴随矩阵、稀疏矩阵、魔方矩阵(magic)、对角矩阵、范德蒙等矩阵的创建,就不一一介绍了
5、。注意:matlab严格区分大小写字母,因此a与A是两个不同的变量。matlab函数名必须小写。3.用m文件创建矩阵对于比较大且比较复杂的矩阵,可以为它专门建立一个M文件。下面通过一个简单例子来说明如何利用M文件创建矩阵。例利用M文件建立MYMAT矩阵。(1)启动有关编辑程序或Matlab文本编辑器,并输入待建矩阵。(2)把输入的内容以纯文本方式存盘(设文件名为mymatrix.m)。(3)在Matlab命令窗口中输入mymatrix,即运行该M文件,就会自动建立一个名为MYMAT的矩阵,可供以后使用。4.用冒号表达式创建矩
6、阵利用冒号表达式可以线性等间距地建立一个向量来创建矩阵一般格式是:e1:e2:e3其中e1为初始值,e2为步长,e3为终止值。 或者为:(start:step:end)例》a=[1:2:10]a=135795.矩阵的修改直接修改可用键找到所要修改的矩阵,用键移动到要修改的矩阵元素上即可修改。指令修改可以用A(,)=来修改。例如a=[120;305;789]a=120305789a(3,3)=0a=120305780把Matlab工作空间中一些有用的数据长久保存下来的方法是生成mat数据文件。save——将
7、工作空间中所有的变量存到matlab.mat文件中。二、数据的保存与获取默认文件名savedata——将工作空间中所有的变量存到data.mat文件中。savedataab——将工作空间中a和b变量存到data.mat文件中。下次运行Matlab时即可用load指令调用已生成的mat文件。load——loaddata——loaddataab——mat文件是标准的二进制文件,还可以ASCII码形式保存。即可恢复保存过的所有变量矩阵加、减(+,-)运算规则:相加、减的两矩阵必须有相同的行和列两矩阵对应元素相加减。允
8、许参与运算的两矩阵之一是标量。标量与矩阵的所有元素分别进行加减操作。三、矩阵运算2.矩阵乘()运算规则:A矩阵的列数必须等于B矩阵的行数标量可与任何矩阵相乘a=[123;456;780];b=[1;2;3];c=a*bc=143223d=[-1;0;2];f=pi*df=-3.14160
此文档下载收益归作者所有