Code Monkey home page Code Monkey logo

pyne's Introduction

PyNE: The Nuclear Engineering Toolkit

The PyNE project aims to provide a common set of tools for nuclear science and engineering needs.

If you are interested in the package itself, or would like to help and contribute, please let us know either on the mailing list (https://groups.google.com/forum/#!forum/pyne-dev, [email protected]) or github.

Examples, documentation, and more can be found at http://pyne.io/, the official PyNE project site.

Installation

Dependencies

PyNE has the following dependencies:

  1. Fortran compiler
  2. C++ compiler
  3. CMake (>= 2.8.5)
  4. NumPy (>= 1.8.0)
  5. SciPy
  6. Cython (>= 0.19.1)
  7. HDF5
  8. PyTables
  9. Python 2.7
  10. LAPACK
  11. BLAS
  12. Jinja2
Optional Depenendencies:
  1. MOAB
  2. PyTAPS

Additionally, building the documentation requires the following:

  1. Sphinx
  2. sphinxcontrib-bibtex
  3. PrettyTable
  4. numpydoc
  5. jupyter

Most of the dependencies are readily available through package managers.

Binary

Binary distributions of the latest release for mac and linux (64-bit) using the conda package manager can be installed by running the command:

conda install -c cyclus -c pyne pyne=VERSION

where VERSION should be replaced with the version number to be installed.

A windows 32-bit binary is also available on conda via the same command but it is highly experimental and likely broken. Conda binaries do not have moab/pytaps/mesh support (yet).

Source

Installing PyNE from source is a two-step process. First, download and unzip the source (zip, tar). Then run the following commands from the unzipped directory:

cd pyne/
python setup.py install --user
scripts/nuc_data_make

The setup.py command compiles and installs the PyNE source code. The nuc_data_make builds and installs a database of nuclear data. Unfortunately, this must be done as a second step because most nuclear data is under some form of license restriction or export control which prevents the developers from distributing it with PyNE. However, the nuc_data_make program (which is installed by setup.py) will do its best to find relevant nuclear data elsewhere on your machine or from public sources on the internet.

Supported Platforms

PyNE is currently built and tested daily on the following platforms on Python 2.7

  • Ubuntu 12.04 - x86_64
  • OSX 10.8 - x86_64

PyNE has pre-built binaries for the lastest release (0.4) on windows mac and linux

  • Mac (Python 2.7 and Python 3.3) - x86_64
  • Linux (Python 2.7 and Python 3.3) - x86_64
  • Windows (Python 2.7) - x86

PyNE has known issues on the following platforms

  • Windows (64-bit build currently not feasible)
  • 32-bit platforms (all variants) have known problems - see #315

Conda Install Instructions

After installing anaconda or miniconda from the Continuum downloads page, in a new terminal run the following conda install command:

conda install -c cyclus -c pyne pyne=VERSION

where VERSION should be replaced with the version number to be installed.

If you have any issues, please let us know.

Conda Build Instructions

On mac and linux PyNE can be installed via the package manager conda. After installing anaconda or miniconda from the Continuum downloads page add conda's binary directory to your bash profile by adding:

export PATH=/path/to/anaconda/bin:$PATH

to your .bashrc or .bash_profile. Then in a new shell:

conda install conda-build jinja2 nose setuptools pytables hdf5 scipy

on linux you may also need to run:

conda install patchelf

Then dowload the latest conda-recipes here

cd to the conda-recipes directory and run:

conda build pyne
conda install $(conda build --output pyne)
nuc_data_make

Mac OSX Specific Instructions

The simplest method of installing PyNE on mac is via macports. Version 0.4 can be installed using the following commands(assuming you are using python 2.7):

sudo port install py27-pyne
nuc_data_make --fetch-prebuilt False

The latest development version of PyNE can also be installed from source. The instructions below outline how it can be installed using the homebrew http://brew.sh/ package manager.

Before starting install the command line tools from https://developer.apple.com/downloads/ you will need to create an account in order to download them. After installing brew and the command line tools run the following commands:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"
brew doctor
brew tap homebrew/science
brew install hdf5
brew install cmake
brew install python

Add:

export PATH=/usr/local/bin:$PATH
export PATH=/usr/local/share/python:$PATH

to ~/.bash_profile, then:

source ~/.bash_profile
sudo pip install numpy
sudo chown -R $(whoami) /usr/local
brew install gfortran
pip install scipy
pip install cython
pip install numexpr
pip install tables

download pyne-staging cd to that directory:

cd Downloads/pyne-staging
python setup.py install

Once those lines have been added, run the following command before running nuc_data_make:

source ~/.bashrc

Ubuntu Build Scripts

Scripts for installing PyNE and all its dependencies from scratch on Ubuntu 14.04 - 15.04 are found here.

Contributing

We highly encourage contributions to PyNE! If you would like to contribute, it is as easy as forking the repository on GitHub, making your changes, and issuing a pull request. If you have any questions about this process don't hesitate to ask the mailing list (https://groups.google.com/forum/#!forum/pyne-dev, [email protected]).

pyne's People

Contributors

scopatz avatar chrisdembia avatar crbates avatar elliottbiondo avatar jdangerx avatar kkiesling avatar paulromano avatar makeclean avatar erelson avatar klebenowm avatar opotowsky avatar rachelslaybaugh avatar katyhuff avatar gidden avatar kmanalo avatar arekfu avatar ohnemax avatar jrobcary avatar py1sl avatar marissachanlatte avatar kellyrowland avatar alrabbani avatar cbrachem avatar rwcarlsen avatar ljacobson64 avatar jinneykil avatar dschwen avatar jessejohns avatar thewtex avatar stangmechanic avatar

Watchers

James Cloos avatar Jingang Liang avatar

Forkers

oizysx

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.