Commit Graph

492 Commits

Author SHA1 Message Date
Bård Skaflestad
ded39c358e Really remove all purported boundary condition handling. 2011-11-25 14:19:12 +01:00
Bård Skaflestad
4a50653106 Don't pretend to support boundary conditions.
We don't.
2011-11-25 14:17:07 +01:00
Bård Skaflestad
432a1d4230 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
feaa79d74b Prepare to assemble RESV control target. 2011-11-24 23:21:41 +01:00
Bård Skaflestad
2d8a73776f Assemble completion-to-cell contributions. Reestablish build. 2011-11-24 22:39:17 +01:00
Bård Skaflestad
581420d845 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
3085a4d12b Implement csrmatrix_zero() in terms of vector_zero(). 2011-11-23 23:06:16 +01:00
Bård Skaflestad
8677bc3827 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
8937b6b283 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
aff142bd54 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
099fa2b612 Name the well_t and well_control_t structures. 2011-11-23 11:23:30 +01:00
Bård Skaflestad
38e0cb08eb Remove a comment that alludes to a non-portable technique. 2011-10-26 16:19:34 +02:00
Bård Skaflestad
68c51d8ddf 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
057d291b3e Add a facility for representing compressible boundary conditions. 2011-10-24 18:10:34 +02:00
Bård Skaflestad
b8f7cc1765 Don't use uninitialised variables. 2011-10-21 15:30:44 +02:00
Bård Skaflestad
2835762542 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
c90fc0d85d Don't pretend that the time-step is always one. 2011-10-19 22:28:41 +02:00
Bård Skaflestad
f28f1137be Account for flow-direction signs when accumulating fluxes. 2011-10-19 22:10:22 +02:00
Bård Skaflestad
803e3d1286 Check allocation status in correct scope. 2011-10-19 20:32:50 +02:00
Bård Skaflestad
735e0fca95 Implement compressible (volume flux) source term assembly. 2011-10-19 20:09:51 +02:00
Bård Skaflestad
7d097bafac 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
c2482fbf12 Remove unused function. 2011-10-19 19:48:46 +02:00
Bård Skaflestad
f87b9184ae Add a simple representation of a compressible (volume flux) source term. 2011-10-19 19:44:32 +02:00
Bård Skaflestad
0f0844b45e Clear Jacobian row before assembling local contributions. 2011-10-19 15:14:11 +02:00
Bård Skaflestad
f14b54cee8 Simplify offset calculation. 2011-10-19 15:12:16 +02:00
Bård Skaflestad
21701c8eff Correct various indexing errors. 2011-10-19 15:11:21 +02:00
Bård Skaflestad
cabd8ace6a Re-install interface pressure calculation in residual formulation. 2011-10-19 13:27:24 +02:00
Bård Skaflestad
b0645e7c9a 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
3393aa0d9e Hook residual formulation up to build. 2011-10-19 13:01:06 +02:00
Bård Skaflestad
9af8481868 Merge cfs_tpfa backout. This restores backwards compatibility. 2011-10-18 23:22:52 +02:00
Bård Skaflestad
b70a7d6832 Backed out changeset d83710dd6839 2011-10-18 23:22:26 +02:00
Bård Skaflestad
717a5cfc9b Merge 'compr_quant' backout.
This is another attempt at restoring backwards compatibility.
2011-10-18 23:20:57 +02:00
Bård Skaflestad
e3b52c3a44 Backed out changeset 9faef9e37070 2011-10-18 23:20:34 +02:00
Bård Skaflestad
8260b59942 Grab copy of 'compr_quant' module. 2011-10-18 23:19:53 +02:00
Bård Skaflestad
556724befd Merge backout. 2011-10-18 23:18:29 +02:00
Bård Skaflestad
e54f1cf147 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
ec5d660d67 Merge backout. 2011-10-18 23:17:33 +02:00
Bård Skaflestad
986e8183c4 Backed out changeset 6b1a90716ea5 2011-10-18 23:17:02 +02:00
Bård Skaflestad
f469234ae5 Back out cset 5e3d75476d64. 2011-10-18 23:14:15 +02:00
Bård Skaflestad
8a63636c94 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
7bea27208e Grab copy of 'cfs_tpfa' module in preparation of restoring backwards compat. 2011-10-18 23:12:54 +02:00
Bård Skaflestad
4f657d9f87 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
cd02647d53 Delete trailing whitespace. 2011-10-18 20:41:44 +02:00
Bård Skaflestad
99fa7b7f0e Delete trailing whitespace. 2011-10-18 20:41:13 +02:00
Bård Skaflestad
e44b7317b8 Delete trailing whitespace. 2011-10-18 20:40:19 +02:00
Bård Skaflestad
ceaea9f987 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
9b0b258198 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
Halvor M. Nilsen
9610763e07 changes the code compile: runs: and give wrong results 2011-10-12 16:10:51 +02:00
Bård Skaflestad
bdbd90916b Use portable array initialisation.
Memset() and calloc() define arrays of bytes, not general objects.  This
is a lesson learned many times over by generations of C programmers...
2011-09-30 09:39:54 +02:00
Bård Skaflestad
ef0bac2fc0 Add gravity contributions in flux calculations.
Credit:
  Jostein R. Natvig <jostein.r.natvig@sintef.no>
2011-09-20 13:18:33 +02:00