博客小白,第一次用这样的形式记录自己的学习,这学期的专业课作业需要学习使用Matlab和LaTeX,进行对矩阵的处理和数学公式的编辑排版,所以就从Matlab开始吧!! (PS:本来以为菜鸟教程和W3School那种网站会有教程。。找了一圈发现都没有,就跟着大佬们的博客学着了)
这就是我的Matlab界面~ 运行MATLAB程序有两种方式:命令行式的和文件式的。这里先学习命令行式的。
命令行自动输出name变量的值
注意
这里定义变量只能使用单引号,不能使用双引号 (后面会给出说明);语句末尾不加分号,这样确保命令行以交互方式执行,即每次输入都会相应输出。如果在声明语句的末尾加上分号(;),语句会给name变量赋值,但命令行不会输出: 也可以给变量命名为数字类型: >> a = 50; >> b = 50; >> sum = a + b;此时工作区的变量如下:
可以删除已经声明的name变量,此时工作台不会有name变量。
如果试图访问不存在的变量,控制台会提示未定义:注意到这里只是删除了a,而没有删除由a定义得到的sum使用clear而不指定任何变量,则会将所有已经定义的变量删除使用clc指令可以清除命令行中的所有指令(不清除变量),可以用来清理界面~
使用who和whos语句可以对当前所有变量进行查询和展示:
who语句简单查询当前变量名whos语句查询当前所有变量名和信息(长度、类型、存储空间大小等)MATLAB中的数据类型有:
数值型字符数组结构函数句柄默认情况下,MATLAB 以双精度浮点形式存储所有数值。
整数 分为有符号整数(int4,int8,int16,int32)和无符号整数(uint4,uint8,uint16,uint32)。后面的数字代表所占的bit位数。
浮点数 分为单精度浮点数(single,4字节)和双精度浮点数(double,8字节)。
复数 复数的构造函数为complex(a,b),表示形式为a+bi的复数。
可以通过
real()函数返回实部imag()函数返回虚部abs()函数返回模长conj()函数返回共轭复数类型转换 MATLAB可以使用诸如uint8()的函数进行强制的类型转换:
需要注意: ①越界的数据进行强制类型转换会直接转换为上/下界 ②single类型的数据不能直接与整数类型的数据运算 ③double类型的数据与其它类型的数据运算得到的结果强制转换为其它类型
创建字符:
>> c = 'Hello, world!';关于字符和字符串,还有很多的函数和操作,因为主要以数学工具为主,这里不再赘述~
创建简单的一维数组,元素间可以用空格或者逗号分隔:
>> a = [1 2 3 4]; >> b = ['a','b','c'];创建二维数组,也就是矩阵,各行用分号分隔:
>> matrix_a = [1 2 3; 4 5 6; 7 8 9];与C语言类似,创建结构可以以下面两种方法,一种是直接指定结构体的属性,一种是使用struct()函数(推荐):
创建后的结构体可以直接访问属性:
MATLAB中的函数句柄相当于JavaScript,C++等语言中函数指针或者对象。定义一个函数句柄的常用方法:
>> handle = @函数名