Git Product home page Git Product logo

nextsim's Introduction

NEXTSim README

Cory R. Thornsberry

Last updated: July 3, 2019

This README gives basic information on how to install NEXTSim from source. For more information on using the program, see the NEXTSim Wiki. For detailed information on changes to the master branch, see the changelog.

Authors

  • Cory R Thornsberry
  • David Pérez Loureiro
  • Kyle Schmitt
  • Xiadong Zhang

Installation

  • Required Prerequisites:

    • cmake version 2.18.12 or later is confirmed to work
    • Geant4 version 10.3.3 or later is recommended
      • Build option -DGEANT4_BUILD_MULTITHREADED=ON is required for multithreading support
      • Build option -DGEANT4_USE_GDML=ON is required for GDML support
    • ROOT version 6 or later is recommended
  • Recommended Prerequisites:

  • Optional Prerequisites:

    • SimpleScan needed for nextSim output converter
      • Build option -DBUILD_SHARED=ON is required
git clone https://github.com/cthornsb/NEXTSim
cd NEXTSim
mkdir build
cd build

Common NEXTSim install options are shown in the table below

OPTION DEFAULT DESCRIPTION
CMAKE_INSTALL_PREFIX install Set the install prefix
GEANT4_MT OFF Enable or disable multithreading capability
GEANT4_GDML OFF Enable or disable support for loading GDML files
GEANT4_UIVIS ON Enable or disable Geant4 UI and VIS drivers
BUILD_TOOLS OFF Enable tool executables
BUILD_TOOLS_NISTLIST OFF Build NIST database search executable
BUILD_TOOLS_CONVERTER OFF Build NEXTSim -> SimpleScan converter tool
BUILD_TOOLS_CMDSEARCH OFF Build NEXTSim macro command search executable

Install options may be set using ccmake e.g.

cmake ..
ccmake ..

or by passing options to CMake using the command line e.g.

cmake -DCMAKE_INSTALL_PREFIX=/path/to/install -DBUILD_TOOLS=ON ..

and so forth. Once CMake has successfully generated the makefile, simply type

make install

to compile and install. Experimental/unstable beta versions of the simulation code may be found on the development branch

git checkout dev
cd build
make install

To switch back to the master release,

git checkout master
cd build
make install

Installing the Module File

By default, cmake will install binaries to

NEXTSim/install/bin

From there you may make symbolic links as required, or if you prefer you may use the NEXTSim module file

To install the NEXTSim module file, the module file must be copied to one of your module paths.

cp install/share/modulefiles/nextSim ${PATH_TO_MODULE_FILES}

Where PATH_TO_MODULE_FILES is dependent upon the configuration of your machine. You can check for the path by typing

module avail

For example, on my machine, the syntax would be

cp install/share/modulefiles/nextSim /usr/share/modules/modulefiles/

Whenever you want to use NEXTSim, load the NEXTSim module by typing

module load nextSim

Updating the Source Code

In the ./NEXTSim/ directory type

git pull
cd build/
make install

Barring a substantial change in the structure of the source code, this should be sufficient for keeping your install up-to-date with the repository.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.