Difference between revisions of "Solid Software"
(→Disk Space) |
(→installation of SoLID repository) |
||
Line 94: | Line 94: | ||
It's the central repository, everyone has read right, only jlab account within "12gev_solid" group can write to it | It's the central repository, everyone has read right, only jlab account within "12gev_solid" group can write to it | ||
− | checkout by "svn co https://jlabsvn.jlab.org/svnroot/solid" | + | checkout by "svn co https://jlabsvn.jlab.org/svnroot/solid solid_svn" |
access its WebSVN interface at https://jlabsvn.jlab.org/solid | access its WebSVN interface at https://jlabsvn.jlab.org/solid |
Revision as of 09:59, 2 May 2017
Contents
- 1 introduction
- 2 quick start
- 2.1 requirement before installing and using it
- 2.2 (demonstration) on ifarm1101(CentOS6.5_x86_64) with official installation of framework and official SoLID repository
- 2.3 (recommended) on ifarm1101(CentOS6.5_x86_64) or jlab internal machine(RHEL6.8_x86_64), with official installation of framework and your SoLID repository
- 2.4 (expert) on any machine(CentOS6.5-6.8_x86_64 and alike), with your installation of framework and your SoLID repository
- 3 Installation
- 4 Coordinate System
- 5 Physics Event Generation
- 6 Detector Simulation
- 7 Event Reconstruction
- 8 Study
- 9 Info
- 10 old simulation software (for record keeping only, don't use it!)
introduction
Here is the information hub for SoLID software.
The software is based on GEMC framework for detector simulation, The physics event generation is independent.
The instruction for installation and how to use do event generation, simulation and reconstruction are listed below.
quick start
This is a step by step guide to setup things to run the software including simulation, reconstruction etc.
All env variables required are setup by source file "set_solid"
make sure you meet the requirement before you do anything
requirement before installing and using it
Do following before installation, updating and running the code
- check "echo $SHELL" to check if you are using tcsh shell. If it's not your default shell after login, first open a clean terminal and run "tcsh"
- clean your env variables. For example, remove your environment variable setup in your login script like .cshrc and .login or disable them temporally by "mv .cshrc cshrc" and "mv .login login". This is to avoid conflict from other software environment variables. Vice versa, don't put our environment variables into your login script either, set it up every time you login a terminal instead
- If you are running it in graphical mode on remote machines, make sure to turn on X11 forwarding by "ssh -X" or "ssh -Y" when connecting to remote machines. If you local computer is windows, you need to turn on X11 forwarding in putty's option and have a xwindow server like Xming running. test if "xclock" will work first
(demonstration) on ifarm1101(CentOS6.5_x86_64) with official installation of framework and official SoLID repository
The fastest way to see what the simulation look like. You don't need to install any thing, but you can't modify anything either.
login into ifarm1101.jlab.org or any jlab internal machine with access to /work/halla/solid/apps/jlab_root with your jlab account (if you can't, ask jlab computer center help@jlab.org to make sure your account is allowed on ifarm1101 machines) source /home/zwzhao/solid/solid_svn/solid/set_solid follow "compile and run" to run simulation (skip compiling)
(recommended) on ifarm1101(CentOS6.5_x86_64) or jlab internal machine(RHEL6.8_x86_64), with official installation of framework and your SoLID repository
You don't need to install the framework, you can modify simulation configuration. This is the best way to run simulation on ifarm1101 and farm nodes. This is recommend way to compare result and produce results.
If you can access a jlab internal machine (RHEL6.8_x86_64) and it can access /work/halla/solid/apps/jlab_root, you may be able to use a installed framework also. But if you encounter any problem, it could be some needed packages were not installed on this machine and you need to install them as root. refer to "prepare for installation" at [1]
login into ifarm1101.jlab.org or any jlab internal machine with access to /work/halla/solid/apps/jlab_root with your jlab account (if you can't, ask jlab computer center help@jlab.org to make sure your account is allowed on ifarm1101 machines) cd your_choice_of_solid_repo_path svn co https://jlabsvn.jlab.org/svnroot/solid (if you haven't done so already) cd solid edit file set_solid by following the instruction within, you only need to change SoLID_GEMC source set_solid follow "compile and run" to compile and run simulation
(expert) on any machine(CentOS6.5-6.8_x86_64 and alike), with your installation of framework and your SoLID repository
This gives you maximum freedom to use any version of framework and ability to work on your local machine, And allow you to modify anything. This is the way to run on your local machine.
install the framework by following installation instruction below cd your_choice_of_solid_repo_path svn co https://jlabsvn.jlab.org/svnroot/solid (if you haven't done so already) cd solid edit file set_solid by following the instruction within source set_solid Do those tmp fixes by following Jlab_software_tmp_fix follow "compile and run" to compile and run simulation
Installation
introduction
Physics event generation is a collection of independent software packages.
Detector simulation is based on Geant4 based simulation framework GEMC http://gemc.jlab.org
SoLID repository https://jlabsvn.jlab.org/svnroot/solid is for all of SoLID software
You need both the framework and SoLID repository to use the software
installation of framework
The framework was tested on many platforms, but for our use, it's only fully tested on current jlab farm system.
The current default system is CentOS6.5_x86_64 (as in 2016/06)
Other clone systems like RHEL and SL should work without no problem. Similar system like Fedora may work also, but need some tweaking.
The framework use environmental variable JLAB_VERSION to control version
The current default version is 1.3 (as in 2016/06)
The default installation in jlab computing system is at /work/halla/solid/apps/jlab_root
See detailed instruction at installation of framework
installation of SoLID repository
It's the central repository, everyone has read right, only jlab account within "12gev_solid" group can write to it
checkout by "svn co https://jlabsvn.jlab.org/svnroot/solid solid_svn"
access its WebSVN interface at https://jlabsvn.jlab.org/solid
two ways to get auto notification about any change to SVN use a graphic SVN client, for example "kdesvn" use RSS feed on the Websvn interface
- directory structure
- "evgen", some event generators, (the others are in other repositories, see event generation section for details)
- "solid_gemc", GEMC 1.x related files for SoLID simulation
- "solid_gemc2", GEMC 2.x related files for SoLID simulation
- "subsystem" for individual subsystems
- "study" for studies involving different subsystems
A personal copy of EIC repository at /home/zwzhao/solid/solid_svn/solid/ on ifarm1101
You should download your own copy on ifarm1101 or you local machine so you can tweak the code
Coordinate System
SoLID uses the coordinate system below in lab frame for event generator output, detector arrangement and reconstruction
electron beam goes along +z axis and at x=0,y=0 The solenoid coil center at the origin (x=0,y=0,z=0),axis along electron beam y axis is vertical and +y pointing up relative to the ground x axis is horizontal and +x pointing left when riding the electron beam +x axis has phi angle 0 deg, +y axis has phi angle 90 deg phi angle coverage is from -180 to 180 which can be obtain by atan2(y,x)*180/Pi or TVector3.Phi()*180/Pi
Physics Event Generation
Detector Simulation
Event Reconstruction
Study
Info
emaillist
- mailing list solid_software@jlab.org (registration and archive)
linux group
SoLID Linux group is "12gev_solid"
check your account groups by command "groups username" or "id username"
Please ask Ole <ole at jlab.org> to add your jlab account to the group if you want to use SoLID related computing resource at jlab.
Batch Farm Project
jobs should go to the 'solid' project
Disk Space
We have disk space on the CUE
/group/solid | long term, has backup | 200GB |
/mss/halla/solid | permanent, on tape | 10 TB |
/cache/halla/solid | cache for mss, short term | 25TB shared among cache,work,volatile |
/work/halla/solid | long term, has NO no backup | 25TB shared among cache,work,volatile |
/volatile/halla/solid | short term | 9TB quota 1TB reserved, status https://scicomp.jlab.org/scicomp/index.html#/volatile |
The cache and volatile files there are expected to have an expiration date of six months. Please use /volatile for larger data sets and /work for sources and reduced datasets you need to keep. You must belong to the group 12gev_solid for access, ask "Ole at jlab.org" to add you.
To avoid disk quota problems, please make sure that all files that you place in the SoLID directories are owned by Linux group 12gev_solid. If you've already created files that have the wrong group, just change the group ID of your directory and all its files and subdirectories to the correct one. You only should have to do this once:
chgrp -R 12gev_solid your-directory
To make this happen automatically for all newly created files in this directory, set the sgid bit on it:
chmod g+s your-directory
Better yet, set this bit for all subdirectories as well:
find your-directory -type d -exec chmod g+s {} \;
Again, you should only have to do this once.
Additionally, to reduce the chance of file access problems, every time you log in and before starting work in SoLID disk areas, switch your effective group ID to 12gev_solid:
newgrp 12gev_solid
Exit from the shell when done; that will return you to where you were before issuing the newgrp command.
old simulation software (for record keeping only, don't use it!)
- SoLID GEMC (simulation in GEANT4 with GEMC 1.x, used for later proposals and pCDR)
- SoLID Comgeant (simulation in GEANT3 used for the early proposals)