matlab概述
命令窗口——基本的命令操作
1、声明matlab是对大小写敏感的。
2、clc命令表示清除命令行窗口显示的内容,而不清除工作区的值。而clear是用来清除工作空间的变量,clear直接使用清除工作空间所有变量,clear+变量名 清除指定变量。举个例子(注意观察工作区与命令行窗口的变化):
![](https://i-blog.csdnimg.cn/blog_migrate/9b2c2885ba74683fae23c0a9b57b47ab.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b402c33548970c2fc1aa7cbb7f3a143e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/8d15687994e3946fce54c432c0f494d2.png)
3、使用⬆调回已输入的命令 。
4、who与whos命令是用来显示工作空间的变量,who用来显示工作空间的变量名,whos用来显示工作空间变量的详细信息,如下图所示:
常见通用命令总结(也不是所有都要记,记住常用的就可以了):
其中help通常使用matlab左上角的(虽然是全英的,但是还是官方文档更可靠,也更方便,不要总是百度一下,要上研究生的就更要适应读全英文档,因为第一手科技论文,基本是英文。别问我怎么知道的,我们老师讲的),如下图:
注意:当前目录窗口:指的是matlab运行时的工作目录,并且只有在当前目录下和搜索庐江下的文件、函数才可以被运行和调用,如下图:
![](https://i-blog.csdnimg.cn/blog_migrate/daebe099c3efa1eeba6dab3fc36b2eae.png)
搜索路径: 指Matlab执行过程中对变量、函数和文件进行搜索的路径。
在File菜单中选择Set Path命令或在命令窗口输入pathtool命令,出现搜索路径设置对话框:
功能演示
1、求解如下方程的根(只有红色框里的两条命令):
2、求解如下线性方程组 (只有红色框里的三条命令):
注:inv()函数是矩阵的逆矩阵。
第二种方法,符号计算:
3、求解如下定积分:
4、多项式曲线拟合:
考虑如下x-y一组实验数据:x = [1,2,3,4,5,6,7,8,9,10] y = [1.2,3,4,4,5,4.7,5,5.2,6,7.2]
数值表示、变量及表达式
matlab预定义的变量:
运算符和表达式:
注:对于矩阵而言,左除和右除不同。 乘(*)和点乘(.*)不同,前者对于矩阵就是按照矩阵乘法运算来说,后者就是对应元素相同。因此也有条件的限制,前者的矩阵1的列数和矩阵2的行数相同才可以;后者就是维度完全一致。
优先级:幂最高,然后乘除,再然后加减,如果实在记不住,使用括号。
复数及其运算:
matlab数据及其运算——其中的数据为矩阵
matlab矩阵的表示
我们熟悉的坐标系的原点位于坐标轴的左下角,以(0,0)开始,但是在matlab中坐标轴的原点位于左上角,以(1,1)开始。
数组的概念:
一维:向量vector
二维:矩阵matrix
三维:张量tensor
一维数组的创建
1、使用方括号'[ ]'操作符,向量元素之间使用英文逗号隔开或者使用空格隔开。
2、使用冒号操作符,语法:x = start:increment:end。其中increment即可为正也可为负,当其为负时,start必须大于end,反之同理。
3、利用函数linspace函数,语法:x=linspace(start,end,n)其中start为第一个元素,end为最后一个元素,该函数会生成一个数量为n的数组,其中每个数组之间的间隔是相同的,即生成一个等差数列。
4、使用函数logspace函数, 语法logspace(a,b,n),表示生成长度为n的向量,范围时10^a到10^b。
5、列向量的创建,使用方括号时,使用分号分割行。或者使用 ‘ 将矩阵进行转置。
二维数组的创建
1、由向量构成数组
2、函数方法:
(1) ones函数生成全为1的矩阵,zeros函数生成全为0的矩阵。
(2)reshape函数,注意元素的排列顺序,从上到下按列排列,并且要求元素总数不变。
字符串
如果需要查找有关字符串的内容,可以在命令窗口输入命令help strfun或者help strings。
在matlab中使用单引号来界定一个字符串,可以使用方括号 [ ] 直接连接多个字符串变量,得到一个新字符串变量。并且注意在matlab中,一个字符串被视为一个行向量,字符串中的每个字符包含空格,都以ASCII码的形式存放在行向量中。
可以使用length的命令计算字符串的长度:
数组元素的标识与寻访
1、全下标寻址
2、单下标寻址(方便)
可以自己敲代码试试,第三个元素是多少,看看自己的猜测是否正确?
注意括号的使用
可以敲代码试试不同单下标寻址的方法
并且只要下标值不超过维度,数组元素可以被任意重复访问
根据单下标寻址方法修改对应元素的值