tyrion

modulazione_claudia.py

May 27th, 2013
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.06 KB | None | 0 0
  1. # istruzioni per claudia (e il gatto):
  2. # 1. salva questo file come "sdr.py" e mettilo nella stessa cartella dove hai
  3. #    estratto i file di input (dati_re.txt e dati_im.txt).
  4. # 2. Apri un terminale (Ctrl-Alt-T per fare prima).
  5. # 3. Spostati nella cartella che contiene i file con:
  6. #    $ cd percorso/cartella
  7. #  ( ^ il carattere dollaro $ serve a far capire che devi eseguire il comando
  8. #    nel terminale. NON devi scriverlo. )
  9. #    Ad esempio, se hai messo tutto nella cartella "Downloads":
  10. #    $ cd Downloads
  11. #  ( Suggerimento: se premi "tab", una o due volte, mentre scrivi il percorso
  12. #    della cartella, ti vengono forniti dei suggerimenti.)
  13. # 4. Verifica che ci sono tutti i file necessari (sdr.py, dati_re.txt,
  14. #    dati_im.txt) usando "ls":
  15. #    $ ls
  16. # 5. Aggiusta il file dati_im.txt che è in formato sbagliato, sostituendo
  17. #    tutti i caratteri "tab" (\t) con dei caratteri "newline" (\n):
  18. #    $ sed 's/\t/\n/g' dati_im.txt > dati_im_corretto.txt
  19. #  ( Suggerimento: be patient.)
  20. # 6. Sostituisci il file corretto con quello sbagliato.
  21. #    $ mv dati_im.txt dati_im_cacca.txt
  22. #    $ mv dati_im_corretto.txt dati_im.txt
  23. #  ( Suggerimento: esegui "ls" per verificare che hai combinato.)
  24. #  ( Suggerimento: volendo puoi eliminare dati_im_cacca.txt con
  25. #    $ rm dati_im_cacca.txt
  26. #    Altrimenti lascialo pure lì.)
  27. # 7. Genera i campioni \o/
  28. #    $ python sdr.py > out.txt
  29. #    Se è andato tutto bene i campioni sono in out.txt
  30. #    Puoi vederli eseguendo "less out.txt" oppure puoi vedere gli ultimi campioni con
  31. #    "tail out.txt" oppure fai un po' quello che ti aggrada.
  32. # THE END.
  33. #
  34. # Appendice stupida: potevi estrarre i file anche con "unzip dati.zip".
  35.  
  36. from itertools import izip
  37. import math
  38.  
  39. def dati():
  40.     for r, i in izip(open('dati_re.txt'), open('dati_im.txt')):
  41.         yield complex(float(r), float(i))
  42.  
  43. def proc():
  44.     input = dati()
  45.     j = next(input)
  46.     for i in input:
  47.         x = i * j.conjugate()
  48.         yield math.atan2(x.imag, x.real)
  49.         j = i
  50.  
  51. if __name__ == '__main__':
  52.     for x in proc():
  53.         print(x)
Advertisement
Add Comment
Please, Sign In to add comment