Collection of utilities, solvers and other components.
f4350098ed
On an average system this will cut around 15% of the total build time. Unfortunately, including Boost headers in the precompiled header takes longer time to generate and then read in each module, than just including the necessary headers in each module. Use Noel Llopis' list_precomp.py at http://www.gamesfromwithin.com/wp-content/uploads/bin/list_precomp_py.txt to analyse which headers are included the most and are candidates for inclusion. |
||
---|---|---|
cmake/Modules | ||
examples | ||
lib/pkgconfig | ||
m4 | ||
opm/core | ||
tests | ||
tutorials | ||
.gitignore | ||
CMakeLists.txt | ||
configure | ||
configure.ac | ||
Doxyfile.in | ||
DoxygenLayout.xml | ||
dune.module | ||
GNUmakefile | ||
Makefile.am | ||
opm-core-config-version.cmake.in | ||
opm-core-config.cmake.in | ||
opm-core.pc.in | ||
opmcore-config.cmake.in | ||
README | ||
style.css |
Open Porous Media Core Library ============================== These are release notes for opm-core. CONTENT ------- opm-core is the core library within OPM and contains the following * Eclipse deck input and preprosessing * Fluid properties (basic PVT models and rock properties) * Grid handling (cornerpoint grids, unstructured grid interface) * Linear Algebra (interface to different linear solvers) * Pressure solvers (various discretization schemes, flow models) * Simulators (some basic examples of simulators based on sequential splitting schemes) * Transport solvers (various discretization schemes, flow models) * Utilities (input and output processing, unit conversion) * Wells (basic well handling) LICENSE ------- The library is distributed under the GNU General Public License, version 3 or later (GPLv3+). PLATFORMS --------- The opm-core module is designed to run on Linux platforms. It is also regularly run on Mac OS X. No efforts have been made to ensure that the code will compile and run on windows platforms. DEPENDENCIES FOR DEBIAN BASED DISTRIBUTIONS (Debian Squeeze/Ubuntu Precise) --------------------------------------------------------------------------- # packages necessary for building sudo apt-get install -y build-essential gfortran pkg-config libtool \ automake autoconf # packages necessary for documentation sudo apt-get install -y doxygen ghostscript texlive-latex-recommended pgf # packages necessary for version control sudo apt-get install -y git-core # basic libraries necessary for both DUNE and OPM sudo apt-get install -y libboost-all-dev libsuperlu3-dev libsuitesparse-dev # for server edition of Ubuntu add-apt-repository depends on sudo apt-get install python-software-properties # add this repository for necessary backports (required for Ubuntu Precise) sudo add-apt-repository -y ppa:opm/ppa sudo apt-get update # parts of DUNE needed sudo apt-get install libdune-common-dev libdune-istl-dev libdune-grid-dev # libraries necessary for OPM sudo apt-get install -y libxml2-dev Note: You should compile the OPM modules using the same toolchain that was used to build DUNE. Otherwise, you can get strange ABI errors. DEPENDENCIES FOR SUSE BASED DISTRIBUTIONS ----------------------------------------- # libraries sudo zypper in blas libblas3 lapack liblapack3 libboost libxml2 umfpack # tools sudo zypper in gcc automake autoconf git doxygen # DUNE libraries sudo zypper ar http://download.opensuse.org/repositories/science/openSUSE_12.2/science.repo sudo zypper in dune-common dune-istl DOWNLOADING ----------- For a read-only download: git clone git://github.com/OPM/opm-core.git If you want to contribute, fork OPM/opm-core on github. BUILDING -------- There are two ways to build the opm-core library: 1. As a stand-alone library. cd opm-core autoreconf -i ./configure make -j -l 0.9 If you want to install the library: make install or (if installing to /usr/local or similar) sudo make install 2. As a dune module. - Put the opm-core directory in the same directory as the other dune modules to be built (e.g. dune-commmon, dune-grid). Note that for Ubuntu you can install Dune from the ppa as outlined above. - Run dunecontrol as normal. For more information on the dune build system, see http://www.dune-project.org/doc/installation-notes.html DOCUMENTATION ------------- Efforts have been made to document the code with Doxygen. In order to build the documentation, enter the command $ doxygen in the topmost directory.