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.
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.
cell-to-cell connections (i.e., when calling count_block_conns()),
inspect the pointer array (pc2c) rather than the cell array itself
(c2c). Clue-by-four supplied by gdb(1).
Move self connection handling to partition_create_c2c().
Adjust dfs() 'work' array size to comply with new requirements of
-r5088.
implements the first edition of the 'partitionUI' algorithm (i.e.,
before afg added sub-grid support in r2349), but it is nevertheless
a useful experiment and facilitates testing a C/C++ implementation
of the MsMFE method.
'ip_simple' mimetic inner product. Coincides with the results from
'computeMimeticIP' to (roughly) the order of round-off on a
non-trivial test case.
The calling interface is
BI = mex_ip_simple(G, rock)
and some latitude has been extended towards multiple data types in
the various G fields (e.g., G.cells.facePos may be an 'int32').
Additional clean-up and optimisation is likely.
- mim_ip_span_nullspace()
Constructs orthogonal basis for mimetic IP null space.
- mim_ip_linpress_exact()
Adds term to impose exactness for linear pressure fields.
Re-implement mim_ip_simple() in terms of these procedures.
Current status
--------------
Given vectors ZCORN, COORD and ACTNUM as well as the Cartesian
dimensions these vectors implicitly refer to, the code is
currently capable of
* Identify unique points along each pillar
* Assign point numbers for each point specified in ZCORN
* Compute face topology, i.e., the corners that define the geometry
of the faces as well as the cells that are connected through the face.
* Identify and compute intesections that occur in the processing of
face topology.
What remains is
* Handle the face geometry of boundary faces. (simple)
* Compute point coordinates of the final point list.
* Put all pieces together in a tidy manner.