Bård Skaflestad
12e4557b08
Add first cut at fully implicit system assembly.
...
Compile-tested only.
At this point, we only include reservoir effects--i.e., we don't
consider wells.
2013-05-23 18:28:50 +02:00
Bård Skaflestad
0c9cd6b901
Expose PhaseUsage to clients
...
This is likely to be a hack, but it does facilitate creating the fully
implicit solver for arbitrary two- and three-phase fluid systems.
2013-05-23 18:26:25 +02:00
Bård Skaflestad
2621283f1d
Add operator+=
...
This simplifies updating residuals.
2013-05-23 18:24:37 +02:00
Atgeirr Flø Rasmussen
07fbdf7608
Fix initialization issue with gpot_.
2013-05-23 16:39:15 +02:00
Atgeirr Flø Rasmussen
70ebd21cfd
Moved some calculations to computeExplicitData() method.
2013-05-23 15:08:21 +02:00
Atgeirr Flø Rasmussen
e5bd6547ae
Add gravity() method.
2013-05-23 14:48:34 +02:00
Bård Skaflestad
e2b5586b31
Merge remote-tracking branch 'atgeirr/master'
2013-05-23 13:25:20 +02:00
Atgeirr Flø Rasmussen
d171f043e5
Added simulator class and program using ImpesTPFAAD.
...
This copies similar code from opm-core and replaces
CompressibleTpfa with ImpesTPFAAD. Produces same results
for initial simple test cases.
2013-05-22 22:53:40 +02:00
Atgeirr Flø Rasmussen
52dc5799cc
Now computeFluxes() also sets well quantities.
...
Namely well_state.perfRates() and well_state.perfPress().
In the process, some overloads of fluid methods were added to
take V arrays instead of ADB arrays.
Simultaneously, coarsened tolerances a bit. Still hardcoded, though.
2013-05-22 22:51:14 +02:00
Atgeirr Flø Rasmussen
3e8bb53730
Moved implementation of class ImpesTPFAAD to separate file.
...
Also cleaned up header usage in ImpesTPFAAD.hpp, making some
new inclusions necessary in test program.
2013-05-22 15:49:55 +02:00
Atgeirr Flø Rasmussen
abc23b8009
ImpesTPFAAD is no longer a template class.
2013-05-22 15:27:16 +02:00
Atgeirr Flø Rasmussen
e86aa3324c
Moved DerivedGeology class to GeoProps.hpp.
...
Also, it is no longer a template (but its constructor is).
2013-05-22 15:16:24 +02:00
Bård Skaflestad
04e48cf615
Merge remote-tracking branch 'atgeirr/master'
2013-05-22 13:00:03 +02:00
Bård Skaflestad
6d0202d529
collapseJacs(): Don't assume column-major ordering
...
The 'InnerIterator' is ordering agnostic, so there is no need to
assume that the Jacobians are stored in a particular ordering.
2013-05-22 11:26:49 +02:00
Atgeirr Flø Rasmussen
8cc16466a9
Make ImpesTPFAAD use abstract fluid interface instead of template.
...
Follow-up changes to test program. Also while there, input correct
number of perforations to add_well() calls.
2013-05-22 11:13:14 +02:00
Atgeirr Flø Rasmussen
27cd7cf19e
Added abstract class BlackoilPropsAdInterface.
...
Also made BlackoilPropsAd (the class wrapping opm-core BlackoilPropertiesInterface)
inherit from it.
2013-05-22 10:56:14 +02:00
Atgeirr Flø Rasmussen
f2f83fee32
Remove unused experimental AD class.
2013-05-22 08:39:09 +02:00
Atgeirr Flø Rasmussen
89bd40f81e
Removed unused experiment with armadillo replacing Eigen.
2013-05-22 08:34:06 +02:00
Atgeirr Flø Rasmussen
edc08c0679
Now accepts both BHP and SURFACE_RATE wells.
2013-05-22 00:09:57 +02:00
Atgeirr Flø Rasmussen
c8bde19a01
Use all eqns for residual evaluations.
...
Use new wellRates() member of WellState.
2013-05-21 23:26:55 +02:00
Atgeirr Flø Rasmussen
8938459f7b
Added well equations.
...
Residuals are not yet used for loop control.
2013-05-21 15:42:35 +02:00
Atgeirr Flø Rasmussen
3929688756
Added utilitied collapseJacs() and vertcat().
...
The utilities are not optimized for speed, but make it easy
to construct a linear system from all the jacobian blocks.
2013-05-21 15:40:45 +02:00
Atgeirr Flø Rasmussen
bd1af1f53a
Make float accuracy fix the main path. Remove alternative path.
2013-05-21 13:54:28 +02:00
Atgeirr Flø Rasmussen
a147ff93d0
Can now solve with bhp-controlled wells.
...
Simple initial code. Assumes that well_state.bhp() contains
well bhp targets, does not check control structures.
2013-05-21 09:33:52 +02:00
Atgeirr Flø Rasmussen
4d794b79dc
Added Selector class.
...
Used to choose element-by-element between two (potentially AD) vectors,
depending on signs of elements of a third vector. Simple and not optimized.
2013-05-21 09:29:51 +02:00
Atgeirr Flø Rasmussen
defae7b96d
Moved UpwindSelector out of anonymous namespace.
2013-05-21 09:28:54 +02:00
Atgeirr Flø Rasmussen
a301477655
Remove more unused code.
2013-05-20 23:42:12 +02:00
Atgeirr Flø Rasmussen
aea69d328b
Clean out dead uncommented code.
2013-05-20 23:09:06 +02:00
Atgeirr Flø Rasmussen
f822cb4739
Test case working again with new fluid.
2013-05-16 16:31:05 +02:00
Atgeirr Flø Rasmussen
cc1f8ed21a
Refactored ImpesTPFAAD to use BlackoilPropsAd interface.
...
Not yet tested, but compiles and runs. Stops on error message
due to lack of viscosity derivatives.
2013-05-16 16:05:47 +02:00
Atgeirr Flø Rasmussen
f6c6ee0fa0
Fixes in computeFluxes().
...
- Give AD variables the correct block pattern (although as we
change fluid interface they will not need to be ad types).
- Make sure 'flux' is only on inner faces.
- Copy full fluxes to state.faceflux().
2013-05-16 14:46:54 +02:00
Atgeirr Flø Rasmussen
84d163e9fa
Bugfix: convert array to matrix type for matrix multiply.
2013-05-16 14:44:16 +02:00
Bård Skaflestad
0063799e86
Merge remote-tracking branch 'atgeirr/master'
2013-05-16 10:29:19 +02:00
Bård Skaflestad
c8fb7169aa
Move rel-perm and viscosity calculations closer to use
...
This is an aesthetic change, only.
2013-05-16 09:58:34 +02:00
Atgeirr Flø Rasmussen
c20a67aa1b
Merge remote-tracking branch 'bska/master'
2013-05-16 09:55:11 +02:00
Bård Skaflestad
fa2e02a579
The 'pflux' is really the hydraulic head.
...
Rename variable accordingly.
2013-05-16 09:51:34 +02:00
Bård Skaflestad
ef354792cd
Implement first cut at Darcy (total) flux calculation.
...
This is compile-tested only.
2013-05-16 09:48:56 +02:00
Bård Skaflestad
24204cf33e
Merge remote-tracking branch 'atgeirr/master'
2013-05-15 16:10:54 +02:00
Bård Skaflestad
e0c85a2fdb
Adapt to CMake-based build system.
...
Specifically,
- #include <config.h> where appropriate (all .cpp files)
- Adjust include statements to account for sub-directory locations
of .hpp files.
2013-05-15 16:10:20 +02:00
Bård Skaflestad
9309024d1e
First partitioning into source/examples/tests
...
Reorganisations are likely.
2013-05-15 10:35:39 +02:00