From: Paola Sala (paola.sala@cern.ch)
Date: Tue Sep 11 2007 - 16:05:56 CEST
Information of a recent change in the FLUKA code
------------------------------------------------
Starting from FLUKA2006.3b.5 (respin of July 25th 2007), in order to
prevent unwanted ambiguities in material assignments, an error message
is issued and an abort is triggered when
*** the same name is used for different material definitions ***
*** including internally defined materials ***
*** unless the input is explicitly declared to be number based only ***
This modification has become necessary due to the name-based syntax:
if two materials have the same name, the program cannot distinguish
between them ( for instance, when assigning materials to regions by
names).
Note that internally, materials are stored and identified by
number. By default, a newly defined number gets an index equal to the
total number of previously defined materials plus one.
Therefore, there could be the possibility to ASSIGN A MATERIAL
DIFFERENT BY THE ONE INTENDED BY THE USER. An easily overlooked
dangerous situation is for instance the new definition of a material
having the same name of a pre-defined FLUKA material. In order to
avoid any possibility of confusion, the program now stops in case of
ambiguity.
This confusion was not possible with number-based input, where it was
common practice to re-define internal materials or to have different
materials with the same name, and distinguish them on the basis of
their NUMBER. (easier for neutron libs, and for pemf in old times..)
Note that material definitions can always be overridden by explicit
specification of the material NUMBER ( WHAT(4) in MATERIAL ).
Starting with this respin, FLUKA issues
a) warning messages while reading material
b) error message at the end of reading if two or more materials still
share the same name.
Therefore:
-- In case you defined different materials with the same name, you'll
need to change them, and to issue LOW-NEUT cards when needed
-- In case you wish to re-define an internally defined FLUKA material
keeping the same name, you will have to OVERRIDE the internal
definition by explicitly setting the material number in
WHAT (4) of the MATERIAL card:
for instance: if you wish to re-define CARBON because you use an
high density state, you should write
MATERIAL 6.000 12.01 2.100 6.00 0.000
0.000 CARBON
where the 6.0 in 4th field is the number of the pre-defined CARBON
material.
***** an improvement is foreseen soon : the setting of what(4) < 0.0
will act as a flag forcing FLUKA to override a possible pre-existing
material with the same name, otherwise, as ususl, the newly defined
material will get a material number equal to the largest existing one
+ 1 ******
-- In case you wish to keep an old-style material definition, you can
still do it, but you'll need to use a fully number-based input, no
names, and to declare it as such by setting WHAT(4)=4.0 in GLOBAL.
This could be an easy way to keep old number-based input running.
We are aware of the penalty for users who will have to change their
input, but we hope this penalty is balanced by safety..
The FLUKA team
This archive was generated by hypermail 2.1.6 : Tue Sep 11 2007 - 16:46:34 CEST