Я не могу придумать правильную формулировку для этого, но я пытаюсь, чтобы мой код запустил цикл, который будет вводить значение X в переменную начального условия.Затем эта переменная вводится в уравнение теплопроводности для построения графика.Из кода я хочу выбрать значение, которое находится в X (i = 51) и построить его как T (x, T1).Как я уже говорил, я не знаю правильной формулировки для поиска возможного решения.Любой совет был бы великолепен!
clear;
clc;
% initialize given variables
A= 0.25;
L= pi;
Nx=101; Nt=10^(-4);
dx=L/(Nx-1);
T1=zeros(1,Nx);
x=linspace(0, L, Nx); %x distance
%Initial condition
%T1 will be the "new" T value and To will be the old
T1= x.*(pi-x);
%For plotting, time starts at 0.
t=0;
for n=1:50
To=T1;
t=t+1;
for i=2:Nx-1
T1(i)=To(i)+Nt *A*((To(i+1)-2*To(i)+To(i-1))/(dx^2))+ sin(5*x(i));
end
%B.C given than @ T(0,t) & T(L,t) = 0
T1(1)=0; T1(end)=0;
figure(1)
plot(x,T1); set(gca, 'ylim',[-110 110]);
ylabel('Temperature along the Rod');
xlabel('Location on the Rod of length Pi');
title(sprintf('Time = %f seconds', t));
pause(0.001);
end
Ожидаемый результат, который я хочу нанести на график, - plot(x(i=51),T1)
, который показал бы изображение, подобное этому.Для этого графика я запустил свой код и изменил i на = 50: 51, чтобы получить необходимые значения для уравнения теплопроводности.Я пытаюсь сделать так, чтобы это отображалось в показанном коде, и мне не нужно переписывать мой код снова и снова, чтобы получить разные графики, потому что я изменяю значения, такие как i или time ect ...