文章目录
MATLAB
(简单的学习,没有深入)
1.简单加减乘除
根据加减乘除运算法则可以进行最直接的运算
与此同时我们来介绍
2.help的用法
help 可以帮助我们了解相关帮助信息
3.数据类型
- 数值类型(整数、浮点数、复数、无穷大和非数值量5种。
3.1整数
----负数整数和零
3.2浮点数
----分为单精度浮点数(4字节)和双精度浮点数(8字节)。MATLAB中默认数值类型是双精度浮点型。可用single函数转换为单精度
3.3复数
----包含实部和虚部如2-3i。在MATLAB中通过赋值语句或函数complex生成复数。
- inf(正无穷大)和-inf(负无穷大)和NaN(not a Namber)不是实数不是复数
3.4逻辑型
用0(true)和1(false)表示,logical()用于获得逻辑类型的数值,
3.5矩阵
1 普通矩阵
2转置矩阵
3拉伸
4逆矩阵
6三维矩阵
7等差矩阵
B=1:2:9 %步长为2 1 3 5 7 9
8重复矩阵
C=repmat(B,3,1) %将B重复三行一列
C=
1 3 5 7 9
1 3 5 7 9
1 3 5 7 9
7全一的矩阵
D=ones(2,4)
D=
1 1 1 1
1 1 1 1
1 1 1 1
9结构体
4.变量的使用
这里需要注意变量在左实数在右
逗号之前的显示结果。分号之前的不显示结果
4.1特殊变量
特殊变量名 | 含义 | 特殊变量名 | 含义 |
---|---|---|---|
ans | 储存计算结果的默认变量名 | i或j | 虚数单位 |
pi | 圆周率 | nargin | 函数的输入变量个数 |
nan或NAN | 不定值,如0/0 | computer | MATLAB运行平台 |
inf或Inf | 无穷大,如1/0 | nargout | 函数的输出变量个数 |
eps | 机器零阀值 | version | MATLAB版本子符串 |
4.2>>iskeyword
输入iskeyword显示MATLAB所有关键字
ans =
20×1 cell 数组
{'break' }
{'case' }
{'catch' }
{'classdef' }
{'continue' }
{'else' }
{'elseif' }
{'end' }
{'for' }
{'function' }
{'global' }
{'if' }
{'otherwise' }
{'parfor' }
{'persistent'}
{'return' }
{'spmd' }
{'switch' }
{'try' }
{'while' }
clc %清除COmmand window中的所有命令
clear all %清除workspace中的所有变量
4.这里有个关于ASCII码的知识
(这里我用的是新建实时脚本类似C语言
注意MATLAB中通过选中右击执行)
另外直接在命令行 窗口也可进行ASCII码的输出
5.矩阵的四则运算
A=[1 2 3 4 ;5 6 7 8 ]
B=[1 1 2 2; 2 2 1 1 ]
C=A+B
C=
2 3 5 6
7 8 8 9
D=A-B
D=
0 1 1 2
3 4 6 7
E=A* B' %矩阵乘转置矩阵
F=A.*B %对应项相乘
G=A/B %A*B的逆矩阵
矩阵下标
A=magic(5)%5行5列的幻方阵
B=A(2,3)%显示第二行第三列的数
c=A(3,:)%显示第三行的数
[m,n]=find(A>20)%找到比20大的数
6.程序结构
6.1for循环结构
先选中执行再在命令行输入sum
九九乘法表
6.2while
6.3 if end
6.4 if…else…and
6.5 switch…case…end
switch 表达式(数值或字符串)
case数值或字符串1
语句体1;
case数值或字符串2
语句体2
.
.
.
otherwise
语句体n;
end
7.二维平面绘图
%二维平面绘图
x=0:0.01:2pi;
y=sin(x);
figure%建立一个幕布
plot(x,y)
title(‘y=sin(x)’)
xlabel(‘x’)%为x轴添加标签
ylabel(‘sin(x)’)
xlim([0 2pi])%设置想轴坐标范围使其美观
颜色选项参数
颜色 | 字符 | 颜色 | 字符 |
---|---|---|---|
红 | r | 粉红 | m |
绿 | g | 青 | c |
蓝 | b | 白 | w |
黄 | y | 黑 | k |
如,用红色虚线绘制函数y=x^2,曲线宽度为2
x=-pi:0.1:pi;
y=sin(x);
plot(x,y,'r:>','LineWidth',2)
x=0:0.01:20;
y1=200*exp(-0.05*x).*sin(x);
y2=0.8*exp(-0.5*x).*sin(10*x);
figure
[AX,H1,H2]=plotyy(x,y1,x,y2,'plot');
%AX是纵坐标,H1H2是两条曲线本身
set(get(AX(1),'Ylabel'),'String','Slow Decay')
set(get(AX(2),'Ylabel'),'string','Fast Decay')
xlabel('Time(\musec)')
title('Multiple Decay Rates')
set(H1,'LineStyle','--')%使用--
set(H2,'LineStyle',':')%使用:
8.三维立体绘图
t=0:pi/50:10*pi;
plot3(sin(t),cos(t),t)%相当于x=sin(t) y=cos(t) z=t
xlabel('sin(t)')
ylabel('cos(t)')
zlabel('t')
grid on %加网格线
axis square %使横竖变成正方形
[x,y,z]=peaks(30);
mesh(x,y,z)
grid on
(原码在图上)