Skip to content
Snippets Groups Projects
Commit 38898f63 authored by Whitney Armstrong's avatar Whitney Armstrong
Browse files

modified: getting-started/modulefiles.md

	modified:   getting-started/quickstart.mdx
	modified:   part1/simple_detector.md
parent a5203f14
No related branches found
No related tags found
No related merge requests found
Pipeline #10100 passed
...@@ -21,4 +21,28 @@ https://modules.readthedocs.io/en/latest/ ...@@ -21,4 +21,28 @@ https://modules.readthedocs.io/en/latest/
## Development within singularity container
[See here](singularity) for more info on singularity.
The following helper runs bash inside `eic_container`
```bash
module load eic_container
container_dev
```
For projects that you want to build but which are also inside of the container,
you must make sure to set `$PATH` and `$LD_LIBRARY_PATH` to point to the
development build's installation prefix first. Here we assume your development
builds are being installed into `$HOME/stow/development`
A simple setup script will make sure things are in order
```shell title=setup.sh
module use $HOME/etc/modulefiles
module load eic_container
export PATH=$HOME/stow/development/bin:$PATH
export LD_LIBRARY_PATH=$HOME/stow/development/lib:$HOME/stow/development/lib64:$LD_LIBRARY_PATH
export ROOT_INCLUDE_PATH=$HOME/stow/development/include:$ROOT_INCLUDE_PATH
```
...@@ -22,7 +22,7 @@ most recent version as of January 2021. ...@@ -22,7 +22,7 @@ most recent version as of January 2021.
## The EIC Software Container ## The EIC Software Container
### Create a local directory that you want to work in, e.g., `~/eic` ### Step 1: Create a local directory that you want to work in, e.g., `~/eic`
```bash ```bash
mkdir ~/eic mkdir ~/eic
cd ~/eic cd ~/eic
...@@ -38,83 +38,27 @@ directory. This will install the latest stable container and place a script call ...@@ -38,83 +38,27 @@ directory. This will install the latest stable container and place a script call
curl https://eicweb.phy.anl.gov/containers/eic_container/-/raw/master/install.sh | bash curl https://eicweb.phy.anl.gov/containers/eic_container/-/raw/master/install.sh | bash
``` ```
Now you can launch a shell in our development environment:
To properly emulate the EIC enviornmant a container containing necessary
software is needed.
Installing the [eic_container](quickstart/eic_container) is done with the
following:
```shell
git clone https://eicweb.phy.anl.gov/containers/eic_container.git
```
From here follow the instructions in the README file. Those will faithfully
install the container, and then follow the instructions below.
Inspect the list of files installed, noting the locations of modulefiles and
wrapper scripts.
## Using the container
```bash ```bash
module use $HOME/etc/modulefiles ./eic-shell
module load eic_container
``` ```
[See modulefiles](modulefiles) for more info. ## Step 3: Clone the repos
[Also see environment](environment) for more info.
Right now there are 3 repos you need:
* Tutorial files
* IP6 (IP-specific components)
* Athena detector
## Development within singularity container
[See here](singularity) for more info on singularity.
The following helper runs bash inside `eic_container`
```bash ```bash
module load eic_container git clone https://eicweb.phy.anl.gov/EIC/tutorials/ip6_tutorial_1.git
container_dev git clone https://eicweb.phy.anl.gov/EIC/detectors/athena.git
git clone https://eicweb.phy.anl.gov/EIC/detectors/ip6.git
``` ```
For projects that you want to build but which are also inside of the container, Initially we will just be using the first repo. So we will com back to the latter two later on.
you must make sure to set `$PATH` and `$LD_LIBRARY_PATH` to point to the
development build's installation prefix first. Here we assume your development
builds are being installed into `$HOME/stow/development`
A simple setup script will make sure things are in order
```shell title=setup.sh
module use $HOME/etc/modulefiles
module load eic_container
export PATH=$HOME/stow/development/bin:$PATH
export LD_LIBRARY_PATH=$HOME/stow/development/lib:$HOME/stow/development/lib64:$LD_LIBRARY_PATH
export ROOT_INCLUDE_PATH=$HOME/stow/development/include:$ROOT_INCLUDE_PATH
```
## Detector Library
The
```bash
source setup.sh
module load eic_container
git clone https://eicweb.phy.anl.gov/EIC/NPDet.git
cd NPDet/examples
print_materials gem_tracker_disc.xml 0 0 0 100 0 100
```
The last line dumps the materials encounter along a line defined by two points.
```bash
cd ../..
mkdir NPDet/build && cd NPDet/build
cmake ../. -DCMAKE_INSTALL_PREFIX=$HOME/stow/development
make -j4 install
cd ../examples
print_materials gem_tracker_disc.xml 0 0 0 100 0 100
```
......
...@@ -72,4 +72,12 @@ root -b -q example_cell_size.cxx+ ...@@ -72,4 +72,12 @@ root -b -q example_cell_size.cxx+
``` ```
![cell size histogram](../example_cell_size.png) ![cell size histogram](../example_cell_size.png)
```bash
cd ../..
mkdir NPDet/build && cd NPDet/build
cmake ../. -DCMAKE_INSTALL_PREFIX=$HOME/stow/development
make -j4 install
cd ../examples
print_materials gem_tracker_disc.xml 0 0 0 100 0 100
```
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment