
Hopefully this section will be a guide to solving some of the most common problems experienced while trying to run TrigSim.
Q: Why does TrigSim crash when running on events that have been
reco-ed?
A: TrigSim will usually crash on reco-ed data coming from the online
machines because the default there is to not keep the raw data chunk
(RDC). Please note that this is also the default when you run it
yourself...no RDC! TrigSim needs this RDC to run properly. Try reco-ing the
raw events yourself, setting reco to keep the RDC.
Alternatively you can just run TrigSim on the raw events.
Q: What is the difference between a framework rcp and a regular
rcp?
A: Framework rcp's are files that control how programs run. They tell
the program which parts of the input data to look at, what routines to
perform on it, what kind of output to produce, etc. Regular rcp's
contain parameters that the program can plug into the code, and
includes everything that is stored in a common database. Framework
rcp files include statements like
'string Packages = "hist geo read ntpl run_config mag unpack"',
while regular rcp files
include statements like 'int debug_level = 0'.
Q: How do I use a custom level*.sim* file with runD0TrigSim?
A: Create a directory trigsim in your working directory. Place
copies of any *.sim* files you want TrigSim to use in there. As one of
it's last initialization steps, TrigSim overwrites its default *.sim*
files with any it finds in the trigsim directory. No additional
command line options are needed.
Q: When I run TrigSim, I see a message like "cp: cannot stat <
path>/trigsim/*". Is this a problem?
A: No this is not a problem. It's a hiccup in the way TrigSim loads its
files that we haven't gotten around to fixing yet. It can be ignored.
Q: Can I combine the command line options -localrcp and
-localfwkrcp?
A: Yes, you can combine them. In fact, when in doubt it is probably best
to try using both first.
Q: Is the -localfwkrcp flag supposed to be used when I
run runD0TrigSim or runTrigAnalyze?
A: It depends on what framework rcp files you have modified. If you have
made changes to any of the files in d0trigsim/rcp, then you
need to use -localfwkrcp with runD0TrigSim. If you
have made changes to any of the file in trigsim_analyze/rcp,
then you need to use -localfwkrcp with runTrigAnalyze.
If both have been modified, then you need to use it with both executables.
Q: I would like to get more information out of package blah.
How might I do that?
A: You can try turning on (or turning up) package blah's debug
information. Switches to do so could be in several places. The first
place to look would be in the package rcp files. The level 1 and level 2
trigger simulator rcp's, for example, are in the tsim_l1l2
package in the rcp directory. Look for variables like
"bool debug_info" or "int debug".
Bool's can just be switched from
false to true. The general rule for int's is the greater
the value, the
greater the amount of output, with 0 being silent. Once you've changed
an rcp value, you need to add -localrcp or -localfwkrcp
to your command line to make sure it is picked up.
Sometimes a debug switch is set within the code itself inside the "Init"
or "MakeMe" routine. In this case, you would need to change the value,
recompile, and then add the -localbuild command line option.
Q: I am running over Monte Carlo events and want to have the MC
information in the output, but I tried running the default runTrigAnalyze
and the information is not there. What do I need to do?
A: In some releases the MC information package was acting up and it was
removed from the default TrigAnalyze chain. You can try to put it
back in. To do so:
Q: I want to have the (level N trigger bit / run number /
event number) information in my output, but I tried running the default
runTrigAnalyze and the information is not there. What do I need to do?
A: In some releases the "event information" package was acting up and it was
removed from the default TrigAnalyze chain. You can try to put it
back in. To do so:
Q: How do I tell what version/tag of a package I've checked out?
A: The tag number of a package is checked out with a package. It is given in
the text file called "Tag" in the package's "CVS"
directory. Ignore the first letter in the string given in the Tag
file. It corresponds to the status of the package when it was checked out
and is not part of the tag number itself. For example, if you see something
like "Np15-02-00", the tag number is actually "p15-02-00".
Q: I'm trying to use a version 12 trigger list (in .xml form) and
p15 TrigSim, but it's crashing on the impact parameter (IP) triggers or
giving me COOR errors. What's wrong?
A: When TrigSim translates a .xml triggerlist into the *.sim files it needs
(using "coorsim"),
some values are extracted from the COOR name server. If COOR is not set
up correctly, this can cause problems. IP triggers are known to have
such problems. To get around this, you need to execute the coorsim
command yourself before running TrigSim. Create a file in your working
area called l3ns.cmd. Edit the file to read:
ns set l3_beam_pos.x 0.0
ns set l3_beam_pos.y 0.0
ns set l3_beam_pos.yz 0.0
ns set l3_beam_pos.xz 0.0
load triggerlist_file_name
start
where triggerlist_file_name is replaced with the name of the
triggerlist file you wish to use, minus the .xml. Issue the command
coorsim triglist-name.xml l3ns.cmd. The triglist...
parameter is really ignored; it is the "load" command in the
l3ns.cmd file that is really what is needed. Copy or move the
files that get produced into your trigsim subdirectory. You
should then be able to continue to execute TrigSim as usual without any
additional command line options required.
Q: My D0TrigSim_x.out file is full of lines that say
"SMTChannel::SMTChannel - Cannot translate to offline address". This is
annoying and/or crashing my jobs. How can I turn it off?
A: This message is a result of running a version of l2stt_util that cannot
handle data as an input. There are several options:
Q: My TrigSimAnalyze job crashed with a message about a
HepTuple name being too long. What do I do now?
A: Chances are you are trying to run a muon central matching tool
with the name "MUO_CENTRAL_MATCH" (look in your toollist file).
If this is the case, there is a hack-fix in l3fanalyze v00-02-38.
You can either check out this tag, recompile, and run with -localbuild,
or you can look at the code added in
l3fanalyze/src/L3MuoCentralMatchDebugInfoExaminer.cpp and add it to
your own code.
Q: My TrigSim job crashed at the end of a job while deleting filters.
The output looks OK though. It is OK?
A: TrigSim most probably crashed in this case due to a filter trying to delete
a tool instance more than once during the clean-up phase of the program
exit. This bug is being worked on. Even with this crash, all output is
perfectly OK and safe to use.
Q: I'm trying to use my own .sim files, but TrigSim is not picking them
up. What's wrong?
A: Are your .sim files in a directory called "trigsim" in your
working area? If not, create the directory and put a copy of your .sim
files in it. If so, are you using the -name command line option to
redirect your output? Please see the -name
warning.
Q: Can I use TrigSim and p16?
A: Well, yes and no. p16 is not a production release for TrigSim. It might be a
good release for L3 (use the -l3only option) but it's not clear how well all three
levels run together in p16. If you have to run all three levels make sure you switch
off the STT part (The STT simulation was never guaranteed to work in the p16 release
of TrigSim.) since it will crash TrigSim:
Q: Why does TrigSim crash when I run on DST output?
A: TrigSim crashes when trying to create the thumbnail.
The problem is that during the creation of the thumbnail one needs
the full blown up CPS chunks. These are not available when running
on the DST, because in the DST one stores the compressed CPS information
which is also in the thumbnail. The full blown up CPS chunks are not
recreated on the fly....
In any case if one wants to run trigsim on the DST one first needs to
create the DST, so one may also change the RCP for CPSReco in
addition to those for D0reco.
The list of changes to be done before running D0reco is the following:
In the d0reco/rcp/reco_write_data.rcp file one needs to enable writing
out the DST, by changing the string Packages line, removing the execution
of rdcdistill and uncommenting the RCP writedst line. These two lines
should like like as follows:
string Packages = "tmb tagspecial dump writemonitor writedst tagtmb writetmb"
RCP writedst =
In addition one needs to change one line in the cps_reco/rcp/CPSReco.rcp file:
bool DEACTIVATE_CLUS_COMPRESS = true // ClusterChunk default is compress
(the default is false, it should be changed to true).
(Thanks to Marco for pointing out the problem and providing us with a
work around!)
Q: I get the following error message: ImportError: No module named dcoracle
mv: cannot stat `beamspot_l2stt.dat': No such file or directory
What's going on?
A: Please do a 'setup python_dcoracle' before you run TrigSim.
Q: How do I change the CTT track equations?
A: Do a 'setup dfea_equations prod8' for all runs up to 202777. The data taking period
starting with run 202778 needs a 'setup dfea_equations prod12'. The
default behavior (setup dfea_equations) points to the prod12 equations.
Q: When I tried to run TrigSim (or TrigAnalyze) it crashed and I have
no idea what is wrong. What do I do now?
A: Please do all of the following steps:
| Next section: Glossary | Previous section: Examples | Back to Table of contents |
