Analisi ed ottimizzazione di strumenti Software per l'utilizzo di IDL sulla GRID ENEA S.PI.1.2 Strumenti per la grafica Marta Chinnici Portici, 11 Dicembre 2007 ENEA-CRESCO
Che cos’é IDL (Interactive Data Language) Linguaggio di programmazione sviluppato dalla Research Systems Inc; Orientato all’analisi di data-set uni-bi o multi-dimensionali; Linguaggio di programmazione ad alto livello (facilmente comprensibile) che consente sia l’analisi che la visualizzazione grafica dei dati o delle elaborazioni; Linguaggio array-oriented, particolarmente efficace nell’analisi di strutture di dati come le matrici bi o tridimensionali (immagini mediche o telerilevate). ENEA-CRESCO Marta Chinnici
Ambiente di sviluppo di IDL: IDLDE IDL è un linguaggio interpretato, quindi il programma sorgente scritto in IDL viene eseguito un’istruzione alla volta, da un interprete l’interprete di IDL è inserito in un ambiente di sviluppo denominato IDLDE (IDL Development Environment) IDLDE è una semplice interfaccia grafica che presenta strumenti utili per l’editing e per il debugging di programmi IDL. L’ambiente di sviluppo è composto dal menu di comando, da alcune toolbars e da differenti finestre. ENEA-CRESCO Marta Chinnici
L’ambiente di sviluppo IDLDE da interfaccia Enea-Grid ENEA-CRESCO Marta Chinnici
La programmazione in IDL Il programma viene salvato in un file, con estensione .pro, e quando il programma viene lanciato IDL esegue in sequenza le istruzioni in esso contenute ES: mio_programma.pro La programmazione viene eseguita nella finestra di editing di IDLDE. Una routine IDL(files .pro) può essere eseguita in modalità interattiva attraverso l'interfaccia grafica Idlde, oppure direttamente da linea di comando digitando il nome (con o senza interfaccia grafica). ENEA-CRESCO Marta Chinnici
Compilare ed eseguire un programma IDL da linea di comando terminal idlde ENEA-CRESCO Marta Chinnici
IDL da linea di comando terminal (idl, senza interfaccia grafica) ENEA-CRESCO Marta Chinnici
IDL in modalità batch (.sav) Una routine IDL per essere eseguita in modalità batch, deve preliminarmente essere convertita in un file.sav (in binario) e opportunamente salvata all' interno di IDL Compilare il programma, assieme a tutte le routines associate (COMPILE_ALL) Salvarlo come file binario: save, filename = ‘mio_programma.sav' , /ROUTINE Comando per eseguire il programma : -rt = ‘mio_programma.sav’ ENEA-CRESCO Marta Chinnici
Gestione delle variabili in modalità batch Lanciare il comando idl_setup residente nella directory bin di IDL: questo apre una shell “figlia”, all' interno della principale, in ambiente IDL (laddove idlde è invece l'eseguibile per lanciare IDL in modalità interattiva) Una volta dentro la shell di IDL, impostiamo come variabili d'ambiente ( SETENV ) le variabili che la routine IDL dovrà utilizzare setenv VAR_A $1 setenv VAR_B $2 La routine IDL legge le variabili tramite GETENV var_idl1 = GETENV('VAR_A') var_idl2 = GETENV('VAR_B') ENEA-CRESCO Marta Chinnici
IDL e l’interfaccia LSF batch files IDL attraverso LSF lanciare e gestire un job IDL attraverso LSF IDL in parallelo attraverso LSF lanciare in modalità parallela (in contemporanea su più macchine) un job IDL attraverso l' interfaccia LSF. ENEA-CRESCO Marta Chinnici
Eseguire un'applicazione IDL attraverso l'interfaccia LSF Se l' applicazione non prevede variabili input runtime, può essere lanciata dall' interfaccia LSF con un semplice ENEA-CRESCO Marta Chinnici
ENEA-CRESCO Marta Chinnici
Multicase ENEA-CRESCO Marta Chinnici
IDL per FTU http://ftu.frascati.enea.it/ Elaborazione delle immagini provenienti dalle telecamere di FTU attraverso un’interfaccia di IDL FTU è un tokamak ad elevato campo magnetico, sviluppato a Frascati http://ftu.frascati.enea.it/ ENEA-CRESCO Marta Chinnici
Applicazioni IDL realizzate in ENEA ENEA-CRESCO Marta Chinnici
Applicazione IDL:Falsecolor ENEA-CRESCO Marta Chinnici
Istruzioni per l’uso ENEA-CRESCO Marta Chinnici
ENEA-CRESCO Marta Chinnici
ENEA-CRESCO Marta Chinnici
Immagine di output ENEA-CRESCO Marta Chinnici
ENEA-CRESCO Marta Chinnici
ENEA-CRESCO Marta Chinnici
Multicase ENEA-CRESCO Marta Chinnici
ENEA-CRESCO Marta Chinnici
Analisi in itinere Realizzazione dei tools relativi alle applicazioni IDL realizzate in ENEA Database Brightzone Volume rendering Controllo delle code multicluster per il lancio dei programmi IDL (modalità multicase) marta.chinnici@portici.enea.it http://www.cresco.enea.it/LA1/cresco_sp12_graf3d/ ENEA-CRESCO Marta Chinnici