Commit Graph

91 Commits

Author SHA1 Message Date
Bård Skaflestad
aacf2bddd1 Use template parameter names in closer proximity to intended use. 2011-11-25 17:04:12 +01:00
Bård Skaflestad
905076c242 Implement extended interface required by ImplictTransport.
Specifically, implement (trivial) versions of pc(), s_min(), and s_max().
2011-11-25 17:02:34 +01:00
Bård Skaflestad
4235f64e07 Don't reference nonexistent header. 2011-11-25 17:01:13 +01:00
Ingeborg Ligaarden
9dbd4d7773 Merged changes. 2011-11-25 14:43:03 +01:00
Ingeborg Ligaarden
844c5b2b29 No functional changes. 2011-11-25 11:22:09 +01:00
Ingeborg Ligaarden
d999a8c259 Now works for periodic on geocell after changing f2hf-mapping on periodic boundary. 2011-11-23 18:04:57 +01:00
Ingeborg Ligaarden
c69f82368b Go to next step in linesearch if s< s_min or s > s_max. 2011-11-18 17:50:17 +01:00
Ingeborg Ligaarden
9dc4d190b6 Initialize increment to 0, it was 'nan' and therefore made linear solver return 'nan'. 2011-11-11 14:57:39 +01:00
Ingeborg Ligaarden
298280129c Gives the same jacobi and residual for geocell for fixed as r 8522 in MATLAB modulo different transmissiblity calculations for pcflux. 2011-11-11 10:21:24 +01:00
Bård Skaflestad
b812919e27 Remove std::array<>s that are not needed.
Discovered by: Kari B. Skjerve
2011-11-08 14:34:32 +01:00
Halvor M. Nilsen
17895db0ff fixed spu_2p.cpp after change of interface of implicit transport 2011-10-24 10:33:34 +02:00
Bård Skaflestad
420b14af05 Properly initialise the cell_facepos. 2011-10-24 10:01:13 +02:00
Halvor M. Nilsen
da045e561f seems to work after change to correct transmissibilities on periodic boundary 2011-10-21 08:51:37 +02:00
Halvor M. Nilsen
2acf1db8c7 compile after changes of calculation of transmissiblities 2011-10-20 17:26:08 +02:00
Halvor M. Nilsen
4750e17699 checking after introducing linesearch, do maybe work, but did not help our objektives 2011-10-18 15:08:30 +02:00
Halvor M. Nilsen
6ce89ee3c3 2011-10-17 11:36:54 +02:00
Halvor M. Nilsen
ff777eab69 probably a correction 2011-10-17 11:07:36 +02:00
Halvor M. Nilsen
1cd4352beb checkin after merge 2011-10-17 10:55:20 +02:00
Halvor M. Nilsen
77c36f647a checking after getting things to run, I do not trust the results 2011-10-14 16:46:09 +02:00
Bård Skaflestad
6442d3fda2 Don't reference (non-existent) Dune directories. Remove disabled code. 2011-10-13 19:38:33 +02:00
Halvor M. Nilsen
7ac7bdfbac moved dune definishins for dune to porsol/common 2011-10-13 13:52:38 +02:00
Halvor M. Nilsen
59d0181a31 something with substate after merge 2011-10-13 11:14:36 +02:00
Halvor M. Nilsen
0a1fc38fd0 checking after changing back to grid interface euler in traits and adding boundary conditions for fixed, the code finialy does something 2011-10-13 10:26:51 +02:00
Bård Skaflestad
8df4e23f92 Support compilers for which ::std::array<> isn't available. 2011-10-12 20:50:53 +02:00
Halvor M. Nilsen
27cecaabef changes the code compile: runs: and give wrong results 2011-10-12 16:10:51 +02:00
Halvor M. Nilsen
42e70c78d4 mearge from upstream 2011-10-12 13:23:20 +02:00
Halvor M. Nilsen
7c3c8ac3e7 changes to try to make upscaling work with implicit solver 2011-10-12 13:18:48 +02:00
Bård Skaflestad
2bc3a1d217 Remove <array> header that is no longer needed. 2011-10-11 21:17:22 +02:00
Bård Skaflestad
120153bb1f The individual sys.vector()s aren't necesserily std::vector<>s. Adjust.
While here, reduce dependency on c++11 by substituting ordinary arrays
for std::array<>s.
2011-10-11 18:00:49 +02:00
Halvor M. Nilsen
f5fa61eb13 definitions to use opmtransport in dune-upscaling 2011-10-11 14:55:11 +02:00
Halvor M. Nilsen
ee62a57dc7 added EulerUpstreamImplicit, added implicit traits: does notthing now 2011-10-11 11:42:40 +02:00
Bård Skaflestad
50a4869f7a Remove an unused variable. 2011-10-06 18:14:48 +02:00
Bård Skaflestad
ee43437183 Increase problem size, and report solver meta data upon completion. 2011-10-06 17:25:13 +02:00
Bård Skaflestad
c7efb7d775 Use 0.5 as an initial guess for the saturation at next time level.
This appears to be more stable in limited testing on slightly
non-linear problems.
2011-10-06 17:24:32 +02:00
Bård Skaflestad
da683da206 Add a simple saturation dump using vector_write() from OPMPressure. 2011-10-06 15:12:43 +02:00
Bård Skaflestad
c56215bdcd Use control parameters that don't lead to singular matrices. 2011-10-06 15:07:00 +02:00
Bård Skaflestad
b0e35ca07a Honour ImplicitTransport requirement introduced in cset af1c979d2947.
We need to define a coefficient matrix clearing operator.
2011-10-06 15:02:15 +02:00
Bård Skaflestad
b867283f05 Fill semantic hole in initIteration(). Store the current sat-change.
This is needed to implement the accumulation term of the residual.
2011-10-06 14:57:46 +02:00
Bård Skaflestad
255a0cf6ee Clear coefficient matrix and residual between assemblies.
Request that the user specify a suitable operator for clearing the
coefficient matrix, and call it just prior to assemble().
2011-10-06 14:54:02 +02:00
Bård Skaflestad
711e59df4c Insert glue for zeroing the coefficient matrix between Jacobian assemblies.
Specifically, request availability of a read/write access to the
Jacobian matrix, and a means to zeroing the elements of an arbitrary
matrix type (unimplemented 'MatrixZero' template class).
2011-10-06 14:51:51 +02:00
Bård Skaflestad
ff8518e55e Restore build assertion that is once more valid following cset dd4a755bc683.
Also, implement a function for zeroing a CSRMatrix, and create a
read/write reference to the underlying matrix.  Needed for clearing
the coefficient matrix between each Jacobian assembly.
2011-10-06 14:48:51 +02:00
Bård Skaflestad
7f766149b3 Order parameters correctly.
If the cell were a type other than a primitive 'int', this would have
been caught by the compiler...
2011-10-06 10:27:35 +02:00
Bård Skaflestad
a5220bcd29 Build entire system structure once, at createSystem() time.
This leads to two grid passes if the problem is linear, but saves
rebuilding the same structure at every Newton iteration.
2011-10-06 00:34:04 +02:00
Bård Skaflestad
230bc99cee Remove another incorrect assertion relating to system size. 2011-10-06 00:31:40 +02:00
Bård Skaflestad
4df2677024 Remove an incorrect assertion.
The statement is only correct during the very first grid pass whilst
constructing the matrix.  Source terms are added later, in arbitrary
order, and we cannot know (in assembleBlock) what (block) rows are
affected by such contributions.
2011-10-06 00:05:04 +02:00
Bård Skaflestad
72f81cf574 Hook 'examples' up to build. 2011-10-05 20:09:29 +02:00
Bård Skaflestad
5202631f34 Move to reference-storing rather than private inheritance model.
Fix various build problems while here.

Finally, add default Newton-control parameters to the NRControl structure.
2011-10-05 20:09:15 +02:00
Bård Skaflestad
72953ac126 Add an example program demonstrating the use of the ImplicitTransport solver.
Building contingent upon availability of both OPMPressure *and* UMFPACK.
2011-10-05 20:06:03 +02:00
Bård Skaflestad
b1f35c50b1 Add a POD representation of transport problem source terms. 2011-10-05 20:04:21 +02:00
Bård Skaflestad
8fa1eecce6 Import Jostein R. Natvig's implementation of a Cartesian grid. 2011-10-05 20:03:43 +02:00