Salve ragazzi,
mercoledi` ho l'esame di informatica di C++ e mi sono inceppato completamente. Devo scrivere un programma che mi calcoli la trasformata di Fourier e disegni l'inversa di una qualsiasi funzione periodica in 2pi greco per poi compararla con la funzione periodica originale.
E` tutto a posto e tutto funziona a parte il fatto che non so proprio come fare per rendere periodica una funzione. Ovvero... per essere chiari, presa per esempio la funzione f(x)=x, il risultato finale deve assomigliare alla funzione mantissa e questo lo devo disegnare insieme alla trasformata di ordine ennesimo con TGraph.
Per mostrare un minimo di iniziativa, vi posto quello che sono riuscito a fare (e` quasi indecifrabile e faccio fatica anche io a ricordami come funzioni )....
double sup, inf, max, min, step;
max = 6.28*3.0;
min = -6.28;
step = 1.0/30.0;
double y=0;
sup = max / 6.28;
inf = min / 6.28;
for (double i = inf; i <= sup ; i+=1)
{
for (x = 0 ; x < 6.28; x += step)
{
y = x;
}
}
Ho provato a compilarlo ed effettivamente restituisce i numeri da 0 a 2pi greco in intervalli periodici in base ai valori iniziali di inf e sup. Il problema e` che cosi` non saprei come disegnare il tutto con TGraph (tenuto conto che devo stampare anche la trasformata sullo stesso Canvas) e, onestamente, non mi sembrava un gran bel codice .
Qualcuno ha idea di come si potrebbe fare meglio?
Grazie mille in anticipo