forked from OPM/opm-models
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update adjoint ewoms code #1
Merged
hnil
merged 32 commits into
hnil:merge_master_rebase_adjoint
from
atgeirr:update-adjoint-alternative
Jan 21, 2019
Merged
Update adjoint ewoms code #1
hnil
merged 32 commits into
hnil:merge_master_rebase_adjoint
from
atgeirr:update-adjoint-alternative
Jan 21, 2019
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add support for the Multz option ALL in PINCH
Add ErrorGuard argument when parsing
since OPM/opm-material#310 has been merged, data for deactivated phases is not stored anymore and can thus no longer be accessed/set. this fixes OPM/opm-simulators#1686
ebos: fix explicit initialization for twophase cases
adapt to rename of XYTabulated2DFunction to IntervalTabulated2DFunction
the flags which I used are ``` -pedantic \ -Wall \ -Wextra \ -Wformat-nonliteral \ -Wcast-align -Wpointer-arith \ -Wmissing-declarations \ -Wcast-qual \ -Wshadow -Wwrite-strings \ -Wchar-subscripts \ -Wredundant-decls \ -fstrict-overflow \ -O3 \ -march=native \ -DNDEBUG=1 ``` note that some heavy filtering is not the worst idea because DUNE is far from not emiting any warnings with these flags. Also, there were some pesky warnings in test_ecl_output which I don't know how to fix: ``` tests/test_ecl_output.cc:218:73: warning: missing initializer for member ‘Opm::data::Connection::effective_Kh’ [-Wmissing-field-initializers] ```
fix some masochistic compiler warnings for the GCC 9 pre-release
this calculates the error and convergence differently from the standard Newton method.
albeit, we scale the error only to the cube root of the pore volume. the rationale is that the same amount of mass can get lost "along" a line for each timestep. maybe it would be a good idea to do something like this for time step size as well because taking multiple small time steps currently allows a much larger error in the result than doing it in one big step.
also, tweak them a bit: increase the sum tolerance before scaling to 1e-3 and reduce the default number of strict iterations to 4.
…by a parameter the parameter is called `EclNewtonSumToleranceExponent`. if it is set to 1, the specified tolerance will be used directly. (this is not desireable in the general case though, because at the same result quality, the sum error for large reservoirs can be larger than for small ones.)
Strict parsing
ebos: introduce an EclNewtonMethod
In particular: - "wc -w" will have spaces in the output on BSD, - "python" defaults to python 3, so we must explicitly invoke python2.
Make runtest.sh also work on BSD/macOS.
…/ewoms into hnil-merge_master_rebase_adjoint
This makes the code compile also when the local Evaluation type is double.
For adjoint backwards run, this logic is wrong. Flow provides its own timesteps anyway, so disabling it for Flow allows all existing ewoms tests to succeed, while allowing adjoint runs.
hnil
approved these changes
Jan 21, 2019
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.