could you please convert it into a loop

very simple logic but im not getting
n=4
K = [ 1, 2; 3, 4]
K1=zeros(n+1);
K1([1 2],[1 2])=K
K2=zeros(n+1);
K2([2 3],[2 3])=K
K3=zeros(n+1);
K3([3 4],[3 4])=K
K4=zeros(n+1);
K4([4 5],[4 5])=K
L=K1+K2+K3+K4;
how to convert this into loop where we can add more Kn matrices

2 comentarios

Stephen23
Stephen23 el 9 de Mzo. de 2019
Editada: Stephen23 el 9 de Mzo. de 2019
"how to convert this into loop where we can add more Kn matrices"
Do NOT do that. Dynamically accessing variable names is one way that beginners force themselves into writing slow, complex, buggy code that is hard to debug. Read this to know why:
Indexing is neat, simple, and very efficient. You should use indexing, e.g. with a cell array or an ND numeric array.
page vnky
page vnky el 9 de Mzo. de 2019
thanks stephen!! that gave me lot and i got it.

Iniciar sesión para comentar.

 Respuesta aceptada

Guillaume
Guillaume el 10 de Mzo. de 2019
In addition to what Stephen said, it's very easy to create your L for any n, without even a loop:
K = [1 2; 3 4];
n = 5;
L = toeplitz([trace(K), K(2, 1), zeros(1, n-2)], [trace(K), K(1, 2), zeros(1, n-2)]);
L([1, end]) = K([1, end])

1 comentario

page vnky
page vnky el 10 de Mzo. de 2019
wow guillaume, i got one step answer with yours... thanks a lot

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Preguntada:

el 9 de Mzo. de 2019

Comentada:

el 10 de Mzo. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by