Per vedere come Mathematica gestisce i sistemi di equazioni differenziali, consideriamo il problema della determinazione della traiettoria di una sonda che ha un incontro ravvicinato con un pianeta. Dalla legge di gravitazione universale ricaviamo le equazioni differenziali del moto (rispetto a una terna inerziale):
con le opportune condizioni iniziali. In tale sistema abbiamo posto convenzionalmente pari a 1, le varie grandezze e costanti (G costante di gravitazione universale, M massa del pianeta, m massa della sonda). (altro…)
Nel numero precedente abbiamo rinunciato al calcolo dell'espressione analitica della funzione di autocorrelazione, a causa della complessità computazionale del corrispondente integrale. Con Mathematica non è stato possibile calcolare la trasformata di Fourier nemmeno numericamente a causa delle rapide oscillazioni della funzione integranda. Prima di addentrarci nel problema, consideriamo un esempio più semplice:
Nel notebook di Mathematica, carichiamo il package per il calcolo numerico della trasformata:
Quindi definiamo la funzione da trasformare, utilizzando l'assegnazione immediata e non quella ritardata, in modo da ridurre il carico computazionale (si noti l'utilizzo del terminatore ; in modo da impedire la visualizzazione dell'output, che avrebbe restituito la funzione in input).
Grafichiamo:
Chiediamo a Mathematica di calcolare la trasformata in modalità simbolica. Il "running" riesce interminabile, per cui lo tronchiamo, provando poi calcolare per via numerica la trasformata per un assegnato valore della variabile ω
Infine, volendo graficare la trasformata, forziamo l'espressione numerica con la potente istruzione Evaluate: