函數norm
X為向量,
n = norm(X) % 即求歐幾理德範數(Euclidean norm)
n = norm(X, inf) % 即求無窮範數(maximum norm)
n = norm(X, 1) % 即求1-範數
n = norm(X, -inf) % 即求向量X的元素的絕對值的最小值
n = norm(X, p) % 即求p-範數,所以norm(X, 2) = norm(X)
矩陣的範數
A為矩陣,
n = norm(A) % 求歐幾理德範數(Euclidean norm),等於A矩陣的最大奇異值(singular value)
n = norm(A, 1) % 求A的列向量的1-範數中的最大值
n = norm(A, 2) % 求A的歐幾理德範數(Euclidean norm),等同於norm(A)
n = norm(A, inf) % 求行範數,等同於A的行向量的1-範數中的最大值,即: max(sum(abs(A')))
n = norm(A, 'fro') % 求A矩陣的Frobenius範數
矩陣的p階範數估計需要自己寫程式求得,
計算公式舉例如下,
a = magic(3)
sum(sum(abs(a)^4))^(1/4)
a =
8 1 6
3 5 7
4 9 2
ans =
19.7411
註一:
p階範數公式:
註二:
Matlab的magic square函數
M = magic(n)
returns an n-by-n matrix constructed from the integers 1 through n^2 with equal row and column sums.
The order n must be a scalar greater than or equal to 3.
Tips:
A magic square, scaled by its magic sum, is doubly stochastic.
Examples:
The magic square of order 3 is
M = magic(3) M = 8 1 6 3 5 7 4 9 2
This is called a magic square because the sum of the elements in each column is the same.
sum(M) = 15 15 15
And the sum of the elements in each row, obtained by transposing twice, is the same.
sum(M')' = 15 15 15
This is also a special magic square because the diagonal elements have the same sum.
sum(diag(M)) = 15
The value of the characteristic sum for a magic square of order n is
sum(1:n^2)/n
which, when n = 3, is 15.
Algorithm:
There are three different algorithms:
-
n odd
-
n even but not divisible by four
-
n divisible by four
To make this apparent, type
for n = 3:20 A = magic(n); r(n) = rank(A); end
For n odd, the rank of the magic square is n. For n divisible by 4, the rank is 3. For n even but not divisible by 4, the rank is n/2 + 2.
[(3:20)',r(3:20)'] ans = 3 3 4 3 5 5 6 5 7 7 8 3 9 9 10 7 11 11 12 3 13 13 14 9 15 15 16 3 17 17 18 11 19 19 20 3
Plotting A for n = 18, 19, 20 shows the characteristic plot for each category.
Limitations:
If you supply n less than 3, magic returns either a nonmagic square, or else the degenerate magic squares 1 and [].