1.核范数||A|| * 是指矩阵奇异值的和,英文称呼叫Nuclear Norm.
matlab code:
[s, u, v] = svd(A); nulear_norm = sum(diag(s));
========================================================================================
2.matlab乘与点乘的区别 (*与.* ^与.^)
点乘是数组的运算,不加点是矩阵的运算;2 点乘要求参与运算的两个量两必须是维数相同,是对应元素的相乘;
而不加点表示的是矩阵相乘(除的时候通过逆矩阵来实现),要求内维相同,也就是前一个矩阵的列的维数等于后一个矩阵的行的维数。
例如A,B分别为两个矩阵,则:
A.*B表示的是两个矩阵的对应元素相乘,其中生成的同阶矩阵C的对应的矩阵元素为:C(i,j)=A(i,j)*B(i,j);
而如果A*B的话,则是正常的矩阵相乘,并非是对应的元素相乘。这一点相当重要。
举个简单的例子
例如:
x=[1 1;1 1];
>> x.^2
ans =
1 1
1 1
>> x^2
ans =
2 2
2 2
======================================================================================================
3.matlab nargin 用法
nargin是用来判断输入变量个数的函数,这样就可以针对不同的情况执行不同的功能。通常可以用他来设定一些默认值,如下面的函数。
例子,函数test1的功能是输出a和b的和。如果只输入一个变量,则认为另一个变量为0,如果两个变量都没有输入,则默认两者均为0。
function y=test1(a,b)
if nargin==0
a=0;b=0;
elseif nargin==1
b=0;
end
y=a+b;
======================================================================================================
4.matlab 求解矩阵行数和列数的方法:
size(A,1) 表示求解矩阵A的行数 size(A,2) 表示求解矩阵A的列数
======================================================================================================
5.matlab怎么注释掉一段文字:
选定后 ctrl+r和ctrl+t切换
ctrl+r 注释掉一段文字
ctrl+t 取消 注释掉一段文字