第一章 matlab环境
format compact
format = format loose
辨析:
clc
clear
留有空格是好的
a除以b
写作:a / b 右除,斜杠
b除以a
写作:a \ b 左除,反斜杠
右除运算级高于左除
who
显示所有变量的名称
whos
显示的更多
...
省略号表示续行输入 = shift + enter
四位 short
(默认)
format long
format bank(财务)
format short e 科学计数法
format rat 比值
pi
exp(1)
sqrt()
log(x) = ln(x)
log10(x) = lg(x)
cos(pi / 4)
atan(pi / 3)
i
% example1.m
% script file example1.m to compute exponential of a set of numbers
x = [1:2:3:4];
y = exp(x)
>> example1
exit
quit
第二章 向量与矩阵
向量 一维数组
列向量
a = [2; 1; 4]
数乘
b = 3 * a
行向量
v = [2 0 4]
v = [2, 0, 4]
转置
y = a'
从已存变量创建大变量
D = [A; B] % 由列向量创建
T = [R, S] % 由行向量创建
创建等差元素向量
x = [0:2:10]
y = exp(x)
y = x.^2 % 必须加上点号???
`y = [100:-5:80]`
% 创建等差元素向量
linspace(a, b) % 默认100个
linspace(a, b, n) % n个
对数值间隔相同
logspace(1, 3, 3)
10 100 1000
特征化向量
最长的部分元素数目
length(A)
最大元素
max(A)
最小元素
min(A)
向量的模
sqrt(sum(J.*J))
向量的共轭复数向量
v = conj(u)
复数向量的模
sqrt(sum(v.*u))
向量的数量积和向量积
点乘
dot(a, b)
叉乘
cross(A, B) % 至少三维???
引用向量元素
v(i) % v[i]
v(:) % 列出向量的所有元素
A(4:6) % 部分复制出一个新向量
矩阵的基本操作
转置会自动计算复数的共轭值
转置矩阵而不计算共轭值(.')
D = C.'
矩阵的数乘(.*)
C = A .* B
矩阵相乘(m*p,p*n)
A*B
把一个数加到向量上
2 + A
等长数组右除
A ./ B
等长数组左除
A .\ B
数组元素平方
B .^2
特殊类型矩阵
n*n
单位矩阵
eye(n)
零矩阵
zeros(n), zeros(m, n)
全一矩阵
ones(n), ones(m, n)
引用矩阵元素
A(2, 3)
第i列所有元素
A(:, i)
第i, j之间所有元素
A(:, i:j)
删除第i行
A(i, :) = []
复制A矩阵的第1行4次创建一个新矩阵
E = A([1, 1, 1, 1,], :)
引用两次A的第1行创建新矩阵
F = A([1, 2, 1], :)
行列式与线性方程组求解
计算矩阵的行列式
det(A)
计算方程必须是左除 (Ax = b)
A \ b
求矩阵的秩
rank(A)
当且仅当rank(A) = rank(Ab)时方程组有解.如果秩等于n,那么方程组有唯一解,如果秩小于n,那么方程组有无数解。
增广矩阵
[A b]
矩阵的逆A^(-1)
inv(A)
如果det(A)=0,那么逆矩阵不存在,c称该矩阵为奇异矩阵。
若Ax = b, x = inv(A)*b
(广义逆矩阵)方程数比未知数个数少
x = pinv(A)*b
简化阶梯矩阵
rref(A)
魔方矩阵(n*n,1~n^2,行元素之和等于列元素之和)
magic(5)
矩阵分解
LU(三角),QR(正交三角),SVD(奇异值)
[L, U] = lu(A)
x = U\(L\b)
第三章 绘图与图形
2D绘图基础
x = [0:0.1:10];
y = cos(x);
plot(x, y)
为坐标轴添加标签
xlabel('x')
plot(x, y), xlabel('x'),ylabel('cos(x)')
更多2D绘图选项
fplot绕过间隔,尽可能的绘制精确的图像
格式
fplot(‘function string’, [xstart, xend])
标题
title(‘string’)
!!当一个函数是有两个或者更多函数相乘构成时,不要忘记在相乘时加上"."以便告诉matlab是对两个数组相乘。
fplot不用考虑这个问题
网格
grid on
坐标轴命令
axis equal,x轴y轴间隔相等
在同一图像中显示多个函数
f = exp(-t);
g = exp(-2*t);
plot(t, f, t, g, ‘–’)
- 实线 '-'
- 虚线 '--'
- 虚点线'-.'
- 点线 ':'
添加图例
>> plot(