239 Commits

Author SHA1 Message Date
Bård Skaflestad
56d4f2aa1b Enforce explicit no-flow on outer faces not affected by boundary conditions. 2012-04-24 15:08:05 +02:00
Ove Saevareid
d26a9ee4c8 Bugfix: want non-negative cell index 2012-04-24 12:51:24 +02:00
Bård Skaflestad
435b652678 Add debug-only test to catch the issue fixed in cset 993fd9d80c93. 2012-04-23 19:07:11 +02:00
Ove Saevareid
cd5cf1d348 Bugfix: face_cells, not cell_faces 2012-04-23 14:00:31 +02:00
Atgeirr Flø Rasmussen
f386ffa804 Added fixes and assertions suggested by static analysis. 2012-04-23 13:28:18 +02:00
Atgeirr Flø Rasmussen
0c3c195220 Pretty-formatting only. 2012-04-19 15:33:25 +02:00
Kjetil Olsen Lye
5b21e74999 merge 2012-04-13 13:20:36 +02:00
Bård Skaflestad
78dea6aa20 Pass correctly sized well-rate solution vectors to ifs_tpfa_press_flux().
The function computes a total flux at each perforation (connection), not
just one total flux per well.  Update documentation accordingly.
2012-04-12 20:27:29 +02:00
Kjetil Olsen Lye
8bc9e862d4 Made a (possibly wrong) adjustment to well_controls_append. Each control now has its current index set to 0, as there's only supposed to be one control per well. 2012-04-12 18:47:06 +02:00
Xavier Raynaud
f2b56c22bf Added Latex format in documentation. 2012-04-12 18:13:57 +02:00
Kjetil Olsen Lye
bc275a4755 Made a computeWDP-function 2012-04-12 17:50:51 +02:00
Kjetil Olsen Lye
5664fcd7d7 Made us of wells output arguments in IncompTpfa 2012-04-12 16:39:12 +02:00
Kjetil Olsen Lye
4aa0567fd4 Made IncompTpfa receive wells-output-arguments 2012-04-12 16:36:08 +02:00
Kjetil Olsen Lye
84b5041487 Fixed namespacing issue 2012-04-10 14:47:29 +02:00
Atgeirr Flø Rasmussen
4db93c418c Suppressed multiple warnings. 2012-03-28 11:56:20 +02:00
Bård Skaflestad
4544000065 Fix likely omission: don't pass objects when references will do.
This avoids copying a vector of size grid_.numFaces().
2012-03-23 19:47:27 +01:00
Bård Skaflestad
355eb053e8 Implement solution recovery from wells (BHP and perf. fluxes)
Contingent upon passing non-NULL well_press and well_flux pointers in
the solution structure.  The forces must be the same as the ones used
in assembling the system of linear equations.
2012-03-21 11:54:34 +01:00
Bård Skaflestad
ca0f46736e ifs_tpfa: Prepare for well solution recovery (BHP and perf. fluxes).
Expose new elements '.well_press' and '.well_flux' in the solution
structure and update callers accordingly.
2012-03-21 11:08:56 +01:00
Bård Skaflestad
55975a085a Assemble_bhp_well(): Don't look up wdof diagonal element multiple times. 2012-03-21 10:59:21 +01:00
Bård Skaflestad
0a6837bda9 Assemble_rate_well(): Don't look up wdof diagonal element multiple times. 2012-03-21 10:48:58 +01:00
Bård Skaflestad
a3a9e12388 Implement RESV constraint assembly. 2012-03-20 23:17:52 +01:00
Bård Skaflestad
d6a6d24716 Delete trailing whitespace. 2012-03-20 22:46:38 +01:00
Bård Skaflestad
1cd44389d9 Assemble_bhp_well(): Remove unused variable. 2012-03-20 22:45:28 +01:00
Bård Skaflestad
faa334a4d0 Merge from upstream. 2012-03-20 19:34:30 +01:00
Bård Skaflestad
a4925e63da Assemble BHP-type wells into system of linear equations.
All wells are represented, but BHP wells get trivial equations
(n*p=n*target).  While here, stub out RESV assembly process.

BHP and perforation flux recovery is unimplemented at this time.
2012-03-20 19:32:35 +01:00
Bård Skaflestad
bf86cd9371 Revert to original (fractional flow) model of perforation fluxes. 2012-03-20 18:46:54 +01:00
Bård Skaflestad
fb6d7032bf Pass number of fluid phases along with well data.
Needed to properly index into Wdata->phasemob.  Update callers
accordingly.
2012-03-20 15:43:25 +01:00
Atgeirr Flø Rasmussen
11f03a60f0 Make comments relating to omega (frac.flow-weighted density) precise. 2012-03-20 14:21:22 +01:00
Bård Skaflestad
c70a41691f Declare well support in ifs_tpfa module. Currently not implemented.
Update callers accordingly.
2012-03-20 13:39:34 +01:00
Atgeirr Flø Rasmussen
5c08628fd6 Merged. 2012-03-20 12:12:21 +01:00
Atgeirr Flø Rasmussen
a99cccf2fc Compensate for matrix adjustment in rock comp case. 2012-03-20 12:05:59 +01:00
Bård Skaflestad
a8d067af18 Solve(rock_comp): Refactor rock-compressibility diagonal term calculation. 2012-03-20 11:21:02 +01:00
Bård Skaflestad
3d3aaa98d1 solve(rock_comp): Replace manual index search with csrmatrix_elm_index(). 2012-03-19 13:55:21 +01:00
Atgeirr Flø Rasmussen
bc04c0fa3e Implemented solve() with rock compressibility (untested). Struct init warning suppression. 2012-03-19 11:52:03 +01:00
Bård Skaflestad
b8f3cd90c3 ifs_tpfa_assemble(): Coalesce external forces into single branch. 2012-03-16 14:30:13 +01:00
Bård Skaflestad
c5c9f58a23 Refactor construction of driving forces in preparation of well support. 2012-03-16 11:59:51 +01:00
Bård Skaflestad
f89746b8bd Refactor ifs_tpfa_press_flux() flux calculation in preparation of wells.
Specifically, move calculation of cross-boundary fluxes introduced by
boundary conditions out to new internal function boundary_fluxes().
2012-03-16 11:21:34 +01:00
Bård Skaflestad
488f85d425 Align multi-line parameter lists and structure members.
No functional changes.
2012-03-16 11:06:01 +01:00
Bård Skaflestad
87aa556423 Initialise all tpfa_solution members to NULL in anticipation of well support. 2012-03-16 09:32:48 +01:00
Bård Skaflestad
116b8f9d95 Initialise all tpfa_solution members to zero (i.e., NULL).
This is in anticipation of introducing additional structure members to
represent solution variables associated with wells whilst having the
compiler generate the appropriate null pointers to aid debugging.

Unfortunately, GCC warns about the standard "structure = { 0 }" idiom
under -Wmissing-field-initializers which is enabled by default under
"-Wextra".
2012-03-15 15:13:03 +01:00
Bård Skaflestad
d69eb28dfc Encapsulate ifs_tpfa pressure solution in ad-hoc structure.
This is to limit the number of explicit interface changes when we
produce solution variables for wells too.

Update callers accordingly.
2012-03-15 14:26:40 +01:00
Atgeirr Flø Rasmussen
c10c089d5e Update for change in tpfa solver. 2012-03-15 11:16:03 +01:00
Bård Skaflestad
6d8531548b ifs_tpfa: Build sparse matrix structure capable of handling wells.
Actual contributions not included at this time.  Update caller
(IncompTPFA) accordingly, but don't modify observable behaviour.
2012-03-15 02:53:59 +01:00
Bård Skaflestad
686100a407 Account for explicit flux BCs during flux calculation. 2012-03-13 23:35:26 +01:00
Bård Skaflestad
f2df9fe123 Account for compressed BC representation during flux calculation. 2012-03-13 23:28:43 +01:00
Bård Skaflestad
436a7d666d Assemble flux boundary conditions into system of linear equations.
A few restrictions apply:

  * The bc->value is interpreted as an inflow *into* the connecting
    cell.  Outflow conditions must be specified using a negative
    sign.

  * We do not currently support general total flux conditions
    (necessitates the introduction of additional degrees of freedom),
    so bc->cond_pos[i+1]-bc->cond_pos[i] must be one (1) for all
    BC_FLUX_TOTVOL conditions.
2012-03-13 21:00:51 +01:00
Bård Skaflestad
4f7a84d630 Rename confusing variable to promote better understanding. 2012-03-13 14:48:09 +01:00
Bård Skaflestad
f00bd49292 Refactor transmissibility reference during Dirichlet BC assembly. 2012-03-13 14:43:56 +01:00
Bård Skaflestad
e727bf34e9 Take gravity into effect when assembling Dirichlet boundary conditions. 2012-03-13 14:42:38 +01:00
Bård Skaflestad
364b177237 Remove a useless explicit type conversion. 2012-03-12 09:59:30 +01:00