Resolva um problema de valor inicial usando a função de Green
Resolva um problema de valor inicial para equação usando GreenFunction.
Primeiro calcule a função de Green.
In[1]:=
![Click for copyable input](assets.pt-br/solve-an-initial-value-problem-using-a-greens-func/In_114.png)
gf[s_, t_] =
GreenFunction[{-u''[t] + u'[t] - 37/4 u[t], u[0] == 0, u'[0] == 0},
u[t], {t, 0, \[Infinity]}, s]
Out[1]=
![](assets.pt-br/solve-an-initial-value-problem-using-a-greens-func/O_61.png)
Defina uma função que representa um termo fonte.
In[2]:=
![Click for copyable input](assets.pt-br/solve-an-initial-value-problem-using-a-greens-func/In_115.png)
f[t_] := Cos[a t]
Fazendo a convolução da função de Green com a função que representa um termo fonte resulta na seguinte solução.
In[3]:=
![Click for copyable input](assets.pt-br/solve-an-initial-value-problem-using-a-greens-func/In_116.png)
sol = Integrate[gf[s, t] f[s], {s, 0, \[Infinity]},
Assumptions -> t > 0]
Out[3]=
![](assets.pt-br/solve-an-initial-value-problem-using-a-greens-func/O_62.png)
Compare com o resultado dado por DSolveValue.
In[4]:=
![Click for copyable input](assets.pt-br/solve-an-initial-value-problem-using-a-greens-func/In_117.png)
DSolveValue[{-u''[t] + u'[t] - 37/4 u[t] == f[t], u[0] == 0,
u'[0] == 0}, u[t], t] // FullSimplify
Out[4]=
![](assets.pt-br/solve-an-initial-value-problem-using-a-greens-func/O_63.png)
Faça um gráfico da solução para valores diferentes do parâmetro .
In[5]:=
![Click for copyable input](assets.pt-br/solve-an-initial-value-problem-using-a-greens-func/In_118.png)
Plot[Table[sol, {a, 1, 4, 0.8}] // Evaluate, {t, 3, 6}]
Out[5]=
![](assets.pt-br/solve-an-initial-value-problem-using-a-greens-func/O_64.png)