Implemented posibility to write hits from musrSimAna into a "dump file",
which can be used later as an input to the analysis of a real PSI
data (as in a real experiment).
1) Correcting bugs with the (multi)map treatment in routines
musrCounter.cxx and musrScintSD.cc - the elements of the (multi)maps
were erased in a loop over the (multi)maps, which is wrong.
2) Also the time variation is moved back to "process event" rather
then "end of event" in the musrScintSD.cc (is probably more realistic).
1) musrSimAna significantly rewritten, but still needs to be checked.
2) changed way how some optical photon properties are simulated,
+ added cross-talk effects (if requested).
1) change in the way how random time scattering in APD is
generated for optical photons - now the events should be
reproducible irrespective of whether the random time is
or is not requested.
2) indroducing a possibility to simulate optical photons, but
not to process them - this option, however, does not seem
to speed up the simulation significantly.
1) Added "tubsbox2" as a new volume in musrDetectorConstruction
2) Changed the way how the double hits in M-counter and P-counter
are treated in musrSimAna - this was a very big change which
still needs to be cross-checked.
1) Bug removed from the simulation of optical photons with
the option "APDcellsEffectRequested" -- namely, when any
simulated photon hit a given APD cell, the cell became "blind"
to any other photon, irrespective of the arrival time of the
next photon. However, we need that if the "second" photon
(simulated at later phase) enters the APD cell before the
"first" one, that the time of photon arrival changes to the
earlierst photon.
2) A new keyword "sampleID ..." (defining which volume is the
sample volume) was added to the musrSimAna. The manual
was updated accordingly.
1) bug found and corrected in the field-map extrapolation of the electric
and magnetic fields for the spin-rotator (3DEOpera and 3D and
symmetryType=1 or 2). The documentation was updated.
2) Some new variables added to the musrSimAna - the documentation has not
been updated yet.
New geometry called "polycone" implemented in musrSim.
This required also an implementation of command
"/musr/command arrayDef arrayName N x1 x2 ... xN"
See the updated documentation musrSim.pdf.
Impementation of "/musr/command process SetLossFluctuations_OFF ..."
command (allows one to swith the statistical fluctuations in the
ionisation losses).
1) bug fix in musrAnalysis.cxx for rotation reference frame causing some memory leak
2) Implementing prompt peak variables and conditions (usefull only for investigations
of the origin of the prompt peak).
3) Updating the documentation describing changes in point 2)
1) Adding/improving the simulation of light signals and APD
2) Many small changes and improvements
3) Adding manual to musrSimAna to the svn repository
4) Adding some example files for musrSim
1) changed treatment for the odet_timeCFD determination
2) changed definition of odet_timeC and odet_timeD
3) corrected bug in execution time calculation for randomOption 3
4) corrected bug in eventID setting when randomOption=3
1) Correction in rundom nr generator (option 3)
- still there is a bug in the printing of time, for which the
run is running (shown is a large negative number) - should be
fixed.
2) Change in physics list which allows to set rise time in the scintillators
1) correction of GNUmakefile - by mistake a musrSimTest was set there
instead of musrSim
2) replacing odet_timeE variable by odet_timeMean
3) replacing one obsolete method from stepping action
(Geant 4.9.4 was complaining) by a proper method
4) update of the first part of the documentation
5) implementing a possibility to write out output Root data
into a different directory
6) perhaps some other minor changes
1) Constant fraction discriminator added to the analysis of the
optical photon signal.
2) Bug fixes in the optical photon simulation.
3) A few other small improvements.
Changes in musrPhysicsList.cc that were needed for new version of
Geant = Geant4.9.4. The changes remove G4MultipleScattering and
MultipleAndCoulombScattering, because multiple scattering has to
be treated differently for different particles in Geant4.9.4 and
"G4MultipleScattering" is not supported anymore. The documentation
has to be updated (i.e. comments about MultipleAndCoulombScattering
has to be removed from doc/musrSim.tex).
1) correction of volume that is assigned to optical photons
(odet_ID) - now it is the volume from postStepPoint instead of
preStepPoint
2) new variable added (nOptPhot) - number of optical photons
generated in the event
This version contains many changes!
1) Optical photon simulation is now possible - some work still may need to be done
(e.g. the manual is not updated yet), but it should basically work already now.
2) Changes in the musrSimAna - correction of some bugs (mainly in the coincidence
of coincidence and veto detectors) and some other improvements
Added new subdirectory (analysis package) "musrSimAna". This is
a general analysis program that allows one to plot histograms
out of the simulated trees. The detector setup of the veto and
coincidence relations with the positron/muon counters is defined
in *.v1190 files. Also the histograms that should be plotted/saved
are defined in this file.
Thus (at least in principle) the user does not need to write
an analysis program dedicated for his/her instrument. One just
needs to modify the *.v1190 file. The "musrSimAna" is still
in the development phase, no documentation is available at this
stage.
- added special geometry of GPDmHolder for the m-counter light guide at GPD
- added specail case of 3DBQuadVrankovic field map for the quadrupoles
(format defined by Vjeran Vrankovic)
New variable "timeToNextEvent" added in order to simulate time differences between subsequent events.
1) /gun/meanarrivaltime meanArrivalTime (defines the mean time difference betweent
the subsequent events).
2) timeToNextEvent - new variable written out to the root tree.
This new variable is needed for the pile-up studies
1) Implemented a posibility to add "Models" to physics processes
(this should be a first step towards the implementation of the
Meyer scattering. The documentation has not been updated yet.
2) Minor change - implementation of a special volume for GPD
Changes needed by Pavel Bakule for low energy moun beem excited by laser.
(The user can restrict a box-like region for the generated particles (muons)).
1) UPGRADE TO GEANT 4.9.3
- Physics list had been modified
- List of the physics processes in *.mac has to be modified too!
(otherwise results of 4.9.3 do not reproduce well the results
of 4.9.2).
Example *.mac files still use the old implementation of the physics
processes, i.e. they have to be corrected in future!
2) POSSIBILITY TO WRITE OUT DERIVATIVES OF THE MAGNETIC FIELD
AT A GIVEN POINT (see the documentation,
"/musr/command globalfield printFieldDerivativeAtPoint".)
Several things were added in this version:
1) varibale save_time() has been added to the root output tree
2) possibility to read in field maps, in which varibles x,y,z
increase differently than previously expected
(see the description of "variableIncreasingOrder" in the
"3DEOpera" paragraph of the documentation).
3) Added "3DEOpera" format of the fieldmap
4) Added file G4EqEMFieldWithSpin.cc_for_Geant4.9.2p02_only that
should be used only in the Geant version 4.9.2p02 (there was
a bug in this file, which is not present for any other version of Geant4)
5) Examples 101.mac and 102.mac added, but its description has not
been completed yet in the musrSim.pdf.
1) The filling of the root tree was called from musrScintSD.cc, which was
problematic, because no variables were written out if there was no
sensitive volume defined (problem for example when one wants to study
the beam-line properties using just save volumes).
Therefore the tree filling is now called from musrEventAction.cc.
2) A possibility to gently stop the run by creating a file with the
name "RUNNUMBER.stop" in the working directory has been introduced.
("Gently" means that root output file is closed properly.)
Histogram "hGeantParameters" added to the output file. This can be helpful
when more output files are merged together by "hadd" command, and info about
the number of events is needed by the analysis program.
The documentation was updated accordingly.
The reading of the field map files in the 3D Opera file format has been extended:
1) The lenght unit can also be specified in cm instead of in meters only.
2) Only one octant (in Kartesian coordinate system) of the field map can be
specified, and the field can be extrapolated to other octants (this
depends on the symmetry of the field).
3) First line of the field map does not have to be empty (but it can be).
4) Documentation has been modified accordingly.
This svn update includes several smaller corrections and updates accumulated
over last few months:
1) For the Geant4.9.2 it was necessary to remove the privately modified file
src/G4EqEMFieldWithSpin.cc. Our corrections in this file (and also in
the file src/G4DecayWithSpin.cc) were adopted by the Geant developers into
the official Geant code, and therefore these two files were deleted.
However, if one uses older version of Geant (i.e. Geant4.9.1 or older),
one should rename the G4EqEMFieldWithSpin.cc_for_Geant4.9.1_and_older in
his/her src directory to G4EqEMFieldWithSpin.cc to correct for a Geant
bug.
2) Implementation of save_polx, save_poly and save_polz variables
3) Implementation of the field map normalisation within the field map
itself (was already possible for the field-map formats generated by Toni,
now it is extended also for the field maps generated by OPERA).
4) Possibility to swap and invert x and y axis read out from the TURTLE
file.
5) Perhaps some other tiny changes
The implementation of "muIniTime" has been finalised (i.e. the time,
when the initial muons are generated). This variable is now stored
in the root tree. The documentation of the musrSim has been updated
accordingly. Simple test of the upgraded program was done,
the implementation seems to be OK.
- introduced modifications done by Pavel Bakule at ISIS:
a) the time when the initial muon is generated can be
set according to a gaussian or flat distribution.
(all muons were generated at time 0 before this change).
b) a new volume "cylpart" has been added.
The code can be compiled, but no tests of the newly implemented
features have been done. In future, the information about the
time of the muon generation should be added to the root output
tree.