任何变量在MATLAB中都是以数组形式存储和运算。
MATLAB中使用方括号([ ])给出所有数组的元素,同一行中的元素间用逗号( , )或者空格分隔,不同行之间用分号( ; )隔开。
空数组可以用于数组声明,数组清空,以及各种特殊的运算场合。
指令 clc 清空屏幕 ;clear 清空工作区 ;常用指令 clc;clear
‘ =‘ 赋值符号; ‘ ==‘ 等于符号;
重复上一条命令 向上的方向键 Pgup
圆周率 pi; 虚数i或j; 表达式中的*不能省略
末尾加‘ ;’号,不输出结果;
注释语句 ctrl+R;反注释 ctrl+T;
常量输入 log32=ln32; log2(32)=5; log5(4)=ln4/ln5
创建一维数组等差数列:Var=start_var : step : stop_var
一维行向量=开始元素:步长:最终元素(step默认为1)
Var=linspace(start_var, stop_var , n)
一维行向量=(开始元素,最终元素,n个元素的等差)(n默认为100)
创建一维等比数列:Var=logspace(start_var, stop_var , n)
需要把start_var和stop_var转化成log10(start_var)和log10(stop_var),n默认为50。
创建二维数组时,要保证每一行和每一列有相同数目的元素。可以利用冒号和函数的方法。矩阵A*B 是矩阵乘;A.*B 矩阵A,B对应相乘;
同类型的矩阵对应元素之间的乘除法使用 .* ./
当每个元素同时乘方时,只能用 .^ 如:A.^2;
输出函数 fprintf(‘A=%g\n’,a) %g格式控制 把0去掉
函数disp(A) 自动加回车符
输入函数 input(’please enter A:\n’);
函数mod判断奇偶性Mod(i,2)==1 奇数;
Mod(i,2)==0 偶数;
合并函数 stract(str1,str2,……); [str1 str2 ……];
函数num2str 将数字转换成字符串
函数 sum 无论行向量还是列向量都是直接求和
对于矩阵 a=sum(A)或a=sum(A,1)对列求和,得到行向量;
b=sum(A,2)对行求和,得到列向量;
c=sum(A(:))或a=sum(sum(A)) 对整个矩阵求和;
B=repmat(A,m,n) 将矩阵A复制m*n,B由m*n个A平铺而成;
函数后面有括号,括号里面可以带参数,函数可以带返回值;
[r,c]=Size(A) 返回数组的行数和列数;
Ndims(A) 返回A数组具有的维度;
Whos 返回当前工作区各变量的详细信息;
Syms 用于定义变量
A=exp(X) 计算每一个元素的指数
B=expm(X) 计算矩阵的指数 X矩阵必须为方阵
C=triu(X) 将X变为上三角矩阵
D=logm(X) 取对数 是指数的逆运算
创建复数 C=complex(a,b)
Y=conj(X) X的共轭复数
求矩阵的模 Y=abs(X)
函数subs(X,old,new) 将表达式X中的变量old替换成new
函数factor(x) 表达式x因式分解 ,大于252的因式分解使用语句factor(sym(‘x’))
函数expand(x) 表达式x展开
函数collect(x,v) 将x中的同类项含v的合并
函数simplify(x) 将x进行化简
函数[R,HOW]=simple(x) 化简结果为R 化简方式为HOW
函数[N,D]=numden(x) 将x通分 返回分子N,分母D
符合函数 compose 反函数finverse
Matlab 二维画图 plot(x1,y1,’green-o’,x2,y2,’red–'……)
Matlab 三维画图 plot3(x,y,z) 对应的每个点连接成线
Matlab 画直方图 bar(y,x)
Matlab画曲面 surf(x,y,z)
Matlab画图命令Axis equal 单位长度相同;
hold on 保留上一次的图形;
Grid on 背景网格;
title(‘x^2’) 加x^2的标题;
Xlabel(‘月份’) x轴标题为月份;
ylabel(‘销量’) y轴标题为销量;
Subplot(2,3,1) 将画图窗口分为2*3个窗口,再第一个窗口画图;
Matlab求取特征值和特征向量E=eig(A) A的全部特征值构成列向量E
[V,D]=eig(A) A的全部特征值构成对角阵D,A的特征向量构成V的列向量;
函数find的基本用法返回向量或矩阵中不为0的元素的位置索引;
Ind=find(x,2) 返回前两个不为0元素的位置;
如果是矩阵,按列存储;
[r,c]=find(x) 找出非0行对应的行号和列号;
循环语句loop for,while不要忽悠最后的end;
条件语句 if 不要忽悠最后的end;
求解最大公约数