matlab

1.概论

Matlab有五大通用功能:数值计算功能(Nemeric),符号运算功能(Sybolic)(当要求Matlab进行符号运算时,它就请求Malpe计算并将结果返回到Matlab命令窗口),数据可视化功能(Graphic),数据图形文字统一处理功能(Notebook)和建模仿真可视化功能(Simulink)

2.Matlab简介

1.指令行的编辑

Matlab是一种交互式语言,随时输入指令,即时给出运算结果。

2.入门演示

intro↵ demo↵

3. 帮助

1.
helo↵ 帮助总览 help elfun↵ 关于基本函数的帮助信息 helo exp↵ 指数函数exp的详细信息
** 2.lookfor 指令 **
根据用户提供的完整或不完整的关键词,去搜索出一组与之相关的指令
例如:
lookfor interal↵ 查找有关积分的指令 lookfor fourier↵ 查找能进行傅立叶变化的指令
3.超文本格式的帮助文件
在matlab中,关于一个函数的帮助信息可以用doc命令以超文本的方式给出。
如: doc↵ doc doc↵ doc eig ↵ eig求矩阵的特征值和特征向量

4.简单的矩阵输入

1.要直接输入矩阵时,矩阵元素用空格或逗号隔开;矩阵行用分号“;”隔开,整个矩阵放在方括号"[]"里
A=[1,2,3,4,5,6,7,8,9]↵

说明:指令执行后,矩阵A被保存在Matlab的工作间中,以备后用。如果用户不用clear指令清除它,或对它进行重新赋值,那么该矩阵会一直保存在工作间中,知道本Matlab指令窗口关闭为止。
2.矩阵的分行的输入
A=[1,2,3 4,5,6 7,8,9]

5.语句与变量

1.Matlab语句有两种最常见的形式
i)表达式
ii)变量=表达式
2.特殊变量

  • ans 用于结果的缺省变量值
  • pi 圆周率
  • eps 计算机的最小数
  • flops 浮点运算次数
  • inf 无穷大 如1/0
  • NaN 不定量 如0/0
  • i(j) i=j=根号(-1)
  • nargin 所用函数的输入变量数目
  • nargout 所用函数的输入变量数目
  • realmin 最小可用正实数
  • realmax 最大可用正实数

6.数据结构:向量,矩阵,结构数组和细胞数组

1.向量的转置
z=[1+j,2+pi*i,-sqrt(-1)]' z= 1.000-1.000i 2.000-3.1416i 0 + 1.000i
当对复数向量进行转置操作时,可以得到其共轭转置向量,z‘(非共轭转置向量)
2.产生一个行向量
t=[0:0.1:10] 产生从0到10的行向量,元素之间间隔为0.1
t=linspace(n1,n2,n); 产生n1和n2直接线性均匀分布的n个数(缺省n时,产生100个数)
t=logspace(n1,n2,n) (缺省n时,产生50个数)
3.who,whos,size和length是对提供工作空间变量信息很有用处的四个命令

  • who 执行该命令可列出存储空间的所有变量
  • whos 显示所有的变量,变量所占的字节数及该变量是否是实数
  • size(a) 执行该命令可以得到矩阵a的行数和列数
  • length(a) 执行该命令后,屏幕上显示出向量a的长度。如果a是矩阵,则显示的参数为行数列数中的最大数。
    4.矩阵的标号
    A(m,n)表示矩阵A的第m行,第n列的元素
    A(1:2,1:3)表示矩阵A的从第一行到第二行,从第一列到第三列的所有元素;
    A(:)可以得到一个长向量,该向量的元素是按列一一叠加在一起的。
    例如
    a= [1 2;3 4];a(:)↵
    ans =1 3 2 4
    矩阵的下标也可以是向量。例如
    b=a(x,y)↵; 可以得到一个矩阵b。a的行标来自向量x,而列标来自向量y。
    例如,矩阵a有n列,那么b=a(:,n:-1:1)将使矩阵a按列的逆序排列
    5.特殊矩阵
    i) 单位矩阵
    eye(m),eye(size(a)) 可以得到与矩阵a同样大小的单位矩阵,eye(m,n)可得到一个可允许的最大单位矩阵而其余处补0
    ii)所有元素为1的矩阵
    ones(n),ones(size(a)),ones(m,n)
    iii)所有元素为0的矩阵
    zeros(n),zeros(m,n)
    iv)空矩阵是一个特殊矩阵,这在线性代数中是不存在的。
    例如: q=[ ]
    矩阵q在工作空间之中,但它的大小为零。通过空阵的方法可以删去行与列。例如a=rand(5);a(:,1:3)=[ ]
    第一条指令执行后得到一个5×5的矩阵;第二天指令将矩阵a的前三列删除。
    v)对角矩阵
    当v是向量时,diag(v)得到以v的元素为对角线上元素的对角矩阵;
    当v是矩阵时,diag(v)得到一个列向量,其元素为矩阵v对角线上的元素,diag(v,1)得到矩阵v对角线上移一行的元素组成的列向量,diag(v,-1)得到矩阵v对角线下移一行的元素组成的列向量。
    6.字符串要用单引号。
    disp('text string') disp显示命令
    7.结构数组
    有时需要将不同的数据类型组合成一个整体,以便于引用。这些组合在一个整体中的数据是相互联系的。
    下面简单结束结构的定义与引用
    i) 结构数组的定义
    定义结构数组可以采用两种方法:用赋值语句定义和用函数struce定义
    赋值语句定义结构,结构名和属性名用"."分开。
    student.name='John Doe' student.num=123456 student.test=[79 75 73;80 78 79;90 85 80];
    再键入以下三行可给该结构数组增加一个元素
    student(2).name='Ann Lane' student(2).num=123422; student(2).test=[70 76 73;80 99 79;90 85 80;80 85 86];
    函数struct定义结构数组,格式为:
    结构数组名=struct('属性1',’属性值1‘,'属性2',‘属性值2’,...)
    ii)结构数组属性值的修改、设置和获取
    str=student(2).name, 取出第二个元素的name属性的值
    n=student(2).test(4,2),取出第二个元素的值中第四行第二列上的数。
    student(2).test(4,2)=0修改第二个元素test的值中第四行第二列上的数的值
    关于结构数组有如下函数
    函数名 作用
  • struct 生成和转换为结构数组
  • fieldnames 查询结构数组的属性名
  • getfield 查询结构数组的属性值
  • setfield 设置结构数组的属性值
  • rmfield 删除属性
  • isfield 检查是否为数组的属性
  • isstruct 检查数组是否为结构型
    8.细胞数组
    细胞数组也是matlab里的一类特殊的数组。在matlab里,由于有细胞数组这个数据类型,才能把不同类型,不同维度的数组组成一个数组。
    细胞数组的每一个元素可为类型不同、维度不同的矩阵、向量、标量或多维数组,所有元素用大括号括起来。如矩阵A=[1 2 3 4;2 3 4 5;3 4 5 6]
    c={A,sum(A),sum(sum(A))} 得到一个1×3的细胞数组
    关于细胞数组有如下函数
    函数名 作用
    celldisp 显示细胞数组的内容
    cell 生成细胞数组
    cellplot 用图形方式显示细胞数组
    num2cell 把数值转换为细胞型
    deal 输入和输出的匹配
    cell2struct 把细胞数组转换成结构数组
    struct2cell 把结构数组转换为细胞数组
    iscell 检验数组是否为细胞型
    i) 细胞数组的生成
  • 生成:
  • 赋值语句直接生成;
  • 先用cell函数预先分配数组,然后再对每个元素赋值
  • 赋值:
  • 采用数组元素的下标赋值
    A{1,1}=[1:5;6:10];
    A{1,2}=['Anne cat'];
    A{2,1}={3+7i};
    A
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,319评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,801评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,567评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,156评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,019评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,090评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,500评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,192评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,474评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,566评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,338评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,212评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,572评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,890评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,169评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,478评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,661评论 2 335

推荐阅读更多精彩内容

  • 显示中文帮助的方法 预设→常规→帮助→在mathworks.com网站上(需要Internet连接)→语言(简体中...
    VeyronC阅读 2,424评论 0 34
  • MATLAB基本数据类型 双精度/单精度/整形 数据的范围 务必注意溢出的问题。 函数 类型检查 class is...
    hainingwyx阅读 5,606评论 0 6
  • 数组运算 http://wenku.baidu.co...
    HOWEVER光阅读 851评论 0 2
  • 生命犹如渡过一重大海,我们相遇在这同一条窄船里。死时 我们同登彼岸,又向不同的世界各奔前程。一旦命运要你繁华,便美...
    健坤媛阅读 368评论 0 0
  • 婉华的婆婆最近一直住院,她基本不来店里了,王丹一如往常的从早忙到晚,周末果果来了也被带到店里写作业,两周过去了,叶...
    清风禅阅读 180评论 0 0