[Prev][Next][Index][Thread]

Re: PROBLEMA trasporto secondarie



Ciao,

Alessandra Filippi wrote:
> ciao a tutti,
> 
> 
>>... Il problema
>>nasce in quanto e' stato cambiato un parametro di geant, MXGKIN da 100 a
>>250. Questo crea un problema nel programma fidamc in runtime. In pratica
>>il nostro codice e' stato scritto per accettare 100 come parametro della
>>cinematica e non 250.  La conseguenza e' che non vengono copiate le
>>particelle secondarie dal trasporto/tracking alla cinematica.
> 
> 
> se questo e' il motivo, l'informazione e' importante e secondo me si puo'
> risolvere in modo semplice senza scomodare ricompilazioni di librerie,
> ri-installazioni di linux etc. Almeno, io ho provato cosi' e mi funziona,
> mi pare. Provate anche voi e fate sapere se e' vero.
> 
> Il parametro MXGKIN e' incluso dentro al common GCKING (se non ricordo
> male) che viene assorbito dal file geant321.cmz. Quando si installa per la
> prima volta la ricostruzione/montecarlo su una macchina nuova, questo file
> manca (quasi) sempre e la cosa migliore che si puo' fare e' copiarlo da
> dove c'e' (tipo, dal diskserver). Peccato che questo file, che serve
> unicamente a fornire i common di geant, deve essere allineato alla
> versione di librerie che vengono installate, cosa di cui, se si procede
> nel modo che ho indicato (e che io ho fatto un po' sportivamente varie
> volte), non si puo' essere certi.

> Morale: nel common che viene incluso in compilazione dei nostri codici,
> ovunque serve la sequenza GCKIN, il valore di MXGKIN e' fissato a 100, se
> il file geant321.cmz e' "allineato" alle versioni cernlib <= 2002.
> La soluzione e' banale (sempre che vi funzioni). Si va nella directory
> dove si e' scodellato il file (tipicamente /cern/pro/src/cmz o qualcosa del
> genere), lo si apre con cmz, si edita il deck gcdes/blankdek, si trova la
> definizione di MXGKIN e la si cambia mettendo 250 al posto di 100.
> A questo punto, si **ri-installano** (cmz -install...) i codici, anche
> senza cancellare la struttura di directories gia' esistenti, et voila'.
> Il common corretto viene automaticamente agganciato.

Ottimo ! Tutto nasce perche' dal 2002 sono passati a cvs e quindi il cmz 
non viene piu' aggiornato. L'unico problema e' che non sei sicura che le 
definizioni del common block siano allineate con la libreria (ho visto 
che ci sono ulteriori differenze nei common oltre alla gckin).

La soluzione migliore sarebbe prendere le definizioni dei common dagli 
include file dalla dir delle cernlib e non dal cmz:

src/geant321/geant321

in questo modo si e' allineati sicuramente tra libreria e definizioni di 
common. Questo sarebbe fattibile con una struttura tipo cvs. Se vuoi ho 
tutti gli script da passarti per la conversione. In questo modo si puo' 
inserire il .inc che punta alla directory giusta.

> 
> Per favore provate anche voi, a me su RH9 cernlib 2003 cosi' funziona,
> fate sapere se cosi' va oppure no con tutte le distribuzioni che usiamo.
> Se la cura e' valida, sara' bene depositare il nuovo geant321.cmz corretto
> nella pagina web, in modo che lo si possa scaricare da li' risolvendo una
> volta per tutte questa questione.

Provero' sicuramente.
Ciao,
Stefano

> saluti
>      Alessandra
> 


References: