matlab零散知识
command windows中语句后加分号就不回显了;
who %显示所有的变量名称;
whos %显示所有的变量名称和类型以及占用空间;
clear %清除所有变量,也可以清除对应的变量,多个变量之间用逗号隔开;
跨行的表达式可以在上一行用…连接,比如:
a = 1+2+3...
+4+5
e写作exp(1),e^a写作exp(a);
matlab矩阵和向量相关
矩阵的列之间用;隔开,元素之前用逗号隔开,比如:
a = [1,2,3]; %a是行向量
a = [1;2;3]; %a是列向量
矩阵的转置用’,比如:
a = [1,2,3];
b = a'; %b 转置成一个列向量,可以用于矩阵
矩阵拼接,比如:
a = [1;2;3];
b = [4;5;6];
c = [a;b];
输出的c是一个列向量:
c =
1
2
3
4
5
6
比如:
a = [1,2,3];
b = [4,5,6];
c = [a;b];
输出的c是一个3*2的矩阵
c =
1 2 3
4 5 6
等差数列创建行向量,a = [起始:公差:结束],其中包含起始点和结束点,比如:
a = [1:1:10];
a
a =
1 2 3 4 5 6 7 8 9 10
起始点可以小于结束点,表示数据递减,公差要为负数
linspace(1,100) 创建[1,2,3…100]的行向量
linspace(1,100,100) 创建[1,100]之间的包含100个元素的等差数列
lenth(a) 返回矩阵向量的元素个数
max(a),min(a)返回矩阵或者向量中的最大值或最小值
向量和标量的运算
进行向量和标量运算时(向量的每一个元素和标量进行相关的运算),运算符前加.,比如:
a = [1,2,3];
a.^2
ans =
1 4 9
matlab中的进制转换
hex2dec('hex_value')
dec2hex(dec_value)
dec2bin(dec_value)
bin2dec('bin_value')
上面的进制转换函数中入参非十进制的都要加引号,并且不能带前缀,输入可以是标量,也可以是列向量,输出与输入对应.
matlab中的常用命令
输出格式控制
format compact %脚本或命令行窗口中加入这行命令,输出将呈现紧凑格式
format loose %脚本或命令行窗口中加入这行命令,输出将呈现松散格式
format short %/log(M)/log(M)默认,保留小数点后4位,后面的四舍五入
format bank %保留小数点后2位,后面的四舍五入
更多的可以help format查看
matlab常用函数
sqrt(a) %返回a的算数平方根
log(a) %自然对数,相当于ln(a)
log10(a) %以10为底的对数
log2(a) %以2为底的对数
其它底的对数就需要用换底公式logM(N)= log(N)/log(M)
三角函数
角度弧度转换
弧度制中用单位圆弧长度表示角度,180度的圆心角对应pi弧度.
角度制中规定周角的360分之一为1度的角.
弧度转角度,弧度=(角度/180)*pi
radian=(degree/180)*pi
角度转弧度,角度=180*(弧度/pi)
degree=180*(radian/pi)
matlab中的正弦函数
sin(radian) %入参为弧度,反函数asin(*)
sind(degree) %入参为角度,反函数asind(*)
matlab中的余弦函数
cos(radian) %入参为弧度,反函数acos(*)
cosd(degree) %入参为角度,反函数acosd(*)
matlab中的正切函数
tan(radian) %入参为弧度,反函数atan(*)
tand(degree) %入参为角度,反函数atand(*)
matlab中的余切函数
cot(radian) %入参为弧度,反函数acot(*)
cotd(degree) %入参为角度,反函数acotd(*)
复数
a=2+3i可以直接输入复数,等价的有 a=2+3*i; a=2+i*3;但是a=2+i3不能用于输入这个复数
matlab画图
最简单的画图
x = [0:0.1:10]; %x行向量
y = cos(x); %y行向量
plot(x,y); %以x为横坐标,y为纵坐标画图
xlabel('x'),ylabel('y'),title('test'); %设置坐标名称和图名称
类似的有:
stem(x,y);%火柴杆图,,默认顶点是空心的
stem(x,y,'fill');%火柴杆图,顶点是实心的
stem(x,y,'fill','--');%火柴杆图,顶点是实心的+虚线
stem(x,y,'LineStyle','none');%火柴杆图,空心+无线
绘制子图subplot(m,n,p),将画图区分成,m*n个子块,在p处做图,p从1开始
subplot(3,2,4);分成3*2个矩阵块,在第4块画图;
subplot(3,2,4);分成3*2个矩阵块,在第4块画图;
subplot(3,2,[1,2]); %合并1,2块画图