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
Bård Skaflestad
147dabc3ce
Merge from upstream
2013-05-23 09:50:46 +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
Roland Kaufmann
fe84822e52
Provide template functions in separate header
...
Template functions must be defined in the header since the library
cannot contain generic code. To keep only the interface in the main
header, all such function bodies are put in a separate _impl file.
2013-05-15 21:32:32 +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
Roland Kaufmann
d3db4922b4
Subtract time spend in callbacks from total
...
Since this is not time spent on the simulation itself, it is "unfair"
that this is accounted on the simulator.
2013-05-14 11:38:09 +02:00
Roland Kaufmann
37906058f5
Notify callbacks when a timestep has completed
...
Client code can do additional processing for the output of each
timestep.
2013-05-14 11:36:13 +02:00
Roland Kaufmann
f240e79880
Make implementation class "package" visible
...
Since a definition of the class is not in the header, no other
compilation units can safely access the internals of the Impl class
anyway, so it may as well be a regular struct so that the outer class
(SimulatorIncompTwophase) can access it.
2013-05-14 11:11:18 +02:00
Andreas Lauser
a2065b4101
make config.h the first header to be included in any compile unit
...
this is required for consistency amongst the compile units which are
linked into the same library and seems to be forgotten quite
frequently.
2013-04-10 12:56:14 +02:00
Atgeirr Flø Rasmussen
7d5d314fc0
Update to match opm-core changes.
2013-03-18 13:10:32 +01:00
Atgeirr Flø Rasmussen
4fc8f52fb2
Moved ColumnExtract and initState.
...
ColumnExtract -> opm/core/grid/ and initState -> opm/core/simulator/.
2013-03-18 12:47:23 +01:00
Atgeirr Flø Rasmussen
44fa7ec920
Further reorganising of opm-core.
...
Deleted some unused code (or moved to opm-porsol), moved all code dealing with
time-of-flight to opm/core/tof, moved code for implicit transport solver to
opm/core/transport/implicit, spu_[im|ex]plicit.[ch] to opm/core/transport/minimal.
2013-03-18 12:38:04 +01:00
Atgeirr Flø Rasmussen
e319fd1e38
Renamed newwells.h -> wells.h.
...
Also moved implementation file to subdir.
2013-03-18 10:33:34 +01:00
Atgeirr Flø Rasmussen
c16cb6987b
Renames classes in line with opm-core changes.
2013-03-15 18:33:41 +01:00
Atgeirr Flø Rasmussen
04abba4d5e
Adapt to changed opm-core header name.
2013-03-15 17:55:24 +01:00
Atgeirr Flø Rasmussen
e42cfc1303
Reinstate correct porevolume usage.
...
The porevolume at the start of the timestep should be provided to
the solver.
2013-03-15 15:10:16 +01:00
Atgeirr Flø Rasmussen
63c7380d04
Bugfix: check for null ptr before use.
2013-03-15 15:02:42 +01:00