that one was completely unused and the "grdecl" struct defined in
there collided name-wise with the one defined in "GridManager.hpp".
trying to link code which used the version of the grdecl.h header with
code that used the one from GridManager.hpp would have resulted in _a
lot_ hilarity...
most of them quite insignificant, but still annoying. The only
exception is the warning about the changed alignment for the 'work'
argument of spu_implicit_assemble(). AFAICT, the only reason why it
worked was that the pointer produced by malloc() was passed
directly. (malloc() seems to fulfill all alignment criteria.) To fix
this, I've changed that argument's type from char* to double*.
Allow a two-dimensional grid to be sent to compute_geometry() without
the assertion triggering. Route three-dimensional grids to the existing
implementation.
Commit 642eaf6 introduced the correct documentation, but mixed the order
of the 'zcorn' and 'actnum' documentation. This commit corrects that
oversight.
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.
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.