home 

GRISU

Version Change Log

grisu_24july07

There is only one change between version 4.1.3 and version 4.1.4.  Version 4.1.4 adds the possibility of reading out untriggered telescopes by setting a new flag in the trigger record in the configuration file. You'll see this in one of the version 4.1.4 example veritas configuration files.

There are two major changes for version 4.1.3. First, the vbf writer is now compatible with vegas so that grisudet will produce vbf files that the vegas code can read. Detailed documentation is in the detector.pilot file.  As of this date, no one has independently tested the vbf writer with vegas; I'll remove this statement has soon as I have confirmation that the writer is indeed compatible with vegas.

Second, we once again have changed the pixel coordinates. With the telescope in the North pointing stow position, the camera x axis is to the East and the camera y axis points upward. Now, the pixel coordinates in GrISU conform to those used in both the vegas and the eventdisplay analysis codes.  The GrISU analysis.c code continues to produce images with respect to sky coordinates with sky axes parallel to the telescope coordinate system.  If you have a configuration file from a previous version, you may convert your pixel coordinates to the new system by using the "edit_pixels" code in the Config/Files directory: do "make edit_pixels", then "edit_pixels <config. filename>  > newfilename".  The code changes the sign of the pixel y coordinate and sends the entire new configuration file to stdout.

grisu_24july07

There are two major changes for version 4.1.3. First, the vbf writer is now compatible with vegas so that grisudet will produce vbf files that the vegas code can read. Detailed documentation is in the detector.pilot file.  As of this date, no one has independently tested the vbf writer with vegas; I'll remove this statement has soon as I have confirmation that the writer is indeed compatible with vegas.

Second, we once again have changed the pixel coordinates. With the telescope in the North pointing stow position, the camera x axis is to the East and the camera y axis points upward. Now, the pixel coordinates in GrISU conform to those used in both the vegas and the eventdisplay analysis codes.  The GrISU analysis.c code continues to produce images with respect to sky coordinates with sky axes parallel to the telescope coordinate system.  If you have a configuration file from a previous version, you may convert your pixel coordinates to the new system by using the "edit_pixels" code in the Config/Files directory: do "make edit_pixels", then "edit_pixels <config. filename>  > newfilename".  The code changes the sign of the pixel y coordinate and sends the entire new configuration file to stdout.

We had added a review of the coordinate systems used in this package in comparison to those used in vegas and in eventdisplay to assist with comparisons between simulation and analysis packages.  The link is at the bottom of this page.

You may checkout this version from the VERITAS U.Mass cvs repository "cvs checkout -r grisu_24july07" or you may download the corresponding tarball from the GrISU website.



grisu_13Feb2007

There are two major additions in this version: We added a vbf (VERITAS binary file) writer to grisudet with vbf parameters given in the detector pilot file, and we added a dual gain option to our fadc model with parameters given in the telescope configuration file. The hi-lo gain option can be turned off so that the output from grisudet is the same as in earlier version of GrISU.  You will not be able to use telescope configuration files from earlier GrISU versions with those from this version as the fadc record now contains the hi-lo gain parameters.

The new "V" record in the grisudet output file contains the version number for grisudet. You can, for example, use this to check if the hi/lo gain option is included or not (Important since the hi/lo gain flag is not included in the R records for previous versions of grisudet.

The new "H" record in the cherenkf7 output passes the observatory height from cherenkf7 to grisudet.

There is a new "F" record in the grisudet output that produces the input to the fadc in millivolts immediately following each "R" record. The F record is useful for investigating the fadc pulse shape and is turned on and off by the FRECP flag in the detector pilot file (see detector.pilot.documentation file in GrISU directory).

There is a new GrISU/Utilities/Diagnostics directory.  The vg_history2tree.cpp code in this directory moves the output from the photon_history file (see the DEBUG option in detector.pilot) into a root tree. This tree is very useful in tracing the results of all stages of the ray-tracing routines in optics.h for every photon striking the ground, either from cherenkf7 .cph files or from make_photon files (see GrISU/Simulation/Make_Photon directory).  Thus, point-spread functions are easy to plot from this root tree.  The same vg_history2tree.cpp code moves the output of the photon_history file for laser photons (also see GrISU/Simulation/Make_Photon directory) into a root tree.  Follow the Utilities link at the top of this page for detailed specifications of the root tree branches or see the readme in the Diagnostics directory.

MAJOR BUG FIX: The veritas array configuration files in GrISU/Config/Files describe the mirror facet orientation. If the orientation angle is 0 degrees, a point of the facet hexagon "points" in the y-direction.  This correctly describes the facet orientation of the Whipple 10 meter telescope; however, for the veritas array, a point of the facet hexagon should "point" along the x axis.  Thus, the orientation angle in the configuration file should be set at 90 degrees.  With this release, we have made this change in the veritas configuration files. Using photons from the "make_photons" code with the photon_history output written to a root tree (see Utilities/Diagnostics directory for this code), we see that the number of detected photons increased by 5 percent.

BUG FIX: The veritas configuration files in GrISU/Config/Files contain the pixel locations with x and y camera locations given in millimeters.  Previous to this version, the y position of the pixels had the incorrect sign so that data analysis was incorrect unless the y position was inverted when reading the pixel positions.  With this version the y position is now correct so that such inversion is no longer necessary.

grisu_25oct2006

Fixed Replaced Simulation/Shower/Kascade directory with latest version of Sembroski/Kurtzman shower code.  The  input/output routines and the atmosphere routines are now separated from the fortran shower subroutines. Thus, the showers are produced from subroutine calls from c++ code.  From now on, we can update the easily update the shower  fortran code by simply moving the code from the KASCADE repository to GrISU.  There is an additional optional zenith angle parameter in kascade.pilot; the shower zenith angle is randomly selected between the cosine of the two zenith angles to generate a shower database containing a range of zenith angles.  If this second cosine(zenith angle) is omitted, the code
generates showers with a fixed zenith angle.  Using kascade requires a fortran 90 compiler. The kascade Makefile automatically searches for the INTEL fortran compiler. If it does not find this compiler, it will use the Absort version 10 compiler if the ABSOFTV10_FORTRAN environmental flag is set.

The codes, kascade and cherenkf7, both use the atmospheric functions in Simulation/Atmos. The default atmosphere is currently the Corsika implementation of the U.S. Standard Atmosphere (see page 89 of the Corsika User's Guide).  The shower codes, kascade7 and kascade3, continue only to use the Atmosphere68 functions; when using these shower codes, you should set the functions in Simulation/Atmos to the US68 atmosphere (just copy "Makefile_US68" to "Makefile").

The output of the detector code, grisudet.c, has new "L" records following the "S" record. Each "L" line gives the telescope number and the x- and y-direction cosines for the telescope tracking.  These direction cosines are determined from the primary direction and the individual telescope pointing offsets contained in the configuration file.

The output of cherenkf7 has a new output record at the head of the file giving the observatory altitude in meters; the record is " H <observatory altitude meters>". The grisudet code will read this and pass it to the forthcoming vbf writer.

We have added a vbf input option to analysis.c and are in the process of making additional changes; as usual this code is a work in progress. We will continue to support analysis.c as it is a useful development tool (fast compilation and execute time).


grisu02_25_2006.tar.gz

Fixed kascade to accomodate all particles downgoing from zenith. When using kascade with cherenkf.c, do not use a depth of the first interaction less than 1.1 gm/cm2 (see kascade.pilot). Added important comments regarding peds/pedvars to detector.pilot and to the veritas and whipple example configuration files. Numerous improvements to analysis.c; see analysis.pilot comments for details. Added GrISU/Utilities/Datahandler for code to create a root tree from the .rcs analysis.c output file. We will continue to support analysis.c as it is a useful development tool (fast compilation and execute time).

                                 grisu_09_14_2005.tar.gz


This version contains important changes to grisudet (the detector code). With the addition of a grid search method, execution time is now from 6 to 7 times faster than in previous versions. Compilation is now possible with the gcc/g++ optimization options (after replacing the deprecated fgets function with getline). There are options for circular, hexagonal, or square facets or pixels (actually, any regular polygon is possible). And, grisudet now accepts cherenkf7 output into standard input. These changes are documented in detector.pilot, the configuration files, and in the grisudet html documentation (follow the links from here).

There are additions in the facet and pixel records in the configuration file for pixel shape and facet/pixel rotation angle. If you wish to add these to an older configuration file, you will find a handy edit_config.cpp code in the Config/Files directory. Just look at the code and follow instructions (the code inserts a column in configuration file flag records)

Kascade (Glenn and Mary's latest version) now works properly for gamma showers from zenith. We encourage everyone to use this version of kascade (it requires the absoft or Intel compiler - follow the kascade links to find instructions for installing the free Intel fortran compiler).

We continue to include analysis.c, primarily for use with single telescope Whipple data. The analysis routines for telescope arrays are not fully functional nor are they fully documented and we anticipate moving to other code for this analysis (such as the analysis package supported by the Leeds group or the Veritas standard analysis package currently under development).


grisu_version4_1_0.tar.gz

DO NOT MIX CONFIGURATION FILES BETWEEN THIS VERSION AND EARLIER VERSIONS. This version, grisu_version 4.1.0, contains these important revisions for grisudet.c, the detector code. By using a grid search method for facet and pixel searches, the code now executes about a factor of 6 times faster than previous versions; the new GRIDF and GRIDP flag lines in detector.pilot give the number of grid bins for this option. By replacing the deprecated fgets function with the getline function, optimization compiler options are now possible (the -O1 option works best). By using a general polygon test function, circular, hexagonal, and square facet and pixel options are now included (any regular polygon is possible). And grisudet now accepts standard input from cherenkf7 if detector.pilot contains no CHERP flag. See detector.pilot, the configuration files, and the html documentation for more details for these changes. Kascade (Glenn and Mary's latest version) now works properly for gamma showers from zenith. We encourage everyone to use this version of kascade (it requires the absoft or free Intel compiler - follow the kascade links to find instructions for installing the free Intel compiler.

grisu_version4_0_0.tar.gz

DO NOT MIX FILES BETWEEN THIS VERSION AND EARLIER VERSIONS.
This version, grisu_version 4.0.0, is a major revision, especially for the kascade and grisudet codes.
Changes include: all standard math function calls using float versions (through gtmath.h) to avoid type conversions from double to float. Added new kascade version from Sembroski and Kertzman. Each kascade version has a separate directory above GrISU/Simulation/Shower. Kascade makefiles use the Intel Fortran compiler (kascade3 and kascade7 are still included and compile as before with g77). Added new atmospheric model directory, GrISU/Simulation/Atmos. Adapted kascade.pilot to direct any of the three kascade versions. Added pattern trigger option to grisudet; input details are in the array configuration file. Please review the kascade section of the documentation package before producing showers. Cherenkf7 now has a lateral distribution option in the pilot file; also atmospheric extinction can be toggled from the cherenkf.pilot file.

grisu_version3_0_0.tar.gz

DO NOT MIX FILES BETWEEN THIS VERSION AND EARLIER VERSIONS.
This version, grisu_version 3.0.0, is a major revision, especially for the grisudet and analysis codes. With this version, we also begin a more standard version naming scheme. Changes include:
Default pilot filenames are now: kascade.pilot, cherenkov.pilot, detector.pilot, analysis.pilot, cutspec.pilot and runsim.pilot
Added new directory, GrISU/Raw2GrISU. containing c++ code to read VERITAS prototype data.
The QADC input impedance is now given in the array configuration file rather than hidden in the code.
Added option for output of pixel and time photoelectron records for compatibility with veritas simulation database.
Moved option choice for output of number of photoelectrons in each pixel from the configuration file to the detector.pilot.

Replaced the Make_a_Star directory with the Make_Photons directory for new make_photons.c code, for producing "star" photons on the ground or "laser" photons directly on the camera.
Telescope numbering in output of cherenkf7.c now starts with 1 instead of 0.

Complete rewrite of analysis.c: see the analysis.c documentation for details as there are many changes, including use of timing and gain files and various options for the FADC summing.

In the previous versions, the Cherenkov pulse widths were too large at low elevation. We increased the precision of the segment locations in the output of kascade to fix this problem.

grisu02_07_2004.tar.gz

Local trigger model bug eliminated; the local trigger multiplicity parameter in the configuration file now gives the correct number of pixels required for a telescope triggger. Previously, the parameter, e.g. if set to 2, produced a telescope trigger when this parameter + 1, e.g. 2+1 = 3, pixels triggered. In analysis.c, the three pixels with the largest number of photoelectrons are now determined from the cleaned group of pixels rather than all pixels prior to cleaning.

grisu30_07_2003.tar.gz

Various improvements implemented, especially we now have better memory management; in grisudet, photons are
now stored in a linked list. The mirror reflectivity is now given in a table as a function of wavelength in the configuration file. An interpolation returns the mirror reflectivity for a given wavelength.

grisu12_06_2002.tar.gz

The analysis program was misbehaving when the "N"-type records giving the number of photoelectrons were in the input file. We fixed this.

grisu11_15_2002.tar.gz

We removed all the numerical recipes procedures (they are not currently used anyway) to avoid copyrights problems.

The following versions are no longer available

grisu11_13_2002.tar.gz
grisu10_29_2002.tar.gz
grisu10_26_2002.tar.gz
grisu10_25_2002.tar.gz
grisu10_23_2002.tar.gz

Major changes in these older versions:

Segmentation fault occured when a logbook was not required; has been fixed
Telescope identifier in Cherenk output is now a positive number rather than a negative number.
Added field in the QADC record to activate an output giving the total number of Cherenkov photons on each tube.

home