Commit Graph
100 Commits
Author SHA1 Message Date
Kai Bao 1b3cee8088 using C++17 style for to reduce nesting level of for loop 2022-06-29 14:20:35 +02:00
Kai Bao ed78d8c99a adding a regression test for WSEGVALV 2022-06-29 14:04:23 +02:00
Kai Bao 64143cd417 when a valve is shut, the rate and pressure drop will be zero 2022-06-29 11:54:36 +02:00
Kai Bao 26a9582ece Merge pull request #3911 from GitPaean/fixing_numerical_aquifer_equil
Fixing equilibration when having numerical aquifers.
2022-05-26 22:09:32 +02:00
Kai Bao 15bf35ffe0 removing unused well_state0 in iterateWellEqWithControl
for MSW.
2022-05-18 10:18:35 +02:00
Kai Bao ed1c65bb86 increasing abs_tol for parallel regression for 3D_2AQU case
to make jenkins pass.
2022-05-10 11:05:03 +02:00
Kai Bao 78bd95c593 also update cellZSpan_ and cellZMinMax
when updating cell center depth due to numerical aquifer cells.
2022-05-05 15:01:09 +02:00
Kai Bao 57d8f1aa24 update primary variables in prepareTimeStep
it should not change running results.
2022-05-02 13:47:16 +02:00
Kai Bao 4a8f3932d6 Merge pull request #3902 from GitPaean/renaming
renaming function updateWellState to updatePrimaryVariablesNewton .
2022-04-29 13:58:15 +02:00
Kai Bao 7145ec32ee renaming function updateWellState
to updatePrimaryVariablesNewton

this should be a fallout during the well code refactoring
2022-04-29 12:55:54 +02:00
Kai Bao aa633ff98f reconstructing the if structure for has_energy
in StandardWell<TypeTag>::
    calculateSinglePerf()
2022-03-31 22:38:55 +02:00
Kai Bao 8e61733ec0 Merge pull request #3839 from GitPaean/fixing_scaling_rates
fixing the scaling of segment rates
2022-03-15 22:03:38 +01:00
Kai Bao e05a0b276e fixing the scaling of segment rates
when initial segment rate is zero.
2022-03-14 14:01:24 +01:00
Kai Bao 6394c89f77 Merge pull request #3835 from GitPaean/scaling_segment_pressure
using addition to update segment pressure when bhp is changed
2022-03-11 10:24:54 +01:00
Kai Bao 2c18d09ce1 fixing test_wellstate 2022-03-10 22:19:12 +01:00
Kai Bao ccfd4152d3 using addition to update segment pressure
when bhp is changed. It is much safer and more reasonable.

using multiplication is more likely to result in dramatic values.
2022-03-09 14:23:59 +01:00
Kai Bao 086b8aab7d only multisegment wells will alway inner iteration 2022-01-21 10:43:36 +01:00
Kai Bao 0000df18a4 always using inner iterations for testing purpose. 2022-01-21 10:43:36 +01:00
Kai Bao 913ad21733 return zero thp value for extremely small injection rate
it is a finding from one of the test case.
2022-01-18 10:12:20 +01:00
Kai Bao 2b9b6e5155 addressing reviewing comments for PR#3760 2022-01-10 11:33:11 +01:00
Kai Bao dec3100247 fixing a bug in funcion bisectBracket 2022-01-09 00:21:31 +01:00
Kai Bao 3b7e62979c refactoring to shorten the function computeBhpAtThpLimitProd
better readibility hopefully.
2022-01-07 15:49:48 +01:00
Kai Bao 5824acbf92 making bruteforce bracket as a function
for better readbility.
2022-01-07 15:13:33 +01:00
Kai Bao 3273f310e3 prototyping the brute force for bracketing bhp
to fix the situation the existing approach fails.
2022-01-07 14:32:16 +01:00
Kai Bao 148fb4a282 Merge pull request #3712 from totto82/fixAssertInStw
Fix assert in relaxation factor in std well
2021-12-06 11:09:08 +01:00
Kai Bao c2e18fd077 Merge pull request #3573 from totto82/crossFlowEcon
remove assert and handle opposite rates in wecon related fractions.
2021-11-15 15:31:05 +01:00
Kai Bao e7010ba6f4 removing --relaxed-max-pv-fraction for num aquifer tests 2021-11-12 14:32:10 +01:00
Kai Bao c85bc24f54 consindering the situation of single water phase for RateConverter 2021-08-05 00:13:13 +02:00
Kai Bao 5e74466aed Merge pull request #3445 from plgbrts/rateconvfixed
Rateconvfixed
2021-08-03 00:07:19 +02:00
Kai Bao 12fa7a4ac8 putting all the guide rate update function in one single function
to make sure we only do once checking of the expiration of the guide
rates.
2021-06-29 11:41:26 +02:00
Kai Bao b415cd4fb8 not comparing guideRate_ with nullptr
it is not a pointer anymore since OPM/opm-simulators#3380
2021-06-15 00:00:43 +02:00
Kai Bao 2d24abb630 removing numerical aquifer keywords from unsupported list
AQUNUM, AQUCON
2021-05-10 22:48:56 +02:00
Kai Bao 2ee51c2e0d fixing the serial running due to including of eclmpiserializer.hh 2021-04-21 15:59:26 +02:00
Kai Bao 06fa81f4e3 following interface change for processEcipseFormat 2021-04-20 11:27:15 +02:00
Kai Bao 9f360c5c6d fixing the mistakes due to rebasing 2021-04-14 13:16:30 +02:00
Kai Bao 06ec3d2420 fixing test_relpermdiagnostics test 2021-04-14 09:48:55 +02:00
Kai Bao 364187aa1a updating NNC after grid processing for parallel case
numerical aquifers might modify NNCs during grid processing, while it
only updates in the root process. Other processes need to be updated
too.
2021-04-14 09:47:57 +02:00
Kai Bao 6072cb20a2 only when both oil and gas exist, we handle drsdt and drvdt 2021-03-25 08:36:25 +01:00
Kai Bao 6061b5f5b0 updating the interface of function processEclipseFormat 2021-03-23 20:27:10 +01:00
Kai Bao 24d5d73009 cleaning up comments
There is no functional change.
2021-03-15 21:15:56 +01:00
Kai Bao 1bd7d8775a Merge remote-tracking branch 'upstream/master' into new_numerical_aquifer 2021-03-15 12:16:09 +01:00
Kai Bao 116b77bd8a addressing the reviewing comments for PR OPM/opm-simulators#3039
putting the numerical aquifer related modification in a function and the
function is called after the equilibration calculation, so it will work
for different equilibration methods.
2021-03-15 10:21:40 +01:00
Kai Bao afac0fb485 changing the parameters for the numerical aquifer regression tests
cpr linear solver is used for better convergence.
2021-03-12 23:39:01 +01:00
Kai Bao 9ecdca75d9 Merge remote-tracking branch 'upstream/master' into new_numerical_aquifer 2021-03-11 14:08:42 +01:00
Kai Bao 82521be152 adjusting the parameters for the numerical aquifer regression test 2021-03-11 11:43:34 +01:00
Kai Bao 347ca3978a adding parameter to control the min time step
can be reduced to based on the newton iteration counts.

By default it is zero, so it should not change any running results.
2021-03-10 11:49:59 +01:00
Kai Bao 0ad848658e Merge pull request #3099 from atgeirr/revive-using_porevolume_average
Fix hydrocarbon volume issue with no oil or gas
2021-03-09 12:15:06 +01:00
Kai Bao f9ead85435 Use pore volume to do the average when hydrocarbon is missing. 2021-03-05 14:49:15 +01:00
Kai Bao c0beb6e2ae using --tolerance-cnv=0.0001 for numerical aquifer regression test
and also coarse_rel_tol_parallel for parallel regression test.
2021-03-05 12:01:53 +01:00
Kai Bao 69619339a1 Merge branch 'master' into new_numerical_aquifer 2021-03-04 22:54:36 +01:00
Kai Bao 923f0ac0e0 adding --relaxed-max-pv-fraction=0 to numerical aquifer tests 2021-03-04 22:37:32 +01:00
Kai Bao f00b4d9aa8 Merge pull request #3059 from alfbr/fix-error
Do not report confusing error
2021-02-23 14:21:59 +01:00
Kai Bao d76251818f adding tests for numerical aquifers 2021-02-22 23:18:43 +01:00
Kai Bao 4c92f22677 for numerical aquifer, flux_rate_ should not be summed across processes
it will be taken care of in ecloutputblackoilmodule.hh

              aq.fluxRate += data.fluxRate;
              aq.volume += data.volume;
2021-02-22 23:15:26 +01:00
Kai Bao 867b769fcb only handling the interior elements for numerical aquifer 2021-02-22 23:15:26 +01:00
Kai Bao a43c45e6ff setting numerical aquifer cells water saturation to 1.0
was removed accidently during cleaning up
2021-02-22 23:15:26 +01:00
Kai Bao 5e408ad71b trying to make the numerical aquifer runs in parallel
the current approach is not necessarily correct. When aquifer cells are
on the overlap layers, things are much more complicated.

But it mostly affects only the summary output of the numerical aquifers.
The well data should be fine.
2021-02-22 23:15:26 +01:00
Kai Bao ab9b43249c using the water volume instead of pore volume
when calculating the nuemricla aquifer pressure.
2021-02-22 23:15:26 +01:00
Kai Bao 2b85e93ef6 some cleaning up
not functionality changes.
2021-02-22 23:15:26 +01:00
Kai Bao 524e63a255 adapting to the upstream interface change. 2021-02-22 23:15:26 +01:00
Kai Bao c1a61e3b72 fixing the numerical aquifer related after rebasing 2021-02-22 23:15:26 +01:00
Kai Bao a755b54afc rebasing and fixing the compilation.
The equilibration needs to be fixed for numerical aquifers.
2021-02-22 23:15:26 +01:00
Kai Bao 74f2fcd121 WIP in using pinched grid for numerical aquifer 2021-02-22 23:15:26 +01:00
Kai Bao b6fdb7cc8e using global index when accessing pore volume in numerical aquifer 2021-02-22 23:15:26 +01:00
Kai Bao 65bde5d65b making sure the aquifer cells have the correct cell volume
because AQUNUM can specify different cells volume, which is indepedent
of the grid coordinates.
2021-02-22 23:15:26 +01:00
Kai Bao c246dc6938 applying the face area when calculating the flux rate
For NNC is not needed, but some NNC is converted to some non-NNC, we
need the face area.
2021-02-22 23:15:26 +01:00
Kai Bao 8d7c3aa0ca getting numerical aquifer ready for summary output
it works well for some cases, while not the other one. More
investigation is ongoing.
2021-02-22 23:15:26 +01:00
Kai Bao 6008aa8339 begining simulator code for numerical aquifer
most of the functionality is to collect data for summary output.
2021-02-22 23:15:26 +01:00
Kai Bao ef67d9a9e7 using the specified pressure for numerical aquifer
NOT totally sure how to use this pressure value, do we need to consider
the capillary pressure?
2021-02-22 23:15:26 +01:00
Kai Bao 80c0073a69 set water saturations for numerical aquifer cells to be 1. 2021-02-22 23:15:26 +01:00
Kai Bao 1d5b60a600 using the depth specified by numerical aquifer
for numerical aquifer cells, instead of the depth calculated from the
grid geometry.
2021-02-22 23:15:26 +01:00
Kai Bao a18c1a15ab correcting the output of the number of threads 2021-02-03 14:02:56 +01:00
Kai Bao e77f8b2f7d Merge pull request #2997 from totto82/avoidDoubleCopy
dont copy the well model in computeWellPotentials
2021-01-28 11:45:41 +01:00
Kai Bao d8f8b9f0cc Merge pull request #3028 from totto82/quarryPerfLengthAndRadius
get connection length and radius from the connection object
2021-01-28 11:21:21 +01:00
Kai Bao a3004580e6 adapting to the directory change in opm-common related to aquifer 2021-01-08 23:18:41 +01:00
Kai Bao 00ca6dc492 putting all the pressure assmeble function to one function
assemblePressureEq for MSW
2021-01-08 16:46:32 +01:00
Kai Bao 2dc63b7a57 putting the three ICD assembleEq function to be one
to reduce the code duplication.
2021-01-08 15:09:27 +01:00
Kai Bao 286a7d2e5b Merge pull request #3002 from totto82/moveWellOpCheck
move well operability check for STW
2021-01-08 11:28:35 +01:00
Kai Bao 7ecb2e4813 Merge pull request #2866 from bska/activate-welpi-scaling
Initial Implementation of WELPI Feature
2020-12-04 20:44:42 +01:00
Kai Bao 61bebb2ec5 addressing reviewing comments for OPM/opm-simulators#2951 2020-12-03 15:23:14 +01:00
Kai Bao 3f5402fb5b adding running test for WSEGAICD 2020-12-03 15:23:14 +01:00
Kai Bao 6e8394eba6 supporting WSEGAICD 2020-12-03 15:23:14 +01:00
Kai Bao 69948f8469 Merge pull request #2960 from bska/refactor-wellptr-creation
Well Model: Add Helper for Well Pointer Creation
2020-12-02 20:33:16 +01:00
Kai Bao 64746e21bf Merge pull request #2826 from akva2/janitoring
fixed: make some indices constexpr
2020-10-06 11:21:40 +02:00
Kai Bao ed89f25d1b providing the aquifer data for summary output 2020-10-02 13:13:20 +02:00
Kai Bao 49eb111225 adapting to the interface change of SummaryConfig 2020-10-01 23:32:21 +02:00
Kai Bao fd3287cdd3 removing the duplication of calculateReservoirEquilibrium
in the aquifer models.
2020-09-24 16:09:56 +02:00
Kai Bao 91ec74dffc fixing the initialization of aquifer pressure for CT aquifer 2020-09-24 15:37:31 +02:00
Kai Bao 897fc77a1d Merge pull request #2791 from GitPaean/increasing_maxIter
increasing maxIter to 1000 for function satFromPc
2020-09-21 21:18:20 +02:00
Kai Bao 775793676c increasing maxIter to 1000 for function satFromPc
it is a temporary fix to make some parallel running easier. We need to
change it manually to make some parallel running pass.
2020-09-17 20:59:58 +02:00
Kai Bao 7b4142e9b6 adding timing for the well assembly
And changes the indentation of the linear solver setup time a little to
show it is part of the linear solve time.
2020-09-08 11:12:41 +02:00
Kai Bao d13e5ac8dd Merge pull request #2718 from blattms/reuse-umfpack-ms
Reuse umfpack decomposition for multisegment wells.
2020-08-20 11:33:59 +02:00
Kai Bao b88501bc7d Merge pull request #2711 from blattms/fix-unused-vars-wells
Remove unused variable groups from BlackoilWellModel::wellsToState.
2020-08-12 22:29:07 +02:00
Kai Bao 08b93424f3 setting UseInnerIterationsWells default to be false
and reducing default MaxInnerIterWells to be 50, which should not matter
much. We should try to reduce it further to something like 20, 10 later.
2020-08-11 09:46:23 +02:00
Kai Bao a38dc27bcb refactoring for iterateWellEquations 2020-08-11 09:10:19 +02:00
Kai Bao 11807747cb renaming solveWellEqUntilConverged to be iterateWellEquations 2020-08-11 09:10:19 +02:00
Kai Bao 23a9f4732b Merge pull request #2666 from atgeirr/msw-log-output-cleanup
Prettifying and reducing log output from MSW.
2020-06-10 19:44:01 +02:00
Kai Bao 93655244ce increasing the max iteration number for statFromPc
when doing the equilibration.
2020-04-30 12:12:58 +02:00
Kai Bao 954e5e769a addressing comments from OPM/opm-common#1695 2020-04-17 14:34:48 +02:00
Kai Bao 251c09a288 adding the several pressure drop values to WellState for MSW
segpress_ and segrates_ are renamed to help the name style.
2020-04-17 00:38:38 +02:00