Info

Questa domanda è chiusa. Riaprila per modificarla o per rispondere.

About looping a matrix

2 visualizzazioni (ultimi 30 giorni)
Ming Ki Lee
Ming Ki Lee il 27 Gen 2017
Chiuso: MATLAB Answer Bot il 20 Ago 2021
L=45;
tmax=60;
U=0.8;
D=1.6;
Xs=8;
Cs=10;
Xflux=36;
dt=6.328125;
dx=4.5;
mx=L/dx;
B = zeros(mx,1);
C = zeros(mx,mx);
C1 = zeros(mx,mx);
C2 = zeros(mx,mx);
t = 0 : dx : L;
n = 0:length(t)-1;
nvalue = interp1( t, n, Xs, 'nearest');
nvalue1=nvalue;
B(nvalue1,1)=Xs;
C1(1,1)=1;
for k=2:mx-1
nvalue1=k+2;
C1(k,nvalue1-3) = -D*dt/(dx)^(2)-U*dt/(2*dx);
C1(k,nvalue1-2) = 2*D*dt/(dx^2)+1;
C1(k,nvalue1-1) = -D*dt/(dx)^(2)+U*dt/(2*dx);
end
C1(mx,mx-1) = (-U*dt)/dx;
C1(mx,mx) = (U*dt)/dx+1;
Z=inv(C1);
C=Z*B;
end
So I got the answer of C by inverse(C1)*B
but I want to loop the inverse matrix(C1) to multiply the new b every time. for example, I want to loop this for 50 times. How to write this???
  1 Commento
KSSV
KSSV il 27 Gen 2017
Modificato: KSSV il 27 Gen 2017
Loop with respective to what? I guess it is Xs..

Risposte (1)

adi kul
adi kul il 27 Gen 2017
add a for loop. something similar to:
for i=1:50
C(i)=Z(i)*B(i)
.
.
.
end

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by