>> A=100;%在matlab中,几乎所有变量都用矩阵的形式来存储
>> whos%查看目前贮存变量的详细情况
Name Size Bytes Class Attributes
A 1x1 8 double
%存储格式为1*1的矩阵,占用8个字节,数据类型是双精度浮点数
>> who%查看变量贮存情况
您的变量为:
A
MATLAB常用基本数学函数
函数 | 说明 | 函数 | 说明 |
abs(x) | 绝对值或者向量的长度 | rat(x) | 将实数转化为分数表示 |
angle(z) | 复数z的开角 | sign(x) | 符号函数 |
sqrt(x) | 开方 | rem(x,y) | 求x除以y的余数 |
real(x) | 复数x的实部 | gcd(x,y) | 整数x,y的最大公因数 |
imag(x) | 复数x的虚部 | lcm(x,y) | x,y的最小公倍数 |
conj(x) | 复数x的共轭复数 | exp(x) | 自然对数 |
round(x) | 四舍五入取最近的整数 | pow2(x) | 2的指数 |
fix(x) | 无论正负(向原点方向取最近的整数) | log(x) | 以e为底的对数 |
floor(x) | 用舍去法取最近的整数 | log2(x) | 以2为底的对数 |
ceil(x) | 用进1法取最近的整数 | log10(x) | 以10为底的对数 |
不熟悉函数演示
>> z=1+2*I%创建一个复数
z =
1.0000 + 2.0000i
>> angle(z)%求复数z的相角
ans =
1.1071
>> real(z)%返回复数的实部
ans =
1
>> imag(z)%返回复数的虚部
ans =
2
>> conj(z)%求共轭复数
ans =
1.0000 - 2.0000i
>> x=3.4575;z=-5.345;
>> round(x),round(z)%四舍五入取整数
ans =
3
ans =
-5
>> fix(x),fix(z)%向原点取整数
ans =
3
ans =
-5
>> floor(x),floor(z)%用舍去法取最近的整数
ans =
3
ans =
-6
>> ceil(x),ceil(z)%用进一法取最近的整数
ans =
4
ans =
-5
>> rem(34,6)%求34除以6的余数
ans =
4
>> gcd(352,658)%求352和658的最大公因数
ans =
2
>> gcd(53,67)
ans =
1
>> lcm(34,67)%求34和57的最小公倍数
ans =
2278
下面列出MATLAB 中常用的三角函数
函数 | 说明 | 函数 | 说明 |
sin(x) | 正弦函数 | sinh(x) | 超越正弦函数 |
cos(x) | 余弦函数 | cosh(x) | 超越余弦函数 |
tan(x) | 正切函数 | tanh(x) | 超越正切汗水 |
asin(x) | 反正弦函数 | asinh(x) | 反超越正弦函数 |
acos(x) | 反余弦函数 | acosh(x) | 反超越余弦函数 |
atan(x) | 反正切函数 | atanh | 反超越正切函数 |
atan2(x) | 四象限的反正切函数 |
下面列出适用于向量的常用函数
函数 | 说明 | 函数 | 说明 |
min(x) | 向量x的元素的最小值 | norn(x) | 向量x 的欧式长度 |
max(x) | 向量x的元素的最大值 | sum(x) | 向量x 的元素总和 |
mean(x) | 向量x的元素的平均值 | prod(x) | 向量x的元素总乘积 |
median(x) | 向量x的元素的中位数 | consum(x) | 向量x的累计元素总乘积 |
std(x) | 向量x的元素的标准差 | dot(x,y) | x,y的內积 |
diff(x) | x与相邻元素的差 | cross(x,y) | x,y的外积 |
sort(x) | 对向量x的元素进行排序 |
>> clear
>> x=randperm(7)
x =
3 4 7 2 6 1 5
>> y=randperm(7)
y =
5 2 6 7 3 4 1
>> min(x)
ans =
1
>> max(x)
ans =
7
>> min(x)
ans =
1
>> mean(x)
ans =
4
>> diff(x)
ans =
1 3 -5 4 -5 4
>> sort(x)
ans =
1 2 3 4 5 6 7
>> norm(x)
ans =
11.8322
>> sum(x)%公式为3+4+7+2+6+1+5
ans =
28
>> prod(x)%公式为3*4*7*2*6*1*5
ans =
5040
>> cumsum(x)%3,3+4,3+4+7,3+4+7+2,3+4+7+2+6,3+4+7+2+6+1,3+4+7+6+2+1+5
ans =
3 7 14 16 22 23 28
>> cumprod(x)%3,3*4,3*4*7,3*4*7*2,3*4*7*2*6,3*4*7*2*6*1,3*4*7*2*6*1*5
ans =
3 12 84 168 1008 1008 5040
>> dot(x,y)%内积
ans =
106
>> cross(x)
输入参数的数目不足。
出错 cross (line 22)
if isvector(a) && isvector(b)
>> cross(x,y)
错误使用 cross (line 25)
在获取交叉乘积的维度中,A 和 B 的长度必须为 3。
>> y=[2,3,4]
y =
2 3 4
>> cross(x,y)
ans =
-1 2 -1
>>