How to write diagonal matrix in deep learning array
古いコメントを表示
I have this matrix
D = zeros(M, M + 1);
D(1:end-1, 1:end-2) = diag((1/(2*h)) * ones(M-1, 1));
D(1:end-1, 3:end) = diag((-1/(2*h)) * ones(M-1, 1));
D(end, end-1:end) = (1/h) * [1,-1];
and I am writing this in a deep learning dlarray. But I am getting this below error
Undefined function 'diag' for input arguments of type 'dlarray'.
what is the best or another way to write this diagonal matrix for dlarray?
2 件のコメント
"what is the best or another way to write this diagonal matrix for dlarray?"
Simply define the array first as you have and then convert using dlarray. No need of using a for loop.
M = 10;
h = 5;
D = zeros(M, M + 1);
D(1:end-1, 1:end-2) = diag((1/(2*h)) * ones(M-1, 1));
D(1:end-1, 3:end) = diag((-1/(2*h)) * ones(M-1, 1));
D(end, end-1:end) = (1/h) * [1,-1];
D
E = dlarray(D)
Muhammad
2024 年 1 月 17 日
採用された回答
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Deep Learning Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!