matrix inside a matrix

6 vues (au cours des 30 derniers jours)
SAZZAD HOSSAIN
SAZZAD HOSSAIN le 5 Avr 2012
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?

Réponse acceptée

Seth DeLand
Seth DeLand le 5 Avr 2012
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 commentaire
SAZZAD HOSSAIN
SAZZAD HOSSAIN le 6 Avr 2012
Thanks Seth. It works like a charm.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Operating on Diagonal Matrices dans Help Center et File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by