Uno dei miei preferiti...
Se $\displaystyle 2n \le x \le(2n+1) , f(x)=x-n$
se $\displaystyle (2n+1) \le x \le 2n, f(x)=n+1$
con n intero qualsiasi(zero é da cosiderarsi della forma 2n;la funzione si può immaginare limitata al primo quadrante).
L'equazione della spezzata sembra ribellarsi ad ogni polinomio interpolatore;come si calcola l'equazione di questa funzione(equazione esplicita)?
Si era giunti alla conclusione che bisognava lavorare su una serie trigonometrica.
E il mio problema é trovare una funzione semplice,che sia sempre valida(NON del tipo "se x é compreso tra A e B,la funzione é...se é compreso tra B e C é..." etc.).
Non é ancora stata trovata.
Chi mi aiuta?
Ciao!
Recupero:la funzione ribelle
Moderatori: Gianfranco, Bruno
Questo forum è una sezione del PORTALE DI BASE CINQUE
Recupero:la funzione ribelle
Lo scopo principale di una dichiarazione DATA è quello di dare dei nomi alle costanti; anziché inserire ogni volta 3.141592653589793 come valore di $\pi$, con una dichiarazione DATA si può assegnare tale valore alla variabile PI che può essere poi usata per indicare la costante. Ciò rende anche più semplice modificare il programma, qualora il valore di $\pi$ dovesse cambiare.
-Da un vecchio manuale FORTRAN della Xerox
-Da un vecchio manuale FORTRAN della Xerox
Orbene, se qualcuno fosse interessato a sapere come è andata a finire, a distanza di così tanto tempo ho ripreso in mano questo problema e mi sono ingegnato di trovare una formula per questa assurda funzione: $\displaystyle y=x\frac{\left( 1+\mbox{sgn(sin}\pi x) \right)}{2}+\frac{1}{4}-\frac{\mbox{sgn(sin}\pi x)}{2}\left( \frac{1}{2}+\mbox{floor}x \right)$, dove sgn(x) è il segno di x e floor(x) è la nota funzione "approssima all'intero minore più vicino".
Okay, il problema lascia un po' il tempo che trova... però alla fine esiste una formula "semplice" (ogni tentativo di trovare qualcosa di più semplice, specialmente per eliminare quella scomoda $\displaystyle \mbox {sgn(sin x\pi )}$, è ben accetto) per esprimere quello stramboccio. E la cosa strana è che da disegnare è sorprendentemente facile, mentre è molto più complessa a definirsi...
Devo scappare, un grazie a tutti coloro che contribuirono alla discussione che nacque a suo tempo su questa cosa e a presto.
Ciao,
Zerinf
Okay, il problema lascia un po' il tempo che trova... però alla fine esiste una formula "semplice" (ogni tentativo di trovare qualcosa di più semplice, specialmente per eliminare quella scomoda $\displaystyle \mbox {sgn(sin x\pi )}$, è ben accetto) per esprimere quello stramboccio. E la cosa strana è che da disegnare è sorprendentemente facile, mentre è molto più complessa a definirsi...
Devo scappare, un grazie a tutti coloro che contribuirono alla discussione che nacque a suo tempo su questa cosa e a presto.
Ciao,
Zerinf
Lo scopo principale di una dichiarazione DATA è quello di dare dei nomi alle costanti; anziché inserire ogni volta 3.141592653589793 come valore di $\pi$, con una dichiarazione DATA si può assegnare tale valore alla variabile PI che può essere poi usata per indicare la costante. Ciò rende anche più semplice modificare il programma, qualora il valore di $\pi$ dovesse cambiare.
-Da un vecchio manuale FORTRAN della Xerox
-Da un vecchio manuale FORTRAN della Xerox
Se ho capito bene la funzione corrisponde a questa spezzata
In questo caso può essere descritta da questa formula
$f(x)=((x-int(\frac{int(x)}{2}))*(1-2*((\frac{int(x)}{2})-int(\frac{int(x)}{2})))+2*((\frac{int(x)}{2})-int(\frac{int(x)}{2}))*(\frac{int(x)}{2}+\frac{1}{2})$
$f(x)=(x-int(I(x)))*(1-2*((I(x))-int(I(x))))+2*((I(x))-int(I(x)))*(I(x)+\frac{1}{2})$ con $I(x)=\frac{int(x)}{2}$
dove la funzione int (intero di) corrisponde alla funzione floor per i numeri positivi.
... segue una soluzione più raffinata ...
Se sottraiamo la metà di x a f(x) otteniamo una forma d'onda triangolare
che può essere facilmente rapresentata da una serie di Fourier con armoniche dispari alternate decrescenti in funzione del quadrato
Il valore 1.2337 (calcolato empiricamente) serve per normalizzare l'ampiezza della funzione
Se sviluppiamo la serie per 100 termini (ricalcolando il fattore normalizzante) e aggiungiamo x/2
otteniamo una buona approssimazione
Zerinf, ma nella tua formula non manca un termine pari a -x/2 ?
In questo caso può essere descritta da questa formula
$f(x)=((x-int(\frac{int(x)}{2}))*(1-2*((\frac{int(x)}{2})-int(\frac{int(x)}{2})))+2*((\frac{int(x)}{2})-int(\frac{int(x)}{2}))*(\frac{int(x)}{2}+\frac{1}{2})$
$f(x)=(x-int(I(x)))*(1-2*((I(x))-int(I(x))))+2*((I(x))-int(I(x)))*(I(x)+\frac{1}{2})$ con $I(x)=\frac{int(x)}{2}$
dove la funzione int (intero di) corrisponde alla funzione floor per i numeri positivi.
... segue una soluzione più raffinata ...
Se sottraiamo la metà di x a f(x) otteniamo una forma d'onda triangolare
che può essere facilmente rapresentata da una serie di Fourier con armoniche dispari alternate decrescenti in funzione del quadrato
Il valore 1.2337 (calcolato empiricamente) serve per normalizzare l'ampiezza della funzione
Se sviluppiamo la serie per 100 termini (ricalcolando il fattore normalizzante) e aggiungiamo x/2
otteniamo una buona approssimazione
Zerinf, ma nella tua formula non manca un termine pari a -x/2 ?
Ultima modifica di Quelo il sab feb 09, 2008 1:32 pm, modificato 1 volta in totale.
[Sergio] / $17$