I would like to create a for-loop for a vector T1 consisting of 21 elements where all are zero except the first, in order to get T2, which also has 21 elements, (temperature elements).

2 Ansichten (letzte 30 Tage)
This with the formula: Ti(t+0.28) = 0.5*(T(i+1)-2*Ti+T(i-1)). My code right now is:T1=zeros(21); T1(1)=22; T2=linspace(0,0.3,21); But I got no clue how to write the for-loop in this case. Greatful for help
  4 Kommentare
sixwwwwww
sixwwwwww am 10 Okt. 2013
Dear still your question is not that clear can you please explain what is the relation between T1, T2, t, Ti?
Gustaf
Gustaf am 10 Okt. 2013
I'm sorry. T1 is the old temperature, storing the temperatures (22,0,...,0) of the 21 points, and T2 stores the new temperatures at the new time, t is the time, and i is the point 1:21. T is a function of t and the position i. So Ti is the temperature at point i.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

sixwwwwww
sixwwwwww am 11 Okt. 2013
Dear Gustaf, still I have confusions in understanding the problem. However as I understood I wrote a small code which you can run and then tell me you need this or something else:
T1 = zeros(1,21);
T2 = T1;
T1(1) = 22;
for i = 1:length(T1)
if i == 1
T2(i) = 0.5 * (T1(i + 1) - 2 * T1(i));
else if i < length(T1)
T2(i) = 0.5 * (T1(i+1) - 2 * T1(i) + T1(i-1));
else
T2(i) = 0.5 * (-2 * T1(i) + T1(i-1));
end
end
end
disp(T1)
disp(T2)

Weitere Antworten (0)

Kategorien

Mehr zu Startup and Shutdown finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by