Skip to content

Commit

Permalink
Merge pull request #299 from mit-crpg/develop
Browse files Browse the repository at this point in the history
Update to v0.2.0
  • Loading branch information
geogunow committed Mar 30, 2016
2 parents 402efc8 + 414dc05 commit b09e66b
Show file tree
Hide file tree
Showing 467 changed files with 231,839 additions and 17,869 deletions.
143 changes: 46 additions & 97 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,138 +1,56 @@
# installation
# Installation
*.o
*.cxx
*.h.gch
*.so
*.pbs.e*
*.pbs.o*
*.pyc
*/*.o
*/*.cxx
*/*.h.gch
*/*.so
*.o
*.cxx
*.h.gch
*.so
*~
*/*~
*/*.pbs.e*
*/*.pbs.o*
*/*.pyc
build
build/*
dist
dist/*
openmoc/openmoc.py
openmoc/openmoc_wrap.cpp

openmoc/mic/openmoc_mic.py
openmoc/mic/openmoc_mic_wrap.cpp

openmoc/intel/single/openmoc_intel_single_wrap.cpp
openmoc/intel/single/openmoc_intel_single.py
openmoc/intel/double/openmoc_intel_double_wrap.cpp
openmoc/intel/double/openmoc_intel_double.py

openmoc/gnu/single/openmoc_gnu_single_wrap.cpp
openmoc/gnu/single/openmoc_gnu_single.py
openmoc/gnu/double/openmoc_gnu_double_wrap.cpp
openmoc/gnu/double/openmoc_gnu_double.py

openmoc/bgq/single/openmoc_bgq_single_wrap.cpp
openmoc/bgq/single/openmoc_bgq_double.py
openmoc/bgq/double/openmoc_bgq_double_wrap.cpp
openmoc/bgq/double/openmoc_bgq_double.py

openmoc/cuda/openmoc_cuda.py
openmoc/cuda/openmoc_cuda_wrap.cpp
openmoc/cuda/single/openmoc_cuda_single_wrap.cpp
openmoc/cuda/single/openmoc_cuda_single.py
openmoc/cuda/double/openmoc_cuda_double_wrap.cpp
openmoc/cuda/double/openmoc_cuda_double.py

# TORQUE log files
*.pbs.e*
*.pbs.o*

# output files
log
log/*
*/log
*/log/*
tracks
tracks/*
*/tracks
*/tracks/*
plots
plots/*
*/plots
*/plots/*
pin-powers
pin-powers/*
*/pin-powers
*/pin-powers/*
simulation-state*
simulation-state/*
*/simulation-state*
*/simulation-state*/*

fission-rates
simulation-states
*.data
*/*.data
*.png
*/*.png

*.ppm
openmoc-*-.log
*/openmoc-*-.log

penmp
Openmp
*/penmp
penmoc
penmp-report
*/penmoc
*/penmp-report
*.egg-info/*
*/*.egg-info/

openmoc/intel/single/openmoc_intel_single.py
openmoc/intel/single/openmoc_intel_single_wrap.cpp
openmoc/intel/double/openmoc_intel_double.py
openmoc/intel/double/openmoc_intel_double_wrap.cpp

openmoc/gnu/single/openmoc_gnu_single.py
openmoc/gnu/single/openmoc_gnu_single_wrap.cpp
openmoc/gnu/double/openmoc_gnu_double.py
openmoc/gnu/doube/openmoc_gnu_double_wrap.cpp

openmoc/cuda/openmoc_cuda.py
openmoc/cuda/openmoc_cuda_wrap.cpp
openmoc/cuda/single/openmoc_cuda_single.py
openmoc/cuda/single/openmoc_cuda_single_wrap.cpp
openmoc/cuda/double/openmoc_cuda_double.py
openmoc/cuda/double/openmoc_cuda_double_wrap.cpp

*/*.egg-info/*

#Documentation
sphinx/
docs/build
docs/build/*
docs/doxygen/xml
docs/doxyge/xml/*

# BGQ
*.lst

*.cobaltlog
*/*.cobaltlog
*.error
*/*.error
*.output
*/*.output

*core*
*/core*

build/*
*/build/
*/build/*

.idea*
# PyCharm configuration files
.idea/*
.idea/*.xml

sphinx/

*.DS_Store
*/*.DS_Store
Expand All @@ -141,3 +59,34 @@ sphinx/
# *~
*.swp

# C++ Build
profile/obj/*
profile/models/c5g7/c5g7-cmfd
profile/models/c5g7/c5g7-cmfd.o
profile/models/c5g7/c5g7
profile/models/c5g7/c5g7.o
profile/models/gradients/one-directional/one-directional-gradient
profile/models/gradients/one-directional/one-directional-gradient.o
profile/models/gradients/two-directional/two-directional-gradient
profile/models/gradients/two-directional/two-directional-gradient.o
profile/models/homogeneous/homogeneous-one-group
profile/models/homogeneous/homogeneous-one-group.o

# IPython Notebook
.ipynb_checkpoints/

# OpenMC input/output files
*.xml
statepoint*
summary*

# Test results error file
results_error.dat
results_test.dat

# Test build files
openmoc/
*.log

# Doxygen
docs/doxygen/html/*
43 changes: 43 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
language: python
python:
- "2.7"
- "3.4"
addons:
apt:
packages:
- swig
cache:
directories:

before_install:
# ========== Point apt-get to C++11-compatible compiler ==========
- sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
- sudo apt-get update -qq
# ============== Handle Python third-party packages ==============
- if [[ "$TRAVIS_PYTHON_VERSION" == "2.7" ]]; then
wget https://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -O miniconda.sh;
else
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh;
fi
- bash miniconda.sh -b -p $HOME/miniconda
- export PATH="$HOME/miniconda/bin:$PATH"
- hash -r
- conda config --set always_yes yes --set changeps1 no
- conda update -q conda
- conda info -a
- conda create -q -n test-environment python=$TRAVIS_PYTHON_VERSION numpy scipy h5py pandas matplotlib pillow
- source activate test-environment

install:
# ================= Get C++11-compatible compiler ==================
- sudo apt-get install -qq gcc-4.8 g++-4.8
- sudo apt-get install swig
- sudo rm /usr/bin/gcc
- sudo rm /usr/bin/g++
- sudo ln -s /usr/bin/gcc-4.8 /usr/bin/gcc
- sudo ln -s /usr/bin/g++-4.8 /usr/bin/g++

script:
- cd tests
- ./travis.sh
- cd ..
25 changes: 25 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
cmake_minimum_required(VERSION 2.8)

#===============================================================================
# Regression tests
#===============================================================================

# This allows for dashboard configuration
include(CTest)

# Get a list of all the tests to run
file(GLOB_RECURSE TESTS ${CMAKE_CURRENT_SOURCE_DIR}/tests/test_*.py)

# Loop through all the tests
foreach(test ${TESTS})

# Get test information
get_filename_component(TEST_NAME ${test} NAME)
get_filename_component(TEST_PATH ${test} PATH)

add_test(NAME ${TEST_NAME}
WORKING_DIRECTORY ${TEST_PATH}
COMMAND ${PYTHON_EXECUTABLE} ${TEST_NAME}
)

endforeach(test)
74 changes: 51 additions & 23 deletions README.rst
Original file line number Diff line number Diff line change
@@ -1,38 +1,65 @@
=================================================================
OpenMOC Method of Characteristics Neutral Particle Transport Code
=================================================================

Welcome to the OpenMOC repository! OpenMOC is a simulation tool for
solving for the flux, power distribution, and multiplication factor
within a nuclear reactor. The code employs the deterministic method
of characteristics using source iteration. The OpenMOC project aims
to provide a simple-to-use Python package bound to a back-end of source
code written in C/C++ and CUDA. It includes support for constructive
solid geometry and 2D ray tracing for fully heterogeneous multi-group
calculations. Development of OpenMOC began at MIT in 2012 and is
spearheaded by several graduate students in the
=======
OpenMOC
=======

.. image:: https://api.travis-ci.org/mit-crpg/OpenMOC.svg?branch=develop
:target: https://travis-ci.org/mit-crpg/OpenMOC
.. image:: https://img.shields.io/badge/powered%20by-OpenMOC-blue.svg
:target: https://mit-crpg.github.io/OpenMOC/
.. image:: https://img.shields.io/badge/license-MIT%20License-brightgreen.svg
:target: https://mit-crpg.github.io/OpenMOC/license.html
.. image:: https://img.shields.io/badge/anucene-Elsevier-lightgray.svg
:target: http://www.sciencedirect.com/science/article/pii/S0306454913006634

Welcome to the OpenMOC repository! OpenMOC is a simulation tool for
solving for the flux, power distribution, and multiplication factor
within a nuclear reactor. The code employs the deterministic method
of characteristics, with support for both fixed source and eigenvalue
calculations. The OpenMOC project aims to provide a simple-to-use
Python package bound to a back-end of source code written in C/C++
and CUDA. It includes support for constructive solid geometry and 2D
ray tracing for fully heterogeneous multi-group calculations.
Development of OpenMOC began at MIT in 2012 and is spearheaded by
several graduate students in the
`Nuclear Science & Engineering Department`_.

Complete documentation on the usage of OpenMOC is hosted at
https://mit-crpg.github.io/OpenMOC/. If you would like to
contribute to the OpenMOC project, please `contact`_ the
Complete documentation on OpenMOC is hosted at
https://mit-crpg.github.io/OpenMOC/. If you would like to
contribute to the OpenMOC project, please `contact`_ the
development team.

For a guided example, see a demonstration `IPython Notebook`_.

------------
Installation
------------

Detailed `installation instructions`_ can be found in the
Detailed `installation instructions`_ can be found in the
User's Guide.

---------------
Troubleshooting
---------------

If you run into problems installing or running OpenMOC,
first review the `FAQ`_ in the User's Guide. If you are
unable to find a solution to your problem there, please
`contact`_ one of the developers.
Join the OpenMOC `users group`_ to ask questions and discuss
methods and simulation workflows.

--------------
Citing OpenMOC
--------------

Please cite OpenMOC in your publications if it helps your research:

.. code-block:: latex

@article{openmoc2014,
author = {Boyd, William and Shaner, Samuel and Li, Lulu and Forget, Benoit and Smith, Kord},
journal = {Annals of Nuclear Energy},
title = {The OpenMOC Method of Characteristics Neutral Particle Transport Code},
volume = {68},
pages = {43--52},
year = {2014}
}

-------
License
Expand All @@ -41,7 +68,8 @@ License
OpenMOC is approved for distribution under the MIT/X license_.

.. _installation instructions: https://mit-crpg.github.io/OpenMOC/usersguide/install.html
.. _FAQ: https://mit-crpg.github.io/OpenMOC/FAQ
.. _license: https://mit-crpg.github.io/OpenMOC/license.html
.. _contact: https://mit-crpg.github.io/OpenMOC/developers.html
.. _Nuclear Science & Engineering Department: http://web.mit.edu/nse/
.. _IPython Notebook: https://gist.github.com/wbinventor/8c5d2ffbb86f11735610
.. _contact: https://mit-crpg.github.io/OpenMOC/developers.html
.. _users group: https://groups.google.com/forum/#!forum/openmoc-users
Loading

0 comments on commit b09e66b

Please sign in to comment.