Commit Graph

2244 Commits

Author SHA1 Message Date
Bård Skaflestad
a245c45c23 Add global assembly of (symmetric) well contributions for cells. 2010-09-24 17:26:48 +00:00
Bård Skaflestad
20b66033a0 M-x delete-trailing-whitespace . 2010-09-24 14:18:53 +00:00
Bård Skaflestad
d7634f730e M-x delete-trailing-whitespace . 2010-09-24 14:17:05 +00:00
Bård Skaflestad
8cf595df43 Don't bother checking for NULL-ness in dtor. Ifsh_destroy() already
does this, and it is okay to rely on this fact.
2010-09-24 12:53:30 +00:00
Atgeirr Flø Rasmussen
f3105558f2 Preliminary, unfinished version of C++ interface code. 2010-09-24 12:11:14 +00:00
Bård Skaflestad
790feb6831 In preparation of adding well support to ifsh_assemble(), re-factor
current implementation out into two separate helper functions,
  ifsh_set_effective_params(), and ifhs_assemble_grid().
2010-09-24 12:00:01 +00:00
Atgeirr Flø Rasmussen
8eeb8db15f Added extern "C" statements for C++ compatibility. 2010-09-24 09:07:50 +00:00
Atgeirr Flø Rasmussen
77c65d1cc2 Created Makefile.am for use with dune build system.
Very primitive version so far, and only includes ifsh-related things.
2010-09-24 07:47:07 +00:00
Bård Skaflestad
4deb63137a Form complete, rather than partial, w2w connection. 2010-09-22 18:46:55 +00:00
Bård Skaflestad
a115ac702b Implement cell-based contributions to global linear systems from
wells.  In particular, this represents the equivalent of
  hybsys_schur_complement_*() for wells.
2010-09-22 16:59:52 +00:00
Bård Skaflestad
58022e240c Add place-holders for effective well IP/gravity pressure fields.
Don't (yet) allocate any data storage for these.
2010-09-22 16:57:45 +00:00
Jostein R. Natvig
297b79d4f0 Add simple test of mex_ifsh. 2010-09-22 11:48:08 +00:00
Bård Skaflestad
c81336db05 Make buildable.
Pointy hat to: bska.
2010-09-22 08:07:25 +00:00
Bård Skaflestad
96c077f877 Add partial well support (cell contributions). Global assembly remaining. 2010-09-21 15:38:32 +00:00
Bård Skaflestad
883fda040f In preparation of implementing well support, add a new field ('q')
to struct hybsys, and use this field to store 'src-F2*gpress' per
  cell.  Implement back substitution in terms of hybsys:q, rather than
  computing this value in hybsys_compute_press_flux().
2010-09-21 08:28:49 +00:00
Bård Skaflestad
ebee9a2710 Add a bit of summary to functions and data structure. 2010-09-19 17:18:53 +00:00
Bård Skaflestad
8879c1fd7c Add auto-build support for function 'mex_ifsh'. Also, add auto-build
support for function 'mex_compute_coarse_contrib', even if this
  function is entirely for testing/development purposese.
2010-09-17 20:54:13 +00:00
Bård Skaflestad
5d0278ba1b Add MEX gateway routine to fully assembled (mimetic/hybrid)
incompressible flow solver.  Supports boundary conditions (addBC),
  and source terms (addSource).  Single phase only.

  Initial testing is promising (one-phase linear pressure drop across
  cartGrid([250, 250, 10]) solved in about one minute).
2010-09-17 17:51:07 +00:00
Bård Skaflestad
e61ce75f18 Use M's notion of the MAT_SIZE_T when building for M. 2010-09-17 17:43:07 +00:00
Bård Skaflestad
fa214b1264 Declare procedure for deriving cell pressures and interface fluxes
(i.e., projected half-contact fluxes).
2010-09-17 17:42:02 +00:00
Bård Skaflestad
9ed3196485 Modify the implementation data:
- Store effective Binv rather than Schur complement 'S'.
    - Add integer and floating point work arrays (BC handling,
      pressure/flux back-substitution &c.)

  Always allocate integer work array.  Consequently, no need to jump
  through hoops to avoid issues surrounding malloc(0).

  Add simple procedure for imposing prescribed interface pressure
  values (i.e., Dirichlet conditions).

  Correct a few clerical errors (use of unitialised vars &c).

  Assemble global system, but only for reservoir contributions.  Well
  contributions remain.

  Add trivial procedure for deriving cell pressures and interface
  fluxes (projected half-contact fluxes).
2010-09-17 17:41:05 +00:00
Bård Skaflestad
129703add0 White-space adjustment. No functional changes. 2010-09-17 07:35:05 +00:00
Bård Skaflestad
e988e091eb Add initial support for assembling the Schur complement system
directly from cell contributions.  Incomplete.
2010-09-16 17:03:11 +00:00
Bård Skaflestad
790d6f4b8b Track reverse mapping into WI/depth tables in 'cwells'. Update
allocation sizes accordingly.
2010-09-16 06:37:23 +00:00
Bård Skaflestad
d96229619e Separate well connections (typically static) from well controls
(often dynamically changing throughout simulation).
2010-09-15 17:27:59 +00:00
Bård Skaflestad
6a1b45fda4 Spell parameter name consistently in header and body.
Clue-by-four provided by GCC.
2010-09-15 17:27:14 +00:00
Bård Skaflestad
aa19c72d49 Re-factor creation and destruction of cell->well mapping out to
separate module.  Update callers.
2010-09-15 12:13:53 +00:00
Bård Skaflestad
dd0aa25511 Summarise purpose of each function. 2010-09-14 19:45:13 +00:00
Bård Skaflestad
3eb2d36c51 Summarise function purposes.
While here, guard against invalid DOFs in fill_grid_connections().
2010-09-14 14:12:16 +00:00
Bård Skaflestad
bf8f33be9a We use memset(), so #include <string.h>. 2010-09-14 13:18:17 +00:00
Bård Skaflestad
237bfbc6a7 Don't state that we reverse-insert (i.e., push-forward) the bin
elements when we in fact use jrn's much more straight-forward
  push-back mode.
2010-09-14 12:21:30 +00:00
Bård Skaflestad
bcac0e78da Summarise purpose for remaining functions. Document a few
parameters and return values.

  While here, convert function pair coarse_topology_build_coarsef()
  and coarse_topology_build_final() to CSR push-back build mode.
2010-09-14 12:15:49 +00:00
Bård Skaflestad
54d7094311 Include <assert.h> for assert() support. 2010-09-14 11:48:48 +00:00
Bård Skaflestad
671c9ff74d Insert "H1 lines" to summarise purpose. Document a few parameters
and return values as well.

  While here, convert CSR build to push-back mode.
2010-09-14 11:19:08 +00:00
Bård Skaflestad
431910898c Insert "H1 lines" to summarise purpose. 2010-09-14 11:17:55 +00:00
Bård Skaflestad
a58b81c105 Remove special MATLAB compilation support. This is provided by blas_lapack.h. 2010-09-13 16:11:49 +00:00
Bård Skaflestad
61254bec37 Add traditional implementation of the finite-<something> assembly
process.
2010-09-13 16:11:15 +00:00
Bård Skaflestad
ad508cf6e0 Add simple type for describing boundary conditions for the flow
equation.
2010-09-13 15:46:06 +00:00
Bård Skaflestad
0a69e72f3c Maintain number of columns (typically equal to number of rows) when
building sparsity structure.
2010-09-11 13:48:53 +00:00
Bård Skaflestad
41a3b5719b Add utilities to assist in forming global coefficient matrix from
Schur complement reduction contributions.
2010-09-10 17:26:46 +00:00
Bård Skaflestad
de2b2551cc Add initial cut at well definition. 2010-09-10 17:14:00 +00:00
Bård Skaflestad
b04ee86a03 Disable direct assembly routines. A more elaborate (and expensive)
scheme is, regrettably, needed for most linear solvers.
2010-09-09 16:49:16 +00:00
Bård Skaflestad
c350f18100 Add simple support routines for building CSR matrices. 2010-09-09 16:48:03 +00:00
Bård Skaflestad
c3c7000815 Complete revision 5188. Sorry about the breakage. 2010-09-09 16:46:28 +00:00
Bård Skaflestad
488b83a642 Factor hash-set support out to separate module. It will be used in
deriving the non-zero structure of the global sparse matrix in
  models with wells.  At least for now.  We may wish to use another
  approach at some time...
2010-09-09 16:44:58 +00:00
Bård Skaflestad
0423d13a1c Remove particular MATLAB support. The "blas_lapack.h" include file
already provides pertinent definition of MAT_SIZE_T .
2010-09-09 08:37:52 +00:00
Bård Skaflestad
b836029a4a Ignore debug output from 'coarse_sys.c'. 2010-09-08 16:22:52 +00:00
Bård Skaflestad
5366d18fc2 Correct embarrassing indexing error: Both the fine-scale
ip-contributions and the resulting coarse-scale ip matrix have
  dimensions (number of basis functions)-by-(number of basis
  functions).
2010-09-08 09:09:34 +00:00
Bård Skaflestad
5075c7a222 Only output debug info for IP/B if factoring B failed. 2010-09-08 09:05:13 +00:00
Bård Skaflestad
472d44d846 Add debugging support. 2010-09-08 08:46:47 +00:00