目的:研究数据类型, 常量和变量, 字符, 运算符, 赋值语句。要考虑对向量和矩阵进行操作的向量和矩阵命令, 需要对矩阵进行操作。
变量:MATLAB变量是内存区域, 其中包含用户指定名称已知的区域。
有两种类型:
double:-64位(10 ^ -308至10 ^ 308, 具有15至16个有效十进制数字)。
e.g:var=10.5//Real valuevar=10i , var=-4j //Imaginary value var=10+10i
字符:-16位(-32768-32767)
e.g:var='This is a character string';
变量的初始化:
- 赋值语句:最简单, 用于小型数组。
每=表达;
其中var是名称, 而expression是缩放器常数, 数组或约束, 其他变量和数学运算的组合。
每行中的元素数必须相同。同样, 每列中的元素数必须相同。
>
>
var= [3.4]//creates a 1x1 array with value 3.4var = 3.4000>
>
var= [1.0 2.0 3.0]// creates a 1x3 array with value [1 2 3] var=1 2 3>
>
var= [1.0;
2.0;
3.0]// creates a 3x1 array var =123>
>
var= [1, 2, 3;
4, 5, 6]//creates a 2x3 arrayvar =123456>
>
var= [1, 2, 34, 5, 6]//creates a 2x3 arrayvar =123 456>
>
var= []//creates an empty array var = []>
>
var1= [0 1+7]var1 = 08>
>
var2=[var1(2) 7 var1]var2 =8708>
>
var3(2, 3) =5var3 = 000005>
>
var3(3, 3) =6var3 =000005006
- 快捷方式表达式:
>
>
x= [1:2:10]x =13579
快捷方式可以与转置运算符(‘ )结合使用以初始化列向量。
>
>
f= [1:4]'f =1234>
>
g=[1:4]g =1234>
>
h=[g', g']h =11223344
- 内置功能:
零:
>
>
a=zeros (2)a =0000>
>
b=zeros (2, 3)b = 000000>
>
c= [1, 2;
3, 4]c =1234 >
>
d=zeros(size(c))d =0000
一个:0替换为1
>
>
f=ones (4)f =1111111111111111
眼图:生成包含恒等矩阵的数组, 其中所有对角元素为1, 而所有非对角元素为0。
>
>
e=eye(4)e =1000010000100001
键盘输入:input funcn
- var = input(“ 输入输入值” )
- 输入输入值
- var = input(‘ 输入数据’ , ‘ s’ )
- 输入数据3
var = 3
- c(:, :, 1)= [1 2 3; 4 5 6]
- c = 1 2 3
4 5 6 - c(:, :, 2)= 7 8 9
10 11 12
? Eg: a= [1 2 3;
4 5 6;
7 8 9;
10 11 12]a =123456789101112
子阵列
? arr= [1 2 3;
-2 -3 -4;
3 4 5]arr =123-2-3-4345 arr1(1, :)=[1 2 3]? arr1 =123
结束功能:
? arr=[1 2 3 4 5 6 7 8];
? >
>
arr(5:end)ans =5678? >
>
arr(1:2, [1, 4])=[20 21 ;
22 23]arr =20232156782200230000? >
>
arr=[1 2 3 4 ;
5 6 7 8;
9 10 11 12];
? >
>
arr(1:2, 1:2)=1arr =113411789101112
预定义的特定值:
- pi:最多包含15个有效数字
- inf:无穷大
- nan:不是数字
- 时钟:当前日期和时间, 形式为6元素向量, 包含
年, 月, 日和秒 - 日期:字符串格式的当前日期, 例如:2019年1月24日
- eps:Esiton, 即最小差异黑白两无
- ans:用于存储表达式的结果
Disp fn:它接受一个参数数组并在命令中显示该数组的值
windowstr=['the value of pi='num2str(pi)];
disp(str);
带fprintf函数的格式化输出函数:
- 显示一个或多个值以及相关文本, 并允许程序员控制显示值的显示方式
- 语法:fprintf(格式, 数据);
- 例如:fprintf(‘
pi的值=%f \ n’
, pi);
fprintf(‘ pi的值=%d \ n’ , pi);
fprintf(‘ pi的值=%e \ n’ , pi);
? E.g.: =2^ ((8+2)/5)=26(10/5)=2^2=4
阵列运算:
z=1>
>
zz =1234>
>
y=-1y = -1>
>
yy =-13-20>
>
y+zans =0514
基于线性代数的矩阵运算:
Operations | Matlab Form | Comments |
---|---|---|
Array Addition |
a + b | 数组和矩阵加法相同 |
数组减法 | a-b | 数组与矩阵相减相同 |
Array Multiplication | a.*b | 数组乘以元素a和b的元素相乘 |
矩阵乘法 | a*b | 对于矩阵乘法, 矩阵a的列数=矩阵b的列数 |
阵列右划分 | a./b | a和b的逐元素除法 |
阵列左分割 | a.\b | 在Nr中按a和b进行元素除法。 |
矩阵右分区 | a/b | a * inv(b)其中inv表示逆 |
矩阵左除法 | a\b | inv(a)*b |
Array Exponential | a。^ b | a和b的逐元素指数, 即a(i, j)^ b(i, j) |
推荐阅读
- MATLAB在矩阵上的运算
- MATLAB Trapz
- MATLAB控制语句
- MATLAB程序设计环境
- MATLAB辛普森法则
- MATLAB梯形法则
- MATLAB图形用户界面
- MATLAB高斯和高斯-乔丹消除
- MATLAB数值积分(正交)