Commit Graph

2152 Commits

Author SHA1 Message Date
Andreas Lauser
6e0a566e53 factor out OPM_CORE_CHECK_MODULES into a separate file
thanks to Roland Kaufmann for suggesting this.
2012-07-05 12:42:49 +02:00
Andreas Lauser
789bc5ca71 opm-core: make it a usable in conjunction wit dunecontrol
This allows projects which use the DUNE build system and want to use
OPM-Core to specify a dependency in their dune.module file. (i.e. they
don't have to worry about compiler and linker flags anymore.)

opm-core can still be used without having DUNE installed, though. This
means that for users which do not need/want a dependency on DUNE,
nothing changes.

v2: avoid naming conflict of the AX_BOOST_BASE macro with dune-common
    by renaming it to OPM_BOOST_BASE.
v3: make the library detection work nicely
v4: Use AX_BOOST_BASE M4 macro from opm-core instead from dune-common
    as base for OPM_BOOST_BASE to get rid of a few bugs, reworded
    commit message. Thanks to Bård Skaflestad for the review.
2012-07-05 12:42:49 +02:00
Andreas Lauser
6f69de969a opm-core: make it work nicely with clang 2012-07-05 12:42:49 +02:00
Alf Birger Rustad
c90420e91a Merge pull request #3 from andlaus/master
This makes using OPM-core in DUNE contexts much easier and fixes a few CLang warnings
2012-07-05 02:59:28 -07:00
Bård Skaflestad
6672a94fb2 Distinguish distributable from non-distributable sources.
We do not want to distribute the AGMG sources along with OPM-Core. 
These sources must be defined by the builder at configure time.

This fixes "make distcheck".
2012-07-03 17:45:24 +02:00
Bård Skaflestad
9005e4353c Build the library in a lib/ sub-directory of $(builddir)
Suggested by: Andreas Lauser
2012-07-03 16:44:03 +02:00
Andreas Lauser
3a25c11544 factor out OPM_CORE_CHECK_MODULES into a separate file
thanks to Roland Kaufmann for suggesting this.
2012-07-03 15:42:01 +02:00
Bård Skaflestad
c2eaa97049 Add partial Doxygen markup to public interfaces.
More work needed.
2012-07-03 01:30:18 +02:00
Bård Skaflestad
1235b8ecbc Document public interface for transmissibility calculation. 2012-07-03 01:29:34 +02:00
Bård Skaflestad
8e436e174a Include missing headers. 2012-07-02 22:29:47 +02:00
Andreas Lauser
31d0681a66 opm-core: make it a usable in conjunction wit dunecontrol
This allows projects which use the DUNE build system and want to use
OPM-Core to specify a dependency in their dune.module file. (i.e. they
don't have to worry about compiler and linker flags anymore.)

opm-core can still be used without having DUNE installed, though. This
means that for users which do not need/want a dependency on DUNE,
nothing changes.

v2: avoid naming conflict of the AX_BOOST_BASE macro with dune-common
    by renaming it to OPM_BOOST_BASE.
v3: make the library detection work nicely
v4: Use AX_BOOST_BASE M4 macro from opm-core instead from dune-common
    as base for OPM_BOOST_BASE to get rid of a few bugs, reworded
    commit message. Thanks to Bård Skaflestad for the review.
2012-07-02 19:17:25 +02:00
Bård Skaflestad
02e715fe14 makefhfQPeriodic(): Use less branch'y implementation. 2012-07-02 19:09:58 +02:00
Andreas Lauser
2a79bb2fe2 opm-core: make it work nicely with clang 2012-07-02 18:52:30 +02:00
Bård Skaflestad
4c36b397fd EquilLine: Initialise all members in default constructor. 2012-07-02 18:30:56 +02:00
Bård Skaflestad
4ffd9198bf Initialise all members in default constructor. 2012-07-02 17:44:16 +02:00
Bård Skaflestad
95df9e5e2f WpolymerLine: Initialise all members in constructor. 2012-07-02 17:42:10 +02:00
Bård Skaflestad
2ef628233e WeltargLine: Initialise all members in constructor. 2012-07-02 17:32:37 +02:00
Bård Skaflestad
f2f0b95a1d WgrupconLine: Initialise all members in constructor. 2012-07-02 17:29:59 +02:00
Bård Skaflestad
f57ed8856d WelSpecsLine: Initialise all members in constructor 2012-07-02 17:22:48 +02:00
Bård Skaflestad
381d4651e6 Doxygenise class spu_2p::ModelParameterStorage
Mostly stub comments.
2012-07-02 14:58:59 +02:00
Bård Skaflestad
cda6c93724 Initialise all members in constructor. 2012-07-02 14:13:42 +02:00
Bård Skaflestad
8947ef569f Mark return values as \return rather than \ret.
Needed for Doxygen compliance.
2012-07-02 12:55:28 +02:00
Bård Skaflestad
be54b53cb5 Add stub documentation for hybsys_well_cellcontrib_symm().
Expansion and refinement needed.
2012-07-01 00:20:06 +02:00
Bård Skaflestad
c40ddf42d0 Document public interface hybsys_compute_press_flux_well().
Refinements are likely.
2012-06-30 00:21:43 +02:00
Bård Skaflestad
fae98697a6 Document public interface hybsys_compute_press_flux().
Likely to be refined at a later stage.
2012-06-29 23:44:40 +02:00
Bård Skaflestad
fed0117242 Document public interface of hybsys_cellcontrib_unsymm(). 2012-06-29 23:13:18 +02:00
Bård Skaflestad
d7cfab5ee0 Reference variables using ${...} syntax. 2012-06-29 20:45:14 +02:00
Bård Skaflestad
70e763c8bd Document hybsys_cellcontrib_symm() public interface. 2012-06-29 19:27:35 +02:00
Bård Skaflestad
3da361f88e Document interface of hybsys_well_schur_comp_symm() 2012-06-29 14:52:21 +02:00
Roland Kaufmann
ac5599bf6f Ignore editor temporary files
Emacs writes temporary data to .#* files
2012-06-28 21:09:07 +02:00
Roland Kaufmann
003623202a Ignore executables and scripts generated by build 2012-06-28 21:08:33 +02:00
Alf Birger Rustad
0d7539e348 Merge pull request #2 from bska/master
Parametrise Usage of Boost.Test Library
2012-06-27 13:23:01 -07:00
Bård Skaflestad
be1ca06fa3 Use dynamic Boost.Test mode only if supported
Use result of OPM_DYNLINK_BOOST_TEST to determine whether or not to
#define the Boost symbol BOOST_TEST_DYN_LINK .

While here, replace an unprintable character with the proper UTF-8
encoding in a comment.
2012-06-27 16:51:37 +02:00
Bård Skaflestad
11d90ddeab Add AC macro to determine how to link Boost.Test
Details:
Test suites based on Boost.Test must know how to include the library
support code into the executables.  If the Boost.Test library is
dynamically linked, then test suites must define the pre-processor
symbol "BOOST_TEST_DYN_LINK".  Otherwise, this symbol must *not* be
defined.

Resolution:
Introduce a new Autoconf macro, OPM_DYNLINK_BOOST_TEST, that defines a
secondary symbol--HAVE_DYNAMIC_BOOST_TEST--if the local computer system
uses dynamic linking.  Test suites (e.g., tests/param_test.cpp) may then
inspect this symbol to determine whether or not to #define
BOOST_TEST_DYN_LINK.

Call the macro from "configure.ac".

Suggested by: Joakim Hove
2012-06-27 16:26:52 +02:00
Bård Skaflestad
5424ddaf86 Fix inverted logic.
Symbol NDEBUG is *defined* in release mode.
2012-06-27 10:44:51 +02:00
Alf Birger Rustad
90f26cc883 Merge pull request #1 from bska/master
Bring in more resilient grid processing and geometry calculation
2012-06-26 23:02:58 -07:00
Bård Skaflestad
8f0637b090 Merge branch 'master' of git@github.com:bska/opm-core.git 2012-06-26 21:34:23 +02:00
Bård Skaflestad
f2a2811325 Merge branch 'silence-geom-calc'
Conflicts:
	opm/core/grid/cpgpreprocess/geometry.c

Defer printing diagnostic message concerning negative cell volumes
until we're absolutely sure that the volume actually *is*
negative.  Since we're now accumulating signed volumes, some of
the initial contributions might be negative but the end result
likely won̈́'t be.

This merge also brings feature parity with the MATLAB Reservoir
Simulation Toolbox.
2012-06-26 21:04:08 +02:00
Bård Skaflestad
619ce07938 Insert white-space for readability.
git-svn-id: http://svn.sintef.no/simmatlab/branches/mrst-reorg/mex/libgeometry@9312 ea62cf4e-aff8-4dd6-bb37-af94872dbd4c

Signed-off-by: Bård Skaflestad <Bard.Skaflestad@sintef.no>
2012-06-26 21:01:20 +02:00
Bård Skaflestad
37d7f4d8e2 Negate quantity by unary minus rather than multiplication by "-1".
git-svn-id: http://svn.sintef.no/simmatlab/branches/mrst-reorg/mex/libgeometry@9311 ea62cf4e-aff8-4dd6-bb37-af94872dbd4c

Signed-off-by: Bård Skaflestad <Bard.Skaflestad@sintef.no>
2012-06-26 21:01:20 +02:00
Bård Skaflestad
4e4666a2de Use more traditional comparison: "a!=b" rather than "!(a==b)"
git-svn-id: http://svn.sintef.no/simmatlab/branches/mrst-reorg/mex/libgeometry@9310 ea62cf4e-aff8-4dd6-bb37-af94872dbd4c

Signed-off-by: Bård Skaflestad <Bard.Skaflestad@sintef.no>
2012-06-26 21:01:20 +02:00
Bård Skaflestad
5d5404aebf Lower constant tet_volume multiplication below
accumulation loop.
2012-06-26 20:59:19 +02:00
Bård Skaflestad
0e308c3be1 Remove some long-disabled code that only served to
confuse the reader.
2012-06-26 20:57:00 +02:00
Bård Skaflestad
f6a7a48831 Compute_cell_geometry(): Don't print misleading
diagnostic message.   We don't know if we should emit a
diagnostic concerning non-positive   cell volumes until
we have accumulated all tetrahedral   contributions.

While here, amend the diagnostic message to also report the cell in
which non-positive volumes are detected.
2012-06-26 20:54:37 +02:00
Bård Skaflestad
7d7f62ebc3 Merge branch 'preprocess-svn-reintegrate'
Conflicts:
	Makefile.am
	opm/core/grid/cpgpreprocess/facetopology.c
	opm/core/grid/cpgpreprocess/mxgrdecl.c
	opm/core/grid/cpgpreprocess/preprocess.c
	opm/core/grid/cpgpreprocess/sparsetable.c
	opm/core/grid/cpgpreprocess/sparsetable.h
	opm/core/grid/cpgpreprocess/uniquepoints.c

This merge brings a new, more resilient and feature-complete
corner-point processing.  In particular, the new code features
exact, in-plane vertex coordinates for face nodes that arise as a
result of fault processing and which are not located on pillars.
Secondly, the resulting grid's cells are ordered lexicographically
with the I index cycling the most rapidly, followed by J and
finally K.

Finally, this merge also brings automatic handling of left-handed
coordinate systems which, until now, have produced negative cell
volumes as a result of face vertices being ordered such that
interface normals point from cell 2 to cell 1 in this case.
Left-handed coordinate systems are recognised using a simplistic
triple-product characterisation akin to the implementation of
function "processGRDECL" of MRST.

This code is now an (almost) exact replica of revision 1001 of
https://public.ict.sintef.no/viewvc/openrs/trunk/dune-cornerpoint/grid/preprocess/

The merge also removes opm/core/grid/cpgpreprocess/readvector*, so
remove tests/test_readvector.cpp (and accompanying Make rule) to
maintain a buildable tree.
2012-06-26 19:52:21 +02:00
Bård Skaflestad
71a1f93bf9 Reformat computeFaceTopology() declaration. No functional changes.
Signed-off-by: Bård Skaflestad <Bard.Skaflestad@sintef.no>
2012-06-26 18:43:02 +02:00
Bård Skaflestad
8ca2ecbbda Make special provisions to guarantee positive cell volumes in models featuring a left-handed coordinate system. Implementation modelled on the "processGRDECL" function of MRST.
Specifically:
    * Use a simple triple-product characterisation of left-handed
      coordinate systems.
    * Reflect Y coordinates about XZ plane to guarantee right-handed
      systems during facetopology() processing.
    * Restore original Y coordinates upon completion of
      process_grdecl() lest subsequent geometry processing fail to
      produce correct results.
    * Reverse face-node order if an odd number of sign changes have
      been applied to the node coordinates (i.e., if *either* the Y
      *or* the Z--but not both--coordinates have been flipped).

Signed-off-by: Bård Skaflestad <Bard.Skaflestad@sintef.no>
2012-06-26 18:43:02 +02:00
Bård Skaflestad
e72cc0d600 process_vertical_faces(): Insert a bit of white-space in loop-condition for readability purposes.
Signed-off-by: Bård Skaflestad <Bard.Skaflestad@sintef.no>
2012-06-26 18:43:02 +02:00
Bård Skaflestad
18930081ce process_vertical_faces(): Explicitly assert that "direction" is zero or one only.
Signed-off-by: Bård Skaflestad <Bard.Skaflestad@sintef.no>
2012-06-26 18:43:02 +02:00
Bård Skaflestad
a3dd542ea4 checkmemory(): Use integer-only operations when calculating array sizes.
Signed-off-by: Bård Skaflestad <Bard.Skaflestad@sintef.no>
2012-06-26 18:43:02 +02:00