Commit Graph

1988 Commits

Author SHA1 Message Date
Bård Skaflestad
08e2e9c1a3 Only compute face pressure values if explicitly requested.
Following cset ba5d27f90d7a there is no need to compute the interface
pressure values after every linear solve.  Re-factor
cfs_tpfa_press_flux() to only compute cell pressures and interface
fluxes, and move interface pressure value computation to cfs_tpfa_fpress().
2010-11-22 11:36:47 +01:00
Bård Skaflestad
44743f5f1c Merge from upstream. 2010-11-19 15:20:22 +01:00
Atgeirr Flø Rasmussen
b6de3ecc1b Only check boundary conditions on outer boundary in compute_flux(). 2010-11-19 15:11:57 +01:00
Bård Skaflestad
c26d494696 Complete transition to all-int topology in CSRMatrix structure.
Having a 'MAT_SIZE_T' that is sometimes an int and sometimes an
mwSignedIndex is asking for trouble.  The practical impact for OPM is
low, though, as this issue affects only the MEX interface.
2010-11-19 14:35:39 +01:00
Jostein R. Natvig
6ae51908fa Remove Matlab binding. 2010-11-19 10:20:48 +01:00
Atgeirr Flø Rasmussen
da532bf009 Const-ified data members of compr_quantities. 2010-11-18 16:02:11 +01:00
Bård Skaflestad
744a08e513 Promote MEX fluid matrix impl. to official status.
Specifically, move the evaluation of cell transmissibilities into
cfs_tpfa module (from original MEX implementation), and create a new
structure, 'struct compr_quantities', to hold the 'RB^{-1}' data and
(upwind) phase mobilities &c.
2010-11-18 14:37:36 +01:00
Atgeirr Flø Rasmussen
68cc76c5eb Moved common enums for phase names etc. to BlackoilDefs helper class. 2010-11-15 20:11:45 +01:00
Bård Skaflestad
43de7f5d23 Evaluate cell pressure in an existing cell rather than outside... 2010-11-15 12:25:43 +01:00
Bård Skaflestad
0ffaafc9ee Upwind mobility strategy for computing flux/if-pressures.
Derive interface pressure values from fluxes rather than the other way
around.

Suggested by: Jostein R. Natvig
2010-11-15 10:29:23 +01:00
Atgeirr Flø Rasmussen
2bb79d9b55 Added proper copyright notice to files imported from samcode. 2010-11-15 07:57:36 +01:00
Atgeirr Flø Rasmussen
6d4546bc47 Changed namespace to Opm. 2010-11-12 13:28:55 +01:00
Atgeirr Flø Rasmussen
64ac03c4c6 Added lots of stuff originally from the samcode repository. 2010-11-12 13:18:27 +01:00
Bård Skaflestad
fdb1a0f04a Use pure htrans strategy for computing fluxes/if-pressures.
Still wrong.  Wrong: R-O-N-G.  Wrong.
2010-11-11 14:47:17 +01:00
Bård Skaflestad
8e5105c416 Merge from upstream. 2010-11-11 09:41:16 +01:00
Atgeirr Flø Rasmussen
6f91659a31 Updated after nf parameter was removed. 2010-11-11 09:16:49 +01:00
Bård Skaflestad
64cf39691e Compute real Darcy flux in cfs_tpfa_press_flux().
The previous edition made the grave mistake of summing the mass fluxes
per face.  This does not make sense.

Pointed out by: Jostein.R.Natvig@sintef.no
2010-11-10 14:31:30 +01:00
Atgeirr Flø Rasmussen
7bae4aa4d3 Implemented FluidMatrixInteractionBlackoil init(), kr() and a test prog. 2010-11-10 13:31:32 +01:00
Bård Skaflestad
552bfd5f00 Add flux and face-pressure computations.
Specifically, introduce utilities compute_fpress() and
compute_flux().  The former is needed to implement the latter across
external boundary faces.  Moreover, interface pressure values are
needed to evaluate fluid properties on faces (specifically R/B).

Add small gateway routine, cfs_tpfa_fpress(), to allow callers to
recover interface pressure values.  Re-implement cfs_tpfa_press_flux()
in terms of compute_fpress() and compute_flux().

Also, add fields 'fpress' and 'fpaccum' to struct cfs_tpfa_impl.
2010-11-09 12:52:31 +01:00
Bård Skaflestad
27ddb568ba Remove unused variable. 2010-11-09 10:03:42 +01:00
Bård Skaflestad
80f771d674 Merge from jrn. 2010-11-08 14:13:09 +01:00
Bård Skaflestad
43ddeaeca8 Don't enforce p[0]=0 for non-Neumann problems. 2010-11-06 19:16:23 +01:00
Jostein R. Natvig
ee6fe14e48 Remove unnecessary argument in mim_ip_simple_all; fix affected code;
as suggested by bska.
2010-11-05 22:05:55 +01:00
Bård Skaflestad
dba90f41bd Tentatively add boundary condition support.
We currently handle only Dirichlet (pressure) BC's, and the feature is
largely untested.  More work remaining.
2010-11-04 19:05:41 +01:00
Bård Skaflestad
650de8a127 Correct silly mistake in defining hface phase contribs.
We were only advancing the phase contrib once per cell, but need a
different contribution for each face for each cell...
2010-11-03 18:08:02 +01:00
Bård Skaflestad
99383e8f02 Move compressible support utilities to cfs_tpfa module.
We may wish to generalise this part into real utility functions but
for now, leave the functionality where it is most directly needed.
Rename the functions to highlight relationship to compr. tpfa.
2010-11-03 14:55:23 +01:00
Jostein R. Natvig
7459c5988e Add bare-bones explicit mobility-weighted upwind solver for two-phase
incompressible flow.
2010-11-02 09:10:36 +01:00
Bård Skaflestad
a24685af0a Add files for implementing compressible TPFA assembly. 2010-11-01 18:45:06 +01:00
Bård Skaflestad
5c6f149485 Add files for implementing compressible TPFA assembly. 2010-11-01 18:44:40 +01:00
Bård Skaflestad
ffaa7c4585 Move source files to sub-dir 'src'. 2010-10-29 15:08:09 +02:00
Atgeirr Flø Rasmussen
5274eafcc1 Added extern "C" clauses. 2010-10-28 11:39:23 +02:00
Atgeirr Flø Rasmussen
496bbb7faf Set the 'n' member of the matrix (number of columns). 2010-10-28 11:38:41 +02:00
Bård Skaflestad
a05de2d311 M-x delete-trailing-whitespace . 2010-10-26 22:30:54 +02:00
Bård Skaflestad
a13e6a63d5 Complete cset a68849062624 (Update comment...).
Pointy hat: bska
2010-10-26 12:35:35 +02:00
Bård Skaflestad
0633a430db Update comment to reflect reality. 2010-10-26 12:33:07 +02:00
Bård Skaflestad
c918c34e1f Don't update in place. 2010-10-26 12:28:31 +02:00
Bård Skaflestad
8d528e13d1 Implement simple gravity handling.
Produces expected results on standard verification test.
2010-10-26 11:57:00 +02:00
Bård Skaflestad
bdd538c764 Remove zero eigenval. Prepare for adding gravity. 2010-10-25 20:28:34 +02:00
Bård Skaflestad
7ee6eb7758 The ifs_tpfa_press_flux() function does not need 'src'. 2010-10-24 21:22:29 +02:00
Bård Skaflestad
d130aef655 Add (incomp) pressure system assembler based on TPFA. 2010-10-24 21:20:15 +02:00
Bård Skaflestad
4274f20c27 Add utilities for computing derived fluid quantities.
These are (currently) entirely geared towards pressure solvers.
2010-10-20 19:14:07 +02:00
Bård Skaflestad
664f1ac2fe Add facilities for computing/updating gpress/Binv.
We were already computing the inverse IP, but now centralise the
gpress as well.  Moreover, the mim_ip_*_update() functions will assist
in the pressure solvers accepting effective inner products and gravity
pressures only.
2010-10-14 14:20:11 +02:00
Bård Skaflestad
edd470dd7d Move implementation of vector_zero() to central location.
There is no need for each file to contain a separate, though
trivial, implementation of this feature.
2010-10-14 13:58:47 +02:00
Bård Skaflestad
ef4d884d12 Use canonical include guards.
Suggested by atgeirr.  Template:

   OPM_<FILENAME>_HEADER_INCLUDED
2010-10-13 18:35:15 +02:00
Atgeirr Flø Rasmussen
799dc936cd Made all C headers includeable from C++. 2010-10-12 07:44:02 +00:00
Atgeirr Flø Rasmussen
6530a16785 Added copyright block to all source code files. 2010-10-12 07:25:46 +00:00
Bård Skaflestad
35c0ef8ee9 Remove delusional assertion. While its predecessor asserted basic
sanity, the current check would never be satisfied in a reasonable
  grid.
2010-10-06 21:08:56 +00:00
Bård Skaflestad
4357d2564c Correct another off-by-one in the CSR start pointer implementation. 2010-10-04 17:43:45 +00:00
Atgeirr Flø Rasmussen
14f682a0b4 Documented mim_ip_simple_all. 2010-10-01 12:21:24 +00:00
Bård Skaflestad
284683b00d Add a routine for allocating a CSR matrix with known number of rows
and non-zeros.  Note that this routine is for allocation only.
  Caller must create and manage sparsity structure if this is being
  used in a global assembly process.

  This routine finds utility in MsMFEM BF construction.
2010-09-30 21:37:14 +00:00