Scriviamo l'equazione che regge il moto
m y''[t] + c y'[t] +k y[t]== Sin[wf t]
ed operiamo le solite sostituzioni
Attenzione: se si usa il simbolo in luogo di ωf la sol2 assume una forma diversa che richede
Transient e Steady diversi; inoltre, dà problemi nel Plot (da indagare meglio).
Nell'eqauzione che segue =
/m.
![[Graphics:../Images/index_gr_87.gif]](../Images/index_gr_87.gif)
![[Graphics:../Images/index_gr_88.gif]](../Images/index_gr_88.gif)
![[Graphics:../Images/index_gr_90.gif]](../Images/index_gr_90.gif)
![[Graphics:../Images/index_gr_91.gif]](../Images/index_gr_91.gif)
Anche se raccoglie in un modo un po' strano la parte con gli Exp ...
i primi due termini vanno a zero per t ->∞; costituiscono la SOLUZIONE TRANSITORIA.
Il terzo termine non si annulla e costituisce la SOLUZIONE STAZIONARIA.
Estraiamo la SOLUZIONE TRANSITORIA
Transient =sol2[[1]]
Estraiamo la SOLUZIONE STAZIONARIA e manipoliamola algebricamente
Steady=Apart[sol2[[2]]]
![[Graphics:../Images/index_gr_96.gif]](../Images/index_gr_96.gif)
![[Graphics:../Images/index_gr_98.gif]](../Images/index_gr_98.gif)
Ora calcoliamo l'ampiezza ( ⩵ guadagno)
![[Graphics:../Images/index_gr_100.gif]](../Images/index_gr_100.gif)
![[Graphics:../Images/index_gr_102.gif]](../Images/index_gr_102.gif)
Sarà utile in seguito per osservare l'andamento del massimo dell'ampiezza
![[Graphics:../Images/index_gr_104.gif]](../Images/index_gr_104.gif)
![[Graphics:../Images/index_gr_106.gif]](../Images/index_gr_106.gif)
La posizione del massimo dell'ampiezza dipende da ζ
![[Graphics:../Images/index_gr_108.gif]](../Images/index_gr_108.gif)
![[Graphics:../Images/index_gr_110.gif]](../Images/index_gr_110.gif)
Usiamo la prima delle due possibilità offerete da Mathematica per calcolare l'Arctan
![[Graphics:../Images/index_gr_112.gif]](../Images/index_gr_112.gif)
Seconda possibilità
![[Graphics:../Images/index_gr_114.gif]](../Images/index_gr_114.gif)
Sotto forma compatta
![[Graphics:../Images/index_gr_116.gif]](../Images/index_gr_116.gif)
![[Graphics:../Images/index_gr_118.gif]](../Images/index_gr_118.gif)
![[Graphics:../Images/index_gr_120.gif]](../Images/index_gr_120.gif)
Per studiarne l'andamento dell'ampiezza, in funzione di ωf, per diversi valori di ζ,
dobbiamo assegnare alcune costanti; osserviamo che, in condizioni statiche, la deflessione
sarebbe /k = 0.2
m=2 (* kg *); k=5 (* N/m *) ;
=1 (* N *);
=
/m (* metro/
*);
//N
Plot[
Evaluate[Table[amp,{ζ,0.1,0.5,0.1}]],
{
,0.1,5.0},PlotRange->All,AxesOrigin->{0.1,0},
AxesLabel->{"
","amp"},
PlotLabel->"Guadagno vs.
",
PlotStyle->Table[RGBColor[2g,1-2g,0],{g,0.1,0.5,0.1}]];
Vediamo come si sposta il max dell'ampiezza in funzione di ζ
Table[{ζ,terzozero},{ζ,0.1,0.5,0.1}]//TableForm
0.1` | 1.565247584249853` |
0.2` | 1.51657508881031` |
0.30000000000000004` | 1.4317821063276353` |
0.4` | 1.3038404810405297` |
0.5` | 1.118033988749895` |
Esaminiamo l'andamento della fase in funzione di ωf per diversi valori di ζ
Plot[
Evaluate[Table[ang0,{ζ,0.1,0.5,0.1}]],
{
,0.1,5.0},PlotRange->All,AxesOrigin->{0.1,0},
AxesLabel->{"
","Fase"},
PlotLabel->"Fase (rad) vs.
",
PlotStyle->Table[RGBColor[2g,1-2g,0],{g,0.1,0.5,0.1}]];
Un' altra rappresentazione della fase ...
Plot[
Evaluate[Table[-ang+Pi/2,{ζ,0.1,0.5,0.1}]],
{
,0.1,5.0},PlotRange->All,AxesOrigin->{0.1,0},
AxesLabel->{"
","Fase"},
PlotLabel->"Fase (rad) vs.
",
PlotStyle->Table[RGBColor[2g,1-2g,0],{g,0.1,0.5,0.1}]];
Per osservare l'andamento dell'ampiezza della soluzione stazionaria in funzione del tempo,
per una data frequeanza ωf della forzante ed uno dato ζ,
![[Graphics:../Images/index_gr_141.gif]](../Images/index_gr_141.gif)
tr=Plot[Evaluate[simpsolstaz0],{t,0,6},
PlotPoints->150,PlotStyle->{{Thickness[0.004],RGBColor[0,0,1]}},
PlotRange->All];
Un semplice zoom nei primi istanti
![[Graphics:../Images/index_gr_143.gif]](../Images/index_gr_143.gif)
tr=Plot[Evaluate[simpsolstaz0],{t,0,0.4},
PlotPoints->150,PlotStyle->{{Thickness[0.004],RGBColor[0,0,1]}},
PlotRange->All];
Avviciniamoci alla zona della risonanza (da dx)
![[Graphics:../Images/index_gr_145.gif]](../Images/index_gr_145.gif)
tr=Plot[Evaluate[simpsolstaz0],{t,0,6},
PlotPoints->150,PlotStyle->{{Thickness[0.004],RGBColor[0,0,1]}},
PlotRange->All];
Riduciamo ancora la frequenza della forzante
![[Graphics:../Images/index_gr_147.gif]](../Images/index_gr_147.gif)
tr=Plot[Evaluate[simpsolstaz0],{t,0,6},
PlotPoints->150,PlotStyle->{{Thickness[0.004],RGBColor[0,0,1]}},
PlotRange->All];
Utilizziamo NDSolve per studiare
la risposta (totale=transitoria +stazionaria) e
lo sfasamento tra la forzante e la risposta (stazionaria)
![[Graphics:../Images/index_gr_149.gif]](../Images/index_gr_149.gif)
![[Graphics:../Images/index_gr_150.gif]](../Images/index_gr_150.gif)
![[Graphics:../Images/index_gr_151.gif]](../Images/index_gr_151.gif)
![[Graphics:../Images/index_gr_154.gif]](../Images/index_gr_154.gif)
![[Graphics:../Images/index_gr_156.gif]](../Images/index_gr_156.gif)
![[Graphics:../Images/index_gr_159.gif]](../Images/index_gr_159.gif)
![[Graphics:../Images/index_gr_161.gif]](../Images/index_gr_161.gif)
![[Graphics:../Images/index_gr_163.gif]](../Images/index_gr_163.gif)
![[Graphics:../Images/index_gr_166.gif]](../Images/index_gr_166.gif)
![[Graphics:../Images/index_gr_167.gif]](../Images/index_gr_167.gif)
![[Graphics:../Images/index_gr_168.gif]](../Images/index_gr_168.gif)
![[Graphics:../Images/index_gr_171.gif]](../Images/index_gr_171.gif)
![[Graphics:../Images/index_gr_173.gif]](../Images/index_gr_173.gif)
![[Graphics:../Images/index_gr_176.gif]](../Images/index_gr_176.gif)
![[Graphics:../Images/index_gr_179.gif]](../Images/index_gr_179.gif)
![[Graphics:../Images/index_gr_181.gif]](../Images/index_gr_181.gif)
![[Graphics:../Images/index_gr_184.gif]](../Images/index_gr_184.gif)