Commit Graph

1389 Commits

Author SHA1 Message Date
Bård Skaflestad
a11c59f8dd Really remove all purported boundary condition handling. 2011-11-25 14:19:12 +01:00
Bård Skaflestad
b5ebb988da Don't pretend to support boundary conditions.
We don't.
2011-11-25 14:17:07 +01:00
Bård Skaflestad
634d168b3f Assemble well equation form contributions per completion.
We assemble one equation for each well, with the equation being
trivial for wells controlled by bottom-hole targets.  Moreover, at
present we only support BHP and RESV controls.  The infrastructure is
in place to support more general controls (i.e., surface rate
targets), but such wells are currently not part of the 'well.h'
module.
2011-11-25 14:02:15 +01:00
Bård Skaflestad
f45f6ea62c Prepare to assemble RESV control target. 2011-11-24 23:21:41 +01:00
Bård Skaflestad
1d4d16feab Assemble completion-to-cell contributions. Reestablish build. 2011-11-24 22:39:17 +01:00
Bård Skaflestad
fcbc068091 Check-point commit to mark half-way support for well assembly.
Does not build.
2011-11-24 18:57:38 +01:00
Bård Skaflestad
ffd1531f2e Implement csrmatrix_zero() in terms of vector_zero(). 2011-11-23 23:06:16 +01:00
Bård Skaflestad
4a158b89a9 Compute component fluxes across completions if the model includes wells.
This necessitates a public interface change whereby the caller is
required to pass the current well (bottom-hole) pressure values into
the assembler.
2011-11-23 19:25:47 +01:00
Bård Skaflestad
6ab5800483 Allocate backing store for well completion data.
Also, include well connections in system matrix.
2011-11-23 15:25:48 +01:00
Bård Skaflestad
a1df963169 Take initial steps towards including wells in assembly.
Specifically, accept (and currently ignore), a WellCompletions
structure into the constructor, and aggregate all driving forces
(source terms, boundary conditions and all well-related structures)
into an assembler-specific "force" structure.  Accept a pointer to
such a structure into the assemble() function.  Currently ignored
except for source terms.
2011-11-23 13:20:37 +01:00
Bård Skaflestad
9a9b47a49a Name the well_t and well_control_t structures. 2011-11-23 11:23:30 +01:00
Bård Skaflestad
51111176db Guard against 'bc' being NULL.
This is in preparation of introducing compressible boundary conditions
as represented by the 'compr_bc' module.
2011-10-25 19:34:32 +02:00
Bård Skaflestad
d1026c82d5 Don't use uninitialised variables. 2011-10-21 15:30:44 +02:00
Bård Skaflestad
afdb88678f Fix remaining bugs for incompressible flows driven by sources.
In particular:

  - Zero sufficient portion of the ->mat_row to hold all connections
    of a cell in addition to the accumulation term.

  - Don't write the residual into the accumulation term of the
    Jacobian matrix row.
2011-10-20 13:59:15 +02:00
Bård Skaflestad
9392b3700f Don't pretend that the time-step is always one. 2011-10-19 22:28:41 +02:00
Bård Skaflestad
98abee6a79 Account for flow-direction signs when accumulating fluxes. 2011-10-19 22:10:22 +02:00
Bård Skaflestad
fb1316802c Implement compressible (volume flux) source term assembly. 2011-10-19 20:09:51 +02:00
Bård Skaflestad
79b5e94127 Accept a set of compressible source terms rather than a double*.
While here, restore an essential semicolon lost in cset 11881e6cd650.
2011-10-19 19:54:17 +02:00
Bård Skaflestad
5fea1f8556 Remove unused function. 2011-10-19 19:48:46 +02:00
Bård Skaflestad
14533690e4 Add a simple representation of a compressible (volume flux) source term. 2011-10-19 19:44:32 +02:00
Bård Skaflestad
7f40b2a4e7 Clear Jacobian row before assembling local contributions. 2011-10-19 15:14:11 +02:00
Bård Skaflestad
3cf841fc71 Simplify offset calculation. 2011-10-19 15:12:16 +02:00
Bård Skaflestad
4163ea49ee Correct various indexing errors. 2011-10-19 15:11:21 +02:00
Bård Skaflestad
501b04317d Re-install interface pressure calculation in residual formulation. 2011-10-19 13:27:24 +02:00
Bård Skaflestad
2a833768b2 Remove further traces of well support.
Wells will be introduced at a later time.
2011-10-19 13:11:44 +02:00
Bård Skaflestad
6acd22f7d7 Hook residual formulation up to build. 2011-10-19 13:01:06 +02:00
Bård Skaflestad
c8d7ca7fbd Merge cfs_tpfa backout. This restores backwards compatibility. 2011-10-18 23:22:52 +02:00
Bård Skaflestad
151adc6e3f Backed out changeset d83710dd6839 2011-10-18 23:22:26 +02:00
Bård Skaflestad
7d2f0b2b71 Merge 'compr_quant' backout.
This is another attempt at restoring backwards compatibility.
2011-10-18 23:20:57 +02:00
Bård Skaflestad
f55b9f5412 Backed out changeset 9faef9e37070 2011-10-18 23:20:34 +02:00
Bård Skaflestad
62e73a8a67 Grab copy of 'compr_quant' module. 2011-10-18 23:19:53 +02:00
Bård Skaflestad
4e77f6cd56 Merge backout. 2011-10-18 23:18:29 +02:00
Bård Skaflestad
d909e0f6d5 Backed out changeset 3b7e5d602aab
We need a copy of 'compr_quant' before restoring compat.
2011-10-18 23:18:22 +02:00
Bård Skaflestad
d64bdc8997 Merge backout. 2011-10-18 23:17:33 +02:00
Bård Skaflestad
2134f1f91e Backed out changeset 6b1a90716ea5 2011-10-18 23:17:02 +02:00
Bård Skaflestad
000f71e12c Back out cset 5e3d75476d64. 2011-10-18 23:14:15 +02:00
Bård Skaflestad
704d7eab5c Backed out changeset 5e3d75476d64
In preparation of restoring backwards compatibility in 'cfs_tpfa' module.
2011-10-18 23:13:41 +02:00
Bård Skaflestad
e81a424995 Grab copy of 'cfs_tpfa' module in preparation of restoring backwards compat. 2011-10-18 23:12:54 +02:00
Bård Skaflestad
dd042b75a8 Make first attempt at implementing the residual/Jacobian formulation.
This is a step in the direction of having a true IMPES pressure solver
and to remove the 'experimental_jacobian' option in dune-porsol.
2011-10-18 20:46:05 +02:00
Bård Skaflestad
7fb517e192 Delete trailing whitespace. 2011-10-18 20:40:19 +02:00
Bård Skaflestad
94fc6de78a Rework compressibility representation.
Switch to storing a complete fluid-matrix derivative in the
compr_quantities rather than the total compressibility.  Maintain the
"volume discrepancy" field.  Also, add traditional memory management
functions.
2011-10-18 20:38:28 +02:00
Bård Skaflestad
c3036166a9 Factor pressure (increment) assignment out of _press_flux().
The linear solution h->x is the pressure increment, not the actual
pressure value, so we cannot compute fluxes based on h->x alone.
2011-10-17 11:05:04 +02:00
Bård Skaflestad
be6ae76d88 Don't reference (non-existent) Dune directories. Remove disabled code. 2011-10-13 19:38:33 +02:00
Halvor M. Nilsen
e7d5d4bb27 added EulerUpstreamImplicit, added implicit traits: does notthing now 2011-10-11 11:42:40 +02:00
Halvor M. Nilsen
b42bd08154 Move 'common' directory into 'dune'. 2011-10-07 10:54:25 +02:00
Bård Skaflestad
5ee2c381c3 Import glue code for calling into UMFPACK using an OPMPressure CSRMatrix. 2011-10-05 20:03:07 +02:00
Bård Skaflestad
01eb7a2214 Add an overload suited to pointer arguments (primitive types). 2011-10-05 19:54:12 +02:00
Bård Skaflestad
4f488a08e7 Work around different 'const' rules in C. 2011-10-04 21:21:30 +02:00
Bård Skaflestad
55cbd9143b Don't reference unneeded interfaces. 2011-10-04 10:10:44 +02:00
Bård Skaflestad
5b3acfa7da Add a block assembler and solver for OPMPressure's CSRMatrix.
Solver based on UMFPACK.
2011-10-03 18:17:58 +02:00