Основная цель: решить и построить решение ОДУ D2f=a1*f+a0
куда
a1=k*H*H/c;
a0=-H*H*tau0/c;
c=0.1;
k=1;
H=1;
tau0=1;
Я использую команду dsolve, чтобы найти решение с указанными выше значениями констант.
sol=dsolve('D2th=a1*th+a0','th(0)=0','th(1)=0','t');
Вместо того, чтобы получить решение с заданными значениями констант, я получаю решение как:
sol =
(exp(a1^(1/2)*t)*(a0 - a0*exp(-a1^(1/2))))/(a1*(exp(a1^(1/2)) - exp(-a1^(1/2)))) - (exp(-a1^(1/2)*t)*(a0 - a0*exp(a1^(1/2))))/(a1*(exp(a1^(1/2)) - exp(-a1^(1/2)))) - a0/a1
Мне нужно, чтобы MATLAB автоматически заменял значения констант (a1, a0 и т. д.), а затем решал уравнение, чтобы результаты отображались в полной упрощенной форме.
Во-вторых, я хочу построить решение приведенного выше ОДУ следующим образом:
t0=0;
tf=1;
N=100;
h=(tf-t0)/N;
t=t0+(0:N)'*h;
plot(t,sol)
Я пробовал plot(t,sol(t)), но ничего не работает.
Краткое содержание вопроса: сначала решите ОДУ, заменив значения констант в решении, а затем постройте решение относительно вектора-столбца t.