How do I supply different constants into a function of a loop?
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Amanda Liu
am 16 Jun. 2021
Bearbeitet: Amanda Liu
am 16 Jun. 2021
My code is currently supplying 2 constants of A only. How do I supply another 2 constants of B into the same function?
n=30;
% Initialization
T=zeros(n,n);
T(1,:) = 410; % Top
T(end,:) = 420; % Bottom
T(:,1) = 400; % Left
T(:,end) = 400; % Right
T_old = T;
% Constants of A
k1 = 0.02;
k2 = 0.33;
% Constants of B
% k1 = 0.04;
% k2 = 0.67;
for k = 1:20 %time steps
for j = 2: (n-1)
for i = 2: (n-1)
T(i,j) = T_old(i,j)*(1-2*k1-2*k2)+k1*(T_old(i-1,j)+T_old(i+1,j))+k2*(T_old(i,j-1)+T_old(i,j+1));
end
end
T_old = T;
end
4 Kommentare
Akzeptierte Antwort
Walter Roberson
am 16 Jun. 2021
Start with the code I posted in response to another one of your Questions, https://www.mathworks.com/matlabcentral/answers/857275-loop-never-stops#answer_725790
and subs() different k1, k2 values as desired.
If you were careful enough about how you proceeded, you could create 2D array of combinations of k1, k2 values, move those into the 3rd and 4th dimension, and subs() once, to get a single 4D array.... though visualizing the result could be tricky!
5 Kommentare
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!