У меня есть следующее дифференциальное уравнение, которое я не могу решить.дифференциальное уравнение matlab
Мы знаем следующее о уравнением:
D (г) представляет собой третий класс Полином
D '(1) = D' (2) = 0
D (2) = 2D (1)
U (1) = 450
и '(2) = - K * (u (2) -Te)
Где K и Te - постоянные.
Я хочу приблизить проблему, используя матрицу, и мне удалось решить аналогичное уравнение: с теми же предельными условиями для u (1) и u '(2). В этом уравнении я аппроксимировал u 'и u' 'с центральными отличиями и использовал метод конечных разностей между r = 1 и r = 2. Затем я поместил результаты в матрицу A в matlab и предельные условия в векторе Y в matlab и запустил u = A \ Y, чтобы узнать, как изменяется значение u. Heres мой код MATLAB уравнения мне удалось решить:
clear
a=1;
b=2;
N=100;
h = (b-a)/N;
K=3.20;
Ti=450;
Te=20;
A = zeros(N+2);
A(1,1)=1;
A(end,end)=1/(2*h*K);
A(end,end-1)=1;
A(end,end-2)=-1/(2*h*K);
r=a+h:h:b;
%y(i)
for i=1:1:length(r)
yi(i)=-r(i)*(2/(h^2));
end
A(2:end-1,2:end-1)=A(2:end-1,2:end-1)+diag(yi);
%y(i-1)
for i=1:1:length(r)-1
ymin(i)=r(i+1)*(1/(h^2))-1/(2*h);
end
A(3:end-1,2:end-2) = A(3:end-1,2:end-2)+diag(ymin);
%y(i+1)
for i=1:1:length(r)
ymax(i)=r(i)*(1/(h^2))+1/(2*h);
end
A(2:end-1,3:end)=A(2:end-1,3:end)+diag(ymax);
Y=zeros(N+2,1);
Y(1) =Ti;
Y(2)=-(Ti*(r(1)/(h^2)-(1/(2*h))));
Y(end) = Te;
r=[1,r];
u=A\Y;
plot(r,u(1:end-1));
Мой вопрос, как я могу решить дифференциальное уравнение первого?
Хотя я, вероятно, догадываюсь об этом из контекста, могу я спросить, каков ваш вопрос, и не могли бы вы добавить его на вопрос? – TroyHaskin
@TroyHaskin Сделано! :) –
Gotcha. Первое дифференциальное уравнение на самом деле является кубической кривой. Если я могу просто дать вам ** подсказку **: поскольку вы знаете форму 'D' (кубический) и имеете четыре условия, вы можете символически решить (используя любой инструмент, который вам нравится) для четырех кубических коэффициентов, алгебраически полученных ваше требуемое соотношение без дополнительной информации. – TroyHaskin