Hello everyone,
I am working on building an energy momentum relationship (E-K diagram) for a semiconductor. I am treating my periodic system with 100 unit cells and so i have a 100-by-100 matrix. The matrix is such that all the diagonal elements look like the same (say 3 3 3 ...... all across the diagonal), all the upper diagonal elements look the same (2 2 .......)and all the lower diagonal elements look the same too. The problem is i havent been able to build my 100 by 100 matrix when the diagonal elements look like say 3 4 5 3 4 5 3 4 5 ............ The same thing goes for the variation in upper and lower diagonal elements. Can anyone please help me what sort of command should i use?

 採用された回答

Seth DeLand
Seth DeLand 2012 年 4 月 5 日

0 投票

The REPMAT and DIAG commands should be able to do what you need:
A = repmat([3;4;5],5,1)
B = diag(A,0)
Check out the example in the documentation for DIAG on how to expand this to tridiagonal matrices.

1 件のコメント

SAZZAD HOSSAIN
SAZZAD HOSSAIN 2012 年 4 月 6 日
Thanks Seth. It works like a charm.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および 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!

Translated by