La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Introduzione all’uso di FLUKA

Presentazioni simili


Presentazione sul tema: "Introduzione all’uso di FLUKA"— Transcript della presentazione:

1 Introduzione all’uso di FLUKA
Pavia, 8/ R. Brunetti, A. Menegolli

2 Programma Organizzazione generale del pacchetto
Installazione, compilazione Struttura del file di input Esempio di file di input Intestazione Sorgente Geometria Materiali e composti Esecuzione di Fluka Card per la gestione dell'output Programmi accessori Utilizzo delle routine utente Compilazione dell'eseguibile personalizzato Flukaica (Fluka per ICARUS) Pavia, 8/ R. Brunetti, A. Menegolli

3 Organizzazione del pacchetto
Fluka viene fornito come pacchetto precompilato per le versioni di SO UNIX/LINUX più diffuse. L’archivio e tutta la documentazione (compreso un manuale on line) sono disponibili a partire dal sito: L’albero di directory del pacchetto è cosi’ organizzato: Main directory Libreria precompilata principale (core di fluka) : libfluka.a Files contenenti informazioni base di fisica (sez. d’urto, tavole di parametri ecc..) flukapro Include files (common blocks) flutil Script per la compilazione e l’esecuzione usermvax Routines utente Il direttorio di fluka si sviluppa a partire dal punto del file system identificato dal valore della variabile d’ambiente FLUPRO Pavia, 8/ R. Brunetti, A. Menegolli

4 Installazione e compilazione
Una volta decompresso l’archivio nella directory specificata da FLUPRO è possibile procedere alla compilazione dell’eseguibile “standard” (“standard” significa che non comprende nessuna routine scritta o modificata dall’utente) La compilazione si esegue utilizzando uno degli script della directory FLUTIL $FLUPRO/flutil/lfluka –m fluka Questo comando genera per default un eseguibile chiamato flukahp L’opzione –m specifica di eseguire il link con la main library libflukahp.a Se si desidera chiamare l’eseguibile con un diverso nome si può usare il comando: $FLUPRO/flutil/lfluka –m fluka –o mionome Il comando : $FLUPRO/flutil/lfluka –h produce la lista delle possibili opzioni dello script Pavia, 8/ R. Brunetti, A. Menegolli

5 } What’s inside the physics data files:
sigmapi.bin: pion-N double-diff. cross sections elasct.bin: elastic scattering cross sections neuxsc_72.bin: low energy neutron multigroup xs nuclear.bin: nuclear masses, mass excess, levels, and many other nuclear data for evaporation, pre-equilibrium, Fermi break up and photonuclear xs fluodt.dat: Fluorescence data (photoelectric effect) e6r1nds3.fyi: jef2.fyi: Fission products (for neutrons with jendl3.fyi: E<20 MeV) xnloan.dat: } Pavia, 8/ R. Brunetti, A. Menegolli

6 Il file di input Il file di input contiene tutte le informazioni necessarie per eseguire un RUN di FLUKA Esso ha la forma di un normale file di testo contenente un numero variabile di “DATA CARDS ” (o comandi) Ogni “DATA CARD ” ha la seguente struttura: Le DATA CARD possono estendersi per più di una riga del file di input La presenza del carattere “*” in colonna 1 indica una riga di commento Keyword 6 valori numerici in formato floating point (“WHAT(j)”) 1 stringa di caratteri (“SDUM”) Attenzione !!! E’ ASSOLUTAMENTE NECESSARIO RISPETTARE LA TABULAZIONE DELLE DATA CARDS !!! KEYWORD WHAT(1) WHAT(2) WHAT(3) WHAT(4) WHAT(5) WHAT(6) SDUM * BEAM E PHOTON Attenzione !!! NON UTILIZZARE IL TASTO “TAB” PER SPOSTARE IL CURSORE Pavia, 8/ R. Brunetti, A. Menegolli

7 Intestazione L’intestazione del file di input contiene normalmente 2 data cards: Data Card : TITLE → E’ seguita da una riga di testo contenente una breve descrizione del run. Data Card : DEFAULTS → Predispone l’uso di parametri ottimali per uno specifico problema. Raramente viene utilizzata anche la Data Card: Data Card : GLOBAL → Modifica le impostazioni di default per quello che riguarda l’utilizzo della memoria, l’eventuale biasing nel run, il modo di gestire le regioni geometriche ecc... Pavia, 8/ R. Brunetti, A. Menegolli

8 Esempio In questo caso viene usata la card : DEFAULTS = NEW-DEFA.
TITLE Test of muon propagation in sea water (seamu example on the web) * Sets the standard defaults for this run DEFAULTS NEW-DEFA * * Type of particles of the beam BEAM MUON+ * Initial coordinate and direction of the beam particles BEAMPOS In questo caso viene usata la card : DEFAULTS = NEW-DEFA. I valori preimpostati in questo caso sono buoni per uno svariato numero di casi (“default dei default”). Altre card tra le più usate sono : CALORIME NEUTRONS PRECISIO ICARUS Pavia, 8/ R. Brunetti, A. Menegolli

9 Le unità di misura sono:
Sorgente La descrizione del fascio iniziale di particelle viene fatta utilizzando le due DATA CARD BEAM BEAMPOS BEAM : Specifica le caratteristiche del fascio in termini di: Energia cinetica (momento) WHAT(1) Spread nel momento WHAT(2) Divergenza del fascio (mrad) WHAT(3) Larghezza (profilo) lungo X WHAT(4) Larghezza (profilo) lungo Y WHAT(5) Peso statistico delle particelle WHAT(6) Nome della particella SDUM BEAMPOS : Specifica la posizione e direzione del fascio in termini di: Coordinata X del centro WHAT(1) Coordinata Y del centro WHAT(2) Coordinata Z del centro WHAT(3) Coseno direttore lungo X WHAT(4) Coseno direttore lungo Y WHAT(5) (non usato) WHAT(6) Il coseno direttore lungo Z è per default 1.0 se SDUM = void -1.0 se SDUM = NEGATIVE Le unità di misura sono: GeV cm rad Pavia, 8/ R. Brunetti, A. Menegolli

10 Esempio TITLE Test of muon propagation in sea water (seamu example on the web) * Sets the standard defaults for this run DEFAULTS NEW-DEFA * * Type of particles of the beam BEAM MUON+ * Initial coordinate and direction of the beam particles BEAMPOS In questo caso viene definito un fascio di MUONI POSITIVI, di 1000 GeV di momento, senza divergenza e senza spread, posizionato nel punto di coordinate X=0.0 ; Y=0.0 ; Z=-50.0 La direzione del fascio è nel verso positivo dell’asse Z Pavia, 8/ R. Brunetti, A. Menegolli

11 Geometria Body → Volume convesso finito od infinito
La geometria in Fluka è basata sui seguenti 4 concetti fondamentali: Bodies Zones Regions Lattices Body → Volume convesso finito od infinito Region → Porzione di spazio definita come combinazione di bodies tramite le operazioni booleane di unione, sottrazione ed intersezione Una regione può non essere semplicemente connessa, ovvero può essere realizzata come unione di più Zones non contigue Lattice → Volumi caratterizzati da molteplici repliche di una data “cella” elementare. Una particolare regione (finita), che deve essere sempre presente e comprendere ogni altra regione definita nella simulazione è quella di BLACK HOLE Essa si comporta come un assorbitore totale, ogni particella che entri nella black hole cessa di essere seguita dal programma. Pavia, 8/ R. Brunetti, A. Menegolli

12 Formato della sezione di geometria
La sezione di geometria del file di input è compresa tra le due DATA CARD GEOBEGIN e GEOEND E’ anche possibile specificare un file esterno, nel caso la descrizione della geometria sia molto lunga Pavia, 8/ R. Brunetti, A. Menegolli

13 Lista dei principali bodies disponibili
PLA : semispazio infinito delimitato da un generico piano XYP : semispazio infinito delimitato da un piano  a z XZP : “ “ “ “  a y YZP : “ “ “ “  a x RPP : parallelepipedo con lati paralleli agli assi coordinati SPH : sfera XCC : cilindro infinito con asse // ad x YCC : “ “ “ // ad y ZCC : “ “ “ // a z Ognuno dei bodies disponibili viene definito tramite un numero variabile di parametri Nel manuale sono elencate tutte le specifiche per la definizione Pavia, 8/ R. Brunetti, A. Menegolli

14 Pavia, 8/ R. Brunetti, A. Menegolli

15 Pavia, 8/ R. Brunetti, A. Menegolli

16 Pavia, 8/ R. Brunetti, A. Menegolli

17 Pavia, 8/ R. Brunetti, A. Menegolli

18 Logica combinatoria per i bodies
Zones Regions Bodies OR → UNIONE DI ZONE + → INTERSEZIONE - → SOTTRAZIONE Unione, sottrazione intersezione Nel caso di solidi convessi finiti (parallelepipedi, cilidri, sfere ...) : (interno) + = La zona è il luogo dei punti contenuti entro il body (esterno) - = La zona è il luogo dei punti esterni al body Nel caso dei piani  X, Y, Z : (interno) + = La zona è il luogo dei punti per cui x < x0 (y < y0) (z < z0) (esterno) - = La zona è il luogo dei punto per cui x > x0 (y > y0) (z > z0) Pavia, 8/ R. Brunetti, A. Menegolli

19 Esempio * GEOBEGIN COMBINAT Geometry for the seamu example SPH RPP XYP XYP END * black hole * vacuum at the beginning * water layer * vacuum at the end END GEOEND In questo esempio : la b-h (reg 1) è il luogo dei punti interni al body 1 ed esterni a 2 il vuoto (reg 2) è il luogo dei punti interni al body 2 ed interni a 3 l’acqua (reg 3) è il luogo dei punti interni al body 2, interni al body 4 ed esterni al body 3 il vuoto (reg 4) è il luogo dei punti interni al body 3 ed esterni a 4 Pavia, 8/ R. Brunetti, A. Menegolli

20 A questo scopo si usa l’operatore “OR”.
Uso di “OR” A volte è necessario definire una regione come unione di zone anche disgiunte. A questo scopo si usa l’operatore “OR”. Quando viene usato l’operazione di unione, devono essere sempre presenti almeno due operatori “OR”, che definiscono le zone da considerare. Le zone considerate sono tutte quelle che seguono un “OR” fino al successivo (oppure fino alla fine della card) Esempio: Questo spazio identifica una prosecuzione di data card Pavia, 8/ R. Brunetti, A. Menegolli

21 Materiali e composti Fluka possiede una lista di materiali predefiniti mostrata nella tabella seguente Il Black-Hole è sempre 1 Il vuoto è sempre 2 I materiali presenti nella lista possono anche essere ridefiniti in numero e nome. Nuovi materiali non presenti possono essere definiti usando numeri progressivi a partire da “* = deprecati” Pavia, 8/ R. Brunetti, A. Menegolli

22 Materiali e composti II
Ogni materiale (semplice o composto) utilizzato deve essere definito/dichiarato nel file di input. La definizione/dichiarazione dei materiali si effettua con le DATA CARD : MATERIAL, COMPOUND, (MAT-PROP) MATERIAL → Definisce un materiale composto di un singolo elemento, oppure (se accoppiata alla scheda COMPOUND) un composto WHAT(1) : numero atomico del materiale (se non accoppiata con COMPOUND, in tal caso = 0.0) WHAT(2) : peso atomico del materiale (se non accoppiata con COMPOUND, in tal caso = 0.0) WHAT(3) : densità (g/cm3) WHAT(4) : numero del materiale WHAT(5) : non usato WHAT(6) : numero di massa del materiale (nel caso di isotopi) SDUM : nome del materiale Pavia, 8/ R. Brunetti, A. Menegolli

23 Esempio In questo esempio vengono definiti diversi materiali. Alcuni sono ridefinizioni, altri sono nuovi Pavia, 8/ R. Brunetti, A. Menegolli

24 Materiali e composti III
COMPOUND → Definisce un materiale composto di più elementi WHAT(1) & WHAT(2) > 0 : WHAT(1) = contenuto relativo (in atomi) del primo elemento WHAT(2) = indice del primo elemento WHAT(1) < 0 & WHAT(2) > 0 |WHAT(1)| = contenuto relativo (in massa) del primo elemento WHAT(1) < 0 & WHAT(2) < 0 |WHAT(1)| = contenuto relativo (in volume) del primo elemento |WHAT(2)| = indice del primo elemento In maniera analoga : WHAT(3)/WHAT(4) = dati per il secondo elemento WHAT(5)/WHAT(6) = dati per il terzo elemento SDUM = nome del composto Se sono necessari più di tre elementi, si aggiungono tante card COMPOUND quante occorrono, ognuna con lo stesso SDUM Pavia, 8/ R. Brunetti, A. Menegolli

25 Esempio In questo esempio, viene definito il composto “Acqua di Mare”. Vengono definiti gli elementi costitutivi ed in seguito il composto. Notare come l’ultima scheda MATERIAL sia accoppiata alle schede COMPOUND * *1) Hydrogen MATERIAL HYDROGEN *2) Oxygen MATERIAL OXYGEN *3) Magnesium MATERIAL MAGNESIU *4) Potassium MATERIAL POTASSIU *5) Calcium MATERIAL CALCIUM *6) Sodium MATERIAL SODIUM *7) Chlorine MATERIAL CHLORINE *8) Sulphur MATERIAL SULFUR * 9) Sea water compound (Antares 1) using atom relative contents * MATERIAL SEAWATER COMPOUND SEAWATER COMPOUND SEAWATER COMPOUND SEAWATER Pavia, 8/ R. Brunetti, A. Menegolli

26 Assegnazione materiali-regioni
L’assegnazione dei materiali alle regioni avviene tramite la DATA CARD ASSIGNMAt WHAT(1) : numero del materiale WHAT(2) : limite inferiore del numero della regione (“da regione... WHAT(2)” ) WHAT(3) : limite superiore del numero della regione (“a regione... WHAT(3)” ) WHAT(4) : incremento nell’indice (“in passi di... WHAT(4)” ) WHAT(5) : = 1.0 se nella regione è presente un campo magnetico : = 0.0 ignorato : < 0.0 default (nessun campo) WHAT(6) : non usato SDUM : non usato * MATERIAL ALUMINUM ASSIGNMA ASSIGNMA ASSIGNMA Pavia, 8/ R. Brunetti, A. Menegolli

27 Esecuzione L’esecuzione del run si effettua lanciando il comando:
$FLUPRO/flutil/rfluka –e <eseguibile> -p <pemf file> -N<num cic prec.> -M<num di cicli> <inp file> <eseguibile> = nome dell’eseguibile personalizzato (default “flukahp”) <pemf file> = nome del file .pemf contenente le tabelle preprocessate delle sezioni d’urto per i processi elettromagnetici <num cic prec> = numero di cicli già effettuati su quel file di input <num di cicli> = numero di clicli da effettuare <inp file> = nome del file di input N.B la presenza del file .pemf è necessaria quando vengono attivati i processi elettromagnetici. La preparazione del file .pemf è compito dell’utente, che deve scrivere un file .peg e processarlo con lo script $FLUPRO/pemf/rpemf. Questa procedura non sarà più necessaria dalla prossima release di fluka. N.B specificare il numero di cicli già effettuati serve ad inizializzare il generatore random con un nuovo seme, altrimenti gli eventi prodotti (a parità di input file) sono identici ai precedenti. Pavia, 8/ R. Brunetti, A. Menegolli

28 Esecuzione II Notare che: core  /dev/null
L’esecuzione del run avviene all’interno di una sottodirectory temporanea creata dallo script rfluka e6r1nds3.fyi  $FLUPRO/e6r1nds3.fyi elasct.bin  $FLUPRO/ elasct.bin fluodt.dat  $FLUPRO/ fluodt.dat fort.1  ../ranexample001 fort.11  example001.out fort.12  $FLUPRO/ libec_thihecufealw_10t.pemf (dummy) fort.15  example001.err fort.16  “geometry scratch” fort.2  ranexample002 jef2.fyi  $FLUPRO/ jef2.fyi jendl3.fyi  $FLUPRO/ jendl3.fyi neuxsc.bin  $FLUPRO/ neuxsc_72.bin nuclear.bin  $FLUPRO/ nuclear.bin sigmapi.bin  $FLUPRO/ sigmapi.bin xnloan.dat  $FLUPRO/ xnloan.dat Notare che: core  /dev/null La fase di inizializzazione termina con la creazione del file .err (se il file .err non viene creato ci sono problemi) Nel file .err e .out si può controllare lo stato di avanzamento del run Tips & Tricks : Per arrestare in modo pulito un run di Fluka si può creare nella dir del run un file “fluka.stop” (touch fluka.stop) Pavia, 8/ R. Brunetti, A. Menegolli

29 Output di FLUKA Si può suddividere l’output standard di fluka in due parti distinte: Comune standard Output Output richiesto dall’utente Comune standard output : file “.out”, file “.err”, file “ran*****” Contiene un dump del file input dati sui materiali, proprietà del fascio originale, geometria, tabelle di sezioni d’urto usate ecc... Contiene l’ultimo seme per il generatore random Contiene informazioni sugli errori che si sono verificati Output richiesto dall’utente : uno o più files contenenti il risultato (scoring) di uno o più “estimatori” richiesti tramite le corrispondenti apposite DATA CARD. E’ possibile richiedere diversi tipi di estimatori per una svariata classe di problemi senza necessità di codice aggiuntivo. Pavia, 8/ R. Brunetti, A. Menegolli

30 Fluenza DEF: Fluenza DEF: Flusso
numero di particelle per unità di volume  velocità Inoltre : densità di lunghezza di traccia Inoltre se la lunghezza di traccia è calcolata in unità di “libero cammino medio”  : In generale viene fornita la fluenza media, ovvero la fluenza normalizzata per il numero di particelle totale (estimatori di volume), oppure che attraversano una data superficie (estimatori di superficie). La fluenza è la quantità base per il calcolo degli estimatori. Pavia, 8/ R. Brunetti, A. Menegolli

31 Available Estimators in FLUKA (without additional user code)
“Star” (i.e. inelastic interactions) density as a function of producing particle and region. Energy density as a function of region, total or from electrons/photons only. Star and energy density in a geometry-independent binning structure (cartesian or cylindrical), averaged over the run or event as a function of event. Energy deposition weighted as a function of a quenching factor (Birks law). Step size independent of bin size. Time window. Coincidences and anticoincidences. Fluence and current scoring as a function of energy and angle, via boundary-crossing, collision and track-length estimators coincident with regions or region boundaries. Track-length fluence in a binning structure (cartesian or cylindrical) independent of geometry. Particle yield from a target or differential cross section with respect to several different kinematic variables. Residual nuclei. Fission density. Neutron balance. There are no limit to the number of estimators and binnings within the total memory available (but a maximum number must be fixed at compilation time). Pavia, 8/ R. Brunetti, A. Menegolli

32 Particelle Generalizzate
Fluka possiede una lista di particelle “generalizzate” che posseggono caratteristiche comuni o che definiscono grandezze fisiche. Esse possono essere utilizzate solo per lo scoring. Pavia, 8/ R. Brunetti, A. Menegolli

33 USRTRACK Requests the estimation of average fluence (differential in energy) expressed as track-length density for any type of particle or family of particles in any selected region. The volume normalization needed to obtain the fluence as track-length density is performed using a volume value input by the user. If none is given, the volume is assumed to be 1.0 and the result will be the total track-length in that region. Pavia, 8/ R. Brunetti, A. Menegolli

34 USRCOLL Requests the estimation of average fluence (differential in energy) expressed as collision density for any type of particle or family of particles in any selected region. The volume normalization needed to obtain the fluence as collision density is performed using a volume value input by the user. If none is given, the volume is assumed to be 1.0 and the result will be the total number of collisions (weighted with the mean free path at the collision point) in that region. Pavia, 8/ R. Brunetti, A. Menegolli

35 USRBDX Calculates fluence or current, mono- or bi-directional, differential in energy and/or angle on any boundary between two selected regions. The area normalization needed to obtain a current as particles per cm2 is performed using an area value input by the user If none is given, the area is assumed to be 1.0 and the option amounts simply to counting the total number of particles crossing the boundary. Similarly if fluence is scored, but in this case each particle is weighted with the secant of the angle with the normal to the boundary surface. Note that if additional normalization factors are desired (e.g. beam power) the “volume” or “area” value can be input multiplied or divided by them. Options USRTRACK, USRCOLL and USRBDX can also calculate energy fluence, if the “particle” type is set (total energy) or (electron and photon energy). Pavia, 8/ R. Brunetti, A. Menegolli

36 An arbitrary normalization factor can be input.
USRYIELD This option can be used to provide yields as a function of different variables. For instance angular yields around a fixed direction of particles exiting a given surface. Actually, the results are double-differential distributions with respect to a pair of variables, one of which energy-like (kinetic energy, momentum, etc.) and the other angle-like (polar angle, rapidity, Feynman-x, etc.) An arbitrary normalization factor can be input. Pavia, 8/ R. Brunetti, A. Menegolli

37 “Binning” Estimators USRBIN 1 2 cartesian or cyl. coordinates
or by region USRBIN Option USRBIN provides detailed space distributions of dose, star density or integrated fluence (not energy fluence, unless writing a special user routine). Using some suitable graphics package, USRBIN output can be presented in the form of color maps (dedicated lesson). USRBIN results are normalized to bin volumes calculated automatically by the program (except in the case of region binning and special 3-variable binning which are only seldom used). 1 2 a grid independent of geometry Region binning Pavia, 8/ R. Brunetti, A. Menegolli

38 in modo da sommare i risultati di cicli differenti:
Programmi accessori Le opzioni fin qui illustrate producono dei files di output che possono essere letti utilizzando programmi specifici di post-processing. I più importanti si trovano in Poichè gli estimatori restituiscono il valore di aspettazione, é necessario il running di più di un ciclo per valutarne l’errore. I programmi di post-processing sono costruiti in modo da sommare i risultati di cicli differenti: $FLUPRO/flutil ustsuw.f per sommare gli output di USRTRACK usxsuw.f per sommare gli output di USRBDX usysuw.f per sommare gli output di USRYIELD usbsuw.f per sommare gli output di USRBIN Si compilano chiamando lo script lfluka, ad esempio: $FLUPRO/flutil/lfluka ustsuw.f -o ustsuw Pavia, 8/ R. Brunetti, A. Menegolli

39 Routines utente $FLUPRO/usermvax/ source.f mgdraw.f
Permettono di definire input e output non standard in FLUKA. Vanno editate, compilate e quindi inserite in una libreria creata dall’utente prima di generare l’eseguibile di FLUKA. Ci sono svariate routine utente in linguaggio fortran del tipo routine.f che si trovano in: $FLUPRO/usermvax/ Tra le più importanti routines per la gestione dell’input e dell’output ci sono: source.f mgdraw.f Pavia, 8/ R. Brunetti, A. Menegolli

40 ENDRAW : dump del deposito di energia.
1. source.f Consente di modificare i parametri delle particelle incidenti, quali energia, momento, coordinate, coseni direttori… Ad esempio, se si vuol modificare l’energia cinetica bisogna cambiare la stringa: TKE (LSTACK) = SQRT ( PBEAM**2 + AM (IJBEAM)**2 ) – AM (IJBEAM) Si attiva chiamando nel file di input di FLUKA la Data Card SOURCE . 2. mgdraw.f Consente di scrivere un “Collision Tape”, cioè un file dove i trasporti di particelle selezionati vengono registrati. Le opzioni da attivare all’interno della routine sono: MGDRAW : dump della traiettoria. ENDRAW : dump del deposito di energia. SODRAW : dump della particella sorgente. USDRAW : dump definito dall’utente Si attiva chiamando nel file di input di FLUKA la Data Card USERDUMP con WHAT(1)≥100.0 Pavia, 8/ R. Brunetti, A. Menegolli

41 Personalizzazione dell’eseguibile
Nel caso si siano modificate una o più routine utente, si deve produrre un nuovo eseguibile, affinchè i cambiamenti siano effettivi. La preparazione di un nuovo eseguibile comprende i seguenti due passaggi: Compilazione delle routine necessarie Generazione dell’eseguibile Si utilizza lo script $FLUPRO/flutil/fff per produrre “l’object file” routine.o Si utilizza lo script $FLUPRO/flutil/lfluka per linkare la main lib con le routine Es: Dopo aver modificato la routine source.f : $FLUPRO/flutil/fff source.f → source.o $FLUPRO/flutil/lfluka –m fluka –o <nuovo nome> source.o → nuovo eseguibile Il main program e la routine modificata vengono linkati assieme Pavia, 8/ R. Brunetti, A. Menegolli

42 FLUKA per ICARUS il file di input : icat600_*****.inp
Il rivelatore ICARUS T600 e` stato simulato con FLUKA → sono gia` pronti: il file di input : icat600_*****.inp il file della geometria : icat600pmt.geo il file pemf : ica.pemf Sezione del rivelatore FLUKA-ICARUS T600 dentro la sala B ai LNGS. Pavia, 8/ R. Brunetti, A. Menegolli

43 Neutron shield (70cm thick) Cables-electronics (empty space)
Rock Hall B Neutron shield (70cm thick) Cables-electronics (empty space) Platforms (Al ) Insulation (Nomex honeycomb) Gap (5cm) Container (Al honeycomb) Gas phase Ar (8cm) Inactive LAr Active LAr Pavia, 8/ R. Brunetti, A. Menegolli

44 Nel file di input viene usata la card DEFAULTS = ICARUS :
Il default ICARUS Nel file di input viene usata la card DEFAULTS = ICARUS : TITLE ICARUS T600: 16 wire planes + 4 pmt, 200micron pitch * * Sets the ICARUS defaults for this run DEFAULTS ICARUS * EMF on Rayleigh scattering and inelastic form factor corrections to Compton scattering activated (no EMFRAY needed) 3. Detailed photoelectric edge treatment and fluorescence photons actvated (no EMFFLUO needed) Low energy neutron transport on (high energy neutron threshold at 19.6 MeV) Fully analog absorption for low energy neutrons Continua… Pavia, 8/ R. Brunetti, A. Menegolli

45 Il default ICARUS si trova sotto la datacard DEFAULTS
6. Particle transport threshold set at 100 KeV, except neutrons (19.6 MeV), antineutrons (50 MeV) and (anti)neutrinos (0, but they are discarded by default anyway) Multiple scattering threshold at minimum allowed energy both for primary and secondary charged particles 8. Delta ray production on with threshold 100 KeV (see option DELTARAY) 9. Restricted ionization fluctuations on both for hadrons/muons and EM particles (see option IONFLUCT) 10. Tabulation ratio for hadron/muon dp/dx set at 1.04, fraction of the kinetic energy to be lost in a step set at 0.05, number of dp/dx tabulation points set at 80 (see options DELTARAY, FLUKAFIX) 11. Heavy particle e+ e- pair production activated with full explicit production (with the minimum threshold = 2 me) 12. Heavy particle bremsstrahlung activated with explicit photon production above 300 KeV 13. Muon photonuclear interactions activated with explicit generation of secondaries 14. Heavy fragment transport activated Il default ICARUS si trova sotto la datacard DEFAULTS del manuale di FLUKA Pavia, 8/ R. Brunetti, A. Menegolli

46 Compilazione dell’eseguibile
Fluka-ICARUS ha alcune routines utente dedicate: source.f mgdraw.f Come le routines utente standard vanno compilate con lo script fff e quindi linkate alla libreria standard di FLUKA-ICARUS libicamvax.a . La procedura e` la seguente: copiare libicamvax.a.std da $FLUPRO/ in ./ 2. $FLUPRO/flutil/fff routine.f 3. mv libicamvax.a.std libicamvax.a 4. ar –r libicamvax.a routine.o 5. copiare libicamvax.a in $FLUPRO/ (come su) 6. $FLUPRO/flutil/lica flukaica Pavia, 8/ R. Brunetti, A. Menegolli

47 SDUM = MUHALLB : Eventi di muoni atmosferici
La routine utente source.f è già predisposta per attivare gli eventi di interesse per ICARUS, quali interazioni di neutrini solari, atmosferici e da supernova, il decadimento del protone, etc… L’evento interessato viene chiamato dalla Data Card SOURCE , inserendo la stringa corrispondente nella casella SDUM . Tra le opzioni disponibili: SDUM = MUHALLB : Eventi di muoni atmosferici SDUM = NEUTBACK : Eventi di neutroni (o fotoni) di background SDUM = NEUTCAPT : Eventi di cattura di neutroni SDUM = NEUTRISC : Eventi di neutrino SDUM = NUCDCY : Eventi di decadimento del nucleone SDUM = SLNUELEL : Interazioni elastiche di n solari su elettroni SDUM = SLNUGTFE : Eventi di assorbimento Gamow-Teller e Fermi di n solari su 40Ar SDUM = SNNUELEL : Interazioni elastiche di n da supernova su elettroni SDUM = SNNUGTFE : Eventi di assorbimento Gamow-Teller e Fermi di n da supernova su 40Ar etc… Pavia, 8/ R. Brunetti, A. Menegolli

48 Esecuzione Ora, il comando per eseguire FLUKA-ICARUS e`: $FLUPRO/flutil/rica -e flukaica -p ica –Nx –My icat600_***** Il file di output piu` importante e` quello con l’estensione .flufz . Questo file puo` essere aperto con Qscan andando su: File Open MC T600 Rawdata input file e poi aprendo il file .flufz . Il display e` del tutto analogo a quello dei Rawdata, con le due camere (Left e Right) e le tre viste (Collezione, Induzione I e II) selezionabili. Pavia, 8/ R. Brunetti, A. Menegolli

49 Un evento FLUKA-ICARUS
Collezione Induzione I Decadimento dell’adrone S+ in p e p0 Induzione II Pavia, 8/ R. Brunetti, A. Menegolli

50 Files di output vtxprn.f rcflic.F flicrc.F
Alcune routines modificabili dall’utente permettono di ricavare informazioni sulle particelle prodotte nelle interazioni in FLUKA ICARUS T600 (tipo, energia, momento, direzione…). Per ottenere un file di uscita con tali informazioni bisogna intervenire sulle routines: vtxprn.f rcflic.F flicrc.F In rcflic.F viene salvato un file fort.99 con le informazioni ottenute editando la routine vtxprn.f . A questo punto le routines editate vanno compilate: 1. $FLUPRO/flutil/fff –x –n rcflic.F 2. $FLUPRO/flutil/fff –x –n flicrc.F 3. $FLUPRO/flutil/fff vtxprn.f Pavia, 8/ R. Brunetti, A. Menegolli

51 1. mv libicamvax.std libicamvax.a 2. ar –r libicamvax.a vtxprn.o
La routine vtxprn.o va linkata alla libreria standard di FLUKA-ICARUS libicamvax.a : 1. mv libicamvax.std libicamvax.a 2. ar –r libicamvax.a vtxprn.o 3. copiare libicamvax.a in $FLUPRO/ Infine va lanciato il build_flicrc che produce l’eseguibile flicrc. Una volta lanciato flicrc, e` richiesto di inserire il nome di un file di output che peró non è importante, e un file di input che in questo caso e` il file .flufz. Alla fine del processo viene creato il file con le informazioni richieste: fort.99. In sotto Public, c’e` il file: icafluka.tar.gz dove sono raccolte le routines utente per FLUKA-ICARUS descritte in precedenza. Pavia, 8/ R. Brunetti, A. Menegolli


Scaricare ppt "Introduzione all’uso di FLUKA"

Presentazioni simili


Annunci Google