Solve for diagonal matrix D by minimizing the operator norm in Matlab
1 回表示 (過去 30 日間)
古いコメントを表示
![Capture22.PNG](https://www.mathworks.com/matlabcentral/answers/uploaded_files/199548/Capture22.png)
Say that the size of matrix is 576x576 and size of F is1296x576.
Which matlab function can I use to solve this problem?
1 件のコメント
採用された回答
Bruno Luong
2018 年 12 月 21 日
fminunc, fmincon and family.
8 件のコメント
Bruno Luong
2019 年 1 月 9 日
編集済み: Bruno Luong
2019 年 1 月 9 日
No. The standard math definition of VECTORIZE the matrix is
v = M(:)
M = reshape(v,[m,m])
Here
v = diag(M)
M = diag(v)
This is NOT vectorize.
FMINCON don't do anything beside minimize an objective function that user defines and provides. In the case Torsen's code
norm(A-F'*diag(D)*F,2)
is matrix 2-norm (maximum singular value).
Torsten's code is correct and do not need any modification.
You however needs to read careful the doc of fminunc, diag, norm.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Operating on Diagonal Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!