17 novembre 2011 IDL
Specialmente per Marisa & Serena: si può usare l'istruzione plot più di una volta senza perdere il “plottato” basta aggiungere la dicitura /noerase come nell'esempio qui di seguito
IDL> plot,sin(findgen(100)*0.2), /noerase IDL>plot,cos(findgen(100)*0.2),/noerase
L'istruzione randomn permette di generare, numeri,vettori , o matrici costituiti di numeri casuali.
Esempio:
IDL>print,randomn(10) > genera il numero 0.961467 IDL>print,randomn(1) > genera il numero 0.836854
10 e 1 sono i “semi” (seed) utilizzati dal generatore dei numeri casuali. Se al loro posto inseriamo seed (> IDL>print,random(seed) ) il numero generato sarà sempre diverso.
Per generare un vettore di numeri casuali IDL> a=randomn(seed,100)
Per generare una matrice di numeri causali IDL>b=randomn(seed,100,100)
Per visualizzare i risultati IDL>plot,a
IDL>surface,b e/o anche IDL>tv,b
***********************************************************************************
Esercizio 1
Generate con randomn un vettore contenente 1000 numeri casuali. Trovate un metodo
“furbo” per capire cosa fa randomn (ossia come si distribuiscono i numeri che produce).
***********************************************************************************
***********************************************************************************
Esercizio 2
Utilizzando randomn con l'opzione poisson (IDL> a=randomn(seed,1000,poisson=100) ) generate 3 vettori,a,b e c aventi rispettivamente poisson=10 , poisson=100, poisson=1000 confrontate (plot ) i risultati e traete una conclusione sensata.
Utilizzando un valore a vostra scelta (fra 10 e 100 per poisson) determinate il numero di vettori che si devono mediare per ottenere una riduzione significativa della fluttuazione del segnale.
***********************************************************************************
Esercizio 3
Scrivete una routine IDL capace di generare un immagine 512 x 512 che simuli un campo CCD contenente un fondo cielo pari a 300 conteggi per pixel (pixel > punto dell'immagine) e qualche stella.
Assumete per le vostre stelle un profilo gaussiano con una FWHM di almeno 3 o 4 pixel.
Mettete stelle che abbiano luminosità diversa (non tutte uguali!) mettete anche il rumore poissoniano sui profili delle singole stelle.
Ideale sarebbe una routine che genera ogni volta un numero diverso di stelle in posizioni diverse e con diverso intervallo di luminosità.