The User controls the generator primarily through 4 MCxx banks banks:-
Companion/Id Codes/*_typesIf the interaction code describes a decay scheme, then the bank number of the MCDS bank is given by the interaction code
$mc_interaction_type $pick_particle_list $mc_position $pos_mcpl $mc_direction $dir_mcpl $mc_time $tim_mcpl $mc_energy $en_mcpl $mc_miscellaneous $misc_mcpl_pol
which tells SNOMAN to take the next particle block and create as many tracks as
it contains. Each track is given the ``start particle'' interaction code and
all particle properties are drawn from the current particle block. If required,
more than one of these processes can be started per event, simply by specifying
more than one particle (using the $mc_num_seed_vx
command) and using the
same distributions for each `particle'. Once all the data in the MCPL has been
used the system starts again at the start of the bank.
Its possible to have a hybrid system, taking some properties from MCPL and others from a built-in generator. To do this simply specify the required property, e.g.:-
$mc_energy $en_mono 2.5
It is even possible to change the interaction type, e.g.:-
$mc_interaction_type $start$$e_minus$
although this has to be done with caution. First it could result in changing the particle type, which may not be a sensible thing to do. Second, as such an interaction only specifies a single particle, it only uses the first particle of the current particle block. If there is more than one particle in the block the others will not be used and as this is almost certainly going to give a skewed distribution, a ZTELL warning is recorded each time data is ignored in this way.
Feeding in very large amounts of data from an external Monte Carlo can place an excessive demand on the titles memory. To bypass this problem:-
file mco 2 my_mc_data.dat
$mc_num_seed_vx = 1
. Attempting to do more will cause the
program to terminate with an error message. This too is not much of a drawback,
if feeding in a large external Monte Carlo, its very unlikely that there will be
a need to fire off several external events within a single SNOMAN event.