Configuring NEUGEN3
NEUGEN3 contains a large numbers of physics pieces which can be configured in a variety of ways.
It is useful to idenfity several concepts for discussing the state of the "physics" in the
generator:
-
A model. A term meant to identify a relatively self-contained piece of the program that represents the
implementation of a specific model for a physical process. They are often based on theory predictions,
parametrizations to data, or "best guesses" in regions where both are lacking.
-
Model parameters. Models typically have parameters that are determined through fits to the data.
-
The physics configuration. A set of models with parameters tuned to their best values.
In studying systematics one would often like to study the effect of a change in models or a
variation in model parameters. One can adjust the physics pieces of NEUGEN3 in a number of ways:
Changing configurations:
The neugen configuration is identified by a configuration name
(a string) and version (an integer). The versions are meant to designate small changes
(often retunings) of an identical or very similar set of models.
Configurations correspond to completely tuned versions of the program, and in particular define
the "default" configuration of the program at various points in time. Any program accessing
NEUGEN3 physics components - event generators, cross section plotting tools, weighting tools, should
start by initializing the program to a known configuration.
initialize_configuration(name,istrlen,iver,iok)
name - character string identifying the configuration
istrlen - an integer giving the length of "name"
iver - the version of this particular configuration
iok - (returned - logical) status word
At this point the program knows about the following configurations / versions:
-
2004DEF-1 : The default NEUGEN3 tuning used for 2004 MINOS simulations
-
MODBYRS-1 : Modified Bodek-Yang + Rein-Seghal. Treats the DIS / RES overlap region by removing
a constant fraction of DIS cross section below a certain cut.
(described as "version 2" in this talk )
-
MODBYRS-2 : Modified Bodek-Yang + Rein-Seghal. Treats the DIS / RES overlap region by removing
amounts from exclusive channel DIS predictions.
(described as "version 3" in this talk )
-
MODBYRS-4 : Modified Bodek-Yang + Rein-Seghal. Improvements to numerous aspects of the
cross section model as described in MINOS-doc-1977-v1 and MINOS-doc-2342-v1.
Also use new INTRANUKE, hadronization, and nucleon form factors.
-
DUALITY-1 : Use Bodek-Yang only, no explicit resonance model. The argument
is that in iron the resonance structure is washed out by Fermi motion anyways
and to a good approximation is just the duality averaged curve DIS curve.
Here Bodek-Yang is integrated down to inelastic threshold.
Changing Models:
A choice between alternative models for the same physical process can be made by calling
the MODEL_CHOICE routine:
model_choice(name,istrlen,ival,iok)
name - physics model to be changed
istrlen - an integer giving the length of "name"
ival - identifies the model to be used
iok - (returned - logical) status word
Current model options are:
-
DISMODEL:
-
Old leading order model with GRV98HO
-
Bodek-Yang modified low Q2 model with GRV98LO
-
DISRES_OVERLAP:
(described in this talk )
-
Remove amounts from exclusive channel states for DIS
(old NEUGEN model)
-
Remove a constant fraction of DIS below a W cut.
-
PIABSORPTION:
-
Old NEUGEN model, all pion energy is absorbed in the nucleus
when pion absorption occurs in the intranuclear cascade.
-
Ransome model (more details in
this talk.)
-
FORMATION_ZONE:
-
Old model, based on SKAT parametrization.
-
Model based on NOMAD parametrization.
-
SKAT parametrization with longer formation zone time to
compensate for overlarge nucleus.
-
BY_VER:
Version of the NEUGEN Bodek-Yang implementation
-
Bodek-Yang version 1 (MINOS Carrot MC)
-
Bodek-Yang version 2 (MINOS Daikon MC)
-
ODDCARROT:
Fully capture the carrot MC MODBYRS-2 implementation including errors
-
Fix carrot bugs.
-
Include carrot bugs.
-
FORMFACTORS:
Elastic / Quasi-elastic form factors
-
Dipole form.
-
BBBA-2005 parametrizations.
-
INTRANUKE:
Version of INTRANUKE to use.
-
Old INTRANUKE.
-
New (S. Dytman-improved) INTRANUKE.
-
PB:
Pauli blocking model.
-
Low Q2 rejection based on Fermi gas model.
-
Low Q2 rejection based on shell model.
-
BINDINGENERGY:
Whether or not to remove binding energy from cascade nucleons once
they emerge from nucleus.
-
Dont subtract binding energy.
-
Subtract binding energy.
-
HADRONIZATION:
Hadronization model to use.
-
Old KNO model.
-
AGKY model.
The PDFLIB group, set, and minimum Q2 for pdf evaluation can be modified by calling
SET_PDFSET(igroup, iset, q2min).
Changing Parameters:
Model parameters can be individually tweaked by calling the SET_PARAMETERS subroutine:
set_parameters(name,istrlen,val,iok)
name - character string identifying the parameter to be changed
istrlen - an integer giving the length of "name"
val - the new value for the parameter
iok - (returned - logical) status word
For more details on the available parameters see
this talk.
Important Notes:
The subroutine PRINT_CONFIGURATION will print to standard output the current configuration
of the program and the values of all model parameters. The output corresponding to the
"2004DEF-1" configuration is shown here.
The MODBYRS-2 default configuration is here.
The MODBYRS-4 default configuration (pre_daikon_7 tag) is here.
Initialization for event generation:
For event generation, a user should call BEGIN_GENERATION after INTIALIZE_CONFIGURATION but
before event generation begins.
Initialization for non-default event generation:
For event generation the program accesses a data file which contains pre-calcuated cross
section tables. These values correspond to those for the current default configuration of the
program. If a user would like to generate events with a different configuration, a different
set of models, or different cross section parameters, these tables need to be recalculated.
Code in this case would need to do the following:
call intitialize_configuration(...)
call begin_generation(...)
c redefine models, parameters etc.
call model_choice(...)
call set_parameters(...)
call print_configuration
call calc_xsectable
... now begin event generation loop
e-mail: gallag@minos.phy.tufts.edu
Last Updated: Dec. 10, 2006