Commit Graph

3811 Commits

Author SHA1 Message Date
Atgeirr Flø Rasmussen
d59363d681 Now Eigen is found properly. 2013-05-16 10:49:05 +02:00
Bård Skaflestad
0063799e86 Merge remote-tracking branch 'atgeirr/master' 2013-05-16 10:29:19 +02:00
Atgeirr Flø Rasmussen
db95420b98 Add FindEigen3 cmake module. Currently unused. 2013-05-16 10:28:25 +02:00
Bård Skaflestad
c8fb7169aa Move rel-perm and viscosity calculations closer to use
This is an aesthetic change, only.
2013-05-16 09:58:34 +02:00
Atgeirr Flø Rasmussen
c20a67aa1b Merge remote-tracking branch 'bska/master' 2013-05-16 09:55:11 +02:00
Atgeirr Flø Rasmussen
1f1e1e8ed2 Reduce tolerance, add alternative code path.
The alternative code path attempts to deal with floating point cancellation
issues, which may not turn out to be a problem in the end (for real cases).
2013-05-16 09:53:17 +02:00
Bård Skaflestad
fa2e02a579 The 'pflux' is really the hydraulic head.
Rename variable accordingly.
2013-05-16 09:51:34 +02:00
Bård Skaflestad
ef354792cd Implement first cut at Darcy (total) flux calculation.
This is compile-tested only.
2013-05-16 09:48:56 +02:00
Bård Skaflestad
b46cef383f Build 'test_impestpfa_ad' along with the 'examples' 2013-05-16 09:48:01 +02:00
Bård Skaflestad
8bc5f66d8d Promote 'test_impestpfa_ad' to an 'example'
This was the original intention, but the file was misplaced during
the module reorganisation.
2013-05-16 09:33:58 +02:00
Bård Skaflestad
970f308f59 New sentence -> capital first letter. 2013-05-16 00:10:51 +02:00
Bård Skaflestad
b74d988a7b New sentence -> capital letter. 2013-05-16 00:10:32 +02:00
Roland Kaufmann
fe84822e52 Provide template functions in separate header
Template functions must be defined in the header since the library
cannot contain generic code. To keep only the interface in the main
header, all such function bodies are put in a separate _impl file.
2013-05-15 21:32:32 +02:00
Bård Skaflestad
24204cf33e Merge remote-tracking branch 'atgeirr/master' 2013-05-15 16:10:54 +02:00
Bård Skaflestad
e0c85a2fdb Adapt to CMake-based build system.
Specifically,

  - #include <config.h> where appropriate (all .cpp files)
  - Adjust include statements to account for sub-directory locations
    of .hpp files.
2013-05-15 16:10:20 +02:00
Bård Skaflestad
d2f412e27a Fix inverted set of automated test cases. 2013-05-15 16:08:56 +02:00
Bård Skaflestad
2500f1ae58 Adopt imported build system to OPM-Autodiff specifics
Updated include statements &c to follow.
2013-05-15 15:49:48 +02:00
Atgeirr Flø Rasmussen
028991a2a3 Ensure viscosity derivative is initialized. 2013-05-15 13:25:33 +02:00
Bård Skaflestad
582a947d9b Complete import of CMake support from OPM-Core 2013-05-15 10:40:00 +02:00
Bård Skaflestad
57f73517c0 Move MRST example closer to actual example 2013-05-15 10:37:50 +02:00
Bård Skaflestad
9309024d1e First partitioning into source/examples/tests
Reorganisations are likely.
2013-05-15 10:35:39 +02:00
Bård Skaflestad
5ce44e05e6 This is OPM-Autodiff 0.1
We don't depend on any Dune modules.
2013-05-15 10:26:06 +02:00
Bård Skaflestad
116f39e8ab Import CMake support from OPM-Core 2013-05-15 10:24:52 +02:00
Bård Skaflestad
930b88334f Merge upstream changes. 2013-05-15 10:12:30 +02:00
Bård Skaflestad
9139d8a48b Merge remote-tracking branch 'atgeirr/master' 2013-05-15 10:10:01 +02:00
Bård Skaflestad
c0dead5e97 Add spdiag() prototype to silence GCC 4.6 warning.
GCC's flag -Wmissing-declarations requires that a valid prototype
exist for non-template (global) functions prior to the corresponding
function definition.
2013-05-15 09:34:59 +02:00
Atgeirr Flø Rasmussen
7dbb9b50e1 Work in progress on adding wells. 2013-05-15 09:23:15 +02:00
Atgeirr Flø Rasmussen
90a4984dea Fix multiple symbol issue. 2013-05-15 09:22:45 +02:00
Atgeirr Flø Rasmussen
959f7cbcac Added superset() functions.
The reverse of subset(), superset() takes a sparse representation of a vector
and makes a full representation of it.

Also added a little documentation.
2013-05-15 08:50:22 +02:00
Atgeirr Flø Rasmussen
38259f43bf Added size() member for ease of use.
This makes it easier to write for example templated code
acting on either AD vectors or non-ad vectors.
2013-05-15 08:48:36 +02:00
Atgeirr Flø Rasmussen
51a5bdd039 Updated for helper class name change (UpwindSelector). 2013-05-15 08:35:38 +02:00
Atgeirr Flø Rasmussen
e95bafb0a2 Merge remote-tracking branch 'bska/master' 2013-05-15 08:32:43 +02:00
Atgeirr Flø Rasmussen
3c2031cd2e Moved spdiag out of an anonymous namespace.
It is a function meant to be called by clients, not an implementation detail.
2013-05-15 07:42:00 +02:00
Bård Skaflestad
0225e6c9ee Ignore autosave files from Vim. 2013-05-14 17:45:20 +02:00
Bård Skaflestad
b85c0dce88 Add test cases for density and water viscosity.
Currently, ViscosityAD fails due to missing pressure derivatives in
the viscosity primitives.
2013-05-14 17:29:49 +02:00
Bård Skaflestad
cebb6fd5fa Add required fluid densities 2013-05-14 15:46:00 +02:00
Bård Skaflestad
eb1836c977 Disable 'param' output for all test cases. 2013-05-14 15:45:31 +02:00
Bård Skaflestad
6583aca34c Default to using tables as-is. 2013-05-14 15:41:45 +02:00
Bård Skaflestad
ac5350a598 All "parameter" values must be strings. 2013-05-14 15:41:34 +02:00
Bård Skaflestad
667cae6d84 Expose 'param' and 'deck' in TestFixture. 2013-05-14 15:31:41 +02:00
Bård Skaflestad
a1ca968991 Merge remote-tracking branch 'atgeirr/master' 2013-05-14 15:19:13 +02:00
Atgeirr Flø Rasmussen
e8baa4a967 Merge remote-tracking branch 'bska/master' 2013-05-14 15:12:18 +02:00
Atgeirr Flø Rasmussen
995e8d7a91 Initial untested implementation of relperm() methods. 2013-05-14 15:11:46 +02:00
Bård Skaflestad
99c3ec2824 Start a test suite for class BlackoilPropsAd.
Relies on external data ("fluid.data") to describe the fluid model.
2013-05-14 14:59:31 +02:00
Bård Skaflestad
1069cfae6d Merge remote-tracking branch 'atgeirr/master' 2013-05-14 13:41:11 +02:00
Bård Skaflestad
a13d78bb06 Start fleshing out overall structure of Newton loop
Specifically,
  - Extract method solveJacobianSystem() for solving a single,
    system of linear equations (i.e., the Newton step).
  - Extract method residualNorm() for computing the residual norm.
    Used in loop control.
  - Stub out a method for computing fluxes.

Compile and run-tested on a linear, gravity-driven flow problem.
2013-05-14 13:40:56 +02:00
Atgeirr Flø Rasmussen
604f137d83 Merge remote-tracking branch 'bska/master' 2013-05-14 13:35:33 +02:00
Atgeirr Flø Rasmussen
53cfceea04 Implemented most of the fluid interface.
Missing is: rsMax() [postponed] and relperm() [coming soon].
2013-05-14 13:33:14 +02:00
Bård Skaflestad
55165bd68d Enforce row-major ordering of the pressure Jacobian
Otherwise, we will use the transposed Jacobian as a coefficient
matrix in the 'linsolver_'.  This is wrong when solving compressible
problems for which the Jacobian matrix is not symmetric.
2013-05-14 11:53:09 +02:00
Bård Skaflestad
3f0f0363c3 Add first, working gravity solution
When run as

    ./test_impestfpa_ad permeability=1.01325e15 ref_pressure=1.0e-5 \
    mu1=1000 mu2=1000 rho1=1 rho2=1

this example reproduces the expected solution (a one-Pascal pressure
increase per cell).

Note that this is an incompressible case, so 'test_impestpfa_ad' must
be compiled with the pre-processor symbol

    HACK_INCOMPRESSIBLE_GRAVITY

defined to a true value (e.g., -DHACK_INCOMPRESSIBLE_GRAVITY=1)
2013-05-14 11:40:07 +02:00