Commit Graph

2230 Commits

Author SHA1 Message Date
Joakim Hove
46ae5fa577
Merge pull request #3105 from joakim-hove/output-interval
Pass ouput interval overeride to Schedule constructor
2021-03-09 07:25:50 +01:00
Joakim Hove
ec344d555d Pass ouput interval overeride to Schedule constructor 2021-03-08 19:30:58 +01:00
Markus Blatt
3ec181e231
Merge pull request #3089 from Tongdongq/exact-ilu-decomp-gpu
Exact ilu decomp gpu
2021-03-08 17:25:04 +01:00
Joakim Hove
253205d63e Remove TableManager argument when constructing SummaryConfig 2021-03-08 15:40:17 +01:00
Paul Egberts
646dafe78f introduced computeWellTemperature() to be called at each timestep 2021-03-08 15:11:50 +01:00
Joakim Hove
9597a4be37
Merge pull request #3101 from joakim-hove/summary-config-fp
Add FieldProps argument to SummaryConfig constructor
2021-03-08 12:25:25 +01:00
Tor Harald Sandve
a098d76c19 fix issue when switching from injection to/from production 2021-03-08 11:13:34 +01:00
Tor Harald Sandve
f861188d60 make sure wells has valid controls 2021-03-08 08:44:55 +01:00
Joakim Hove
1563525e8d Add FieldProps argument to SummaryConfig constructor 2021-03-08 08:18:50 +01:00
Joakim Hove
9ad5d69744 Utilize private restartconfig 2021-03-07 09:31:10 +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
69619339a1 Merge branch 'master' into new_numerical_aquifer 2021-03-04 22:54:36 +01:00
Bård Skaflestad
4ed085ddc3
Merge pull request #3073 from joakim-hove/timemap-api
Remove timemap member from Schedule
2021-03-03 18:17:27 +01:00
Tong Dong Qiu
87e3f1d72d Added timers to ChowPatelIlu 2021-03-03 17:12:46 +01:00
Tong Dong Qiu
b87e9dad9a Updated comments 2021-03-03 16:36:27 +01:00
Tong Dong Qiu
0caae966b8 Add more waiting for opencl functions, using shortened opencl kernel params in WellContributions 2021-03-03 14:04:06 +01:00
Tong Dong Qiu
688d8ff627 Shorten opencl kernel params, add source file for openclKernels 2021-03-03 13:09:24 +01:00
Tong Dong Qiu
61bf85bf24 Add waiting for enqueueWriteBuffer 2021-03-03 10:37:01 +01:00
Tor Harald Sandve
4f55c25607 add support for POTN in WECON 2021-03-03 10:31:57 +01:00
Tor Harald Sandve
00e65e88b2
Merge pull request #3095 from blattms/apply-gefac-also-on-topmost-group
Apply gefac also on topmost VREP controlled group
2021-03-03 10:03:31 +01:00
Tong Dong Qiu
18bf7c4b19 Replace diagfinding with std::find 2021-03-03 09:50:33 +01:00
Bård Skaflestad
d78f5dc259
Merge pull request #3083 from totto82/fixMPIThrow
Fix MPI issues in the well model
2021-03-02 12:04:39 +01:00
Markus Blatt
d1f65451f1 Honor top most group efficiency factor in checkGroupConstraints{Inj,Prod} 2021-03-02 11:32:27 +01:00
Markus Blatt
0d2b9629b0 Document efficiencyFactor in checkGroupConstraints{Inj,Prod}
Reading recursion is quite hard and a comment might help others.
2021-03-02 11:31:04 +01:00
Bård Skaflestad
a2a9ed192d
Merge pull request #3084 from totto82/onlyLogOnRank0
only log changes of group controls on rank 0
2021-03-01 22:10:05 +01:00
Markus Blatt
39546864ab Honor GEFAC of topmost group when summing solvent rates. 2021-03-01 11:16:29 +01:00
Markus Blatt
6e8b1e8d2e Honor gefac of topmost group in WellHelpers::updateGuideRateForGroups 2021-03-01 11:16:29 +01:00
Markus Blatt
1d9f13e310 Honor GEFAC for the top most group when calculating well phase rates.
Previously GEFAC was not applied here.
2021-03-01 11:15:57 +01:00
Tong Dong Qiu
5b4deab7e4 Generating opencl kernels 2021-03-01 10:26:44 +01:00
Markus Blatt
1ce5c59851 Honor GEFAC for top group in get{Injection,Production}Controls. 2021-03-01 10:26:40 +01:00
Tong Dong Qiu
141af23db5 Exact ILU decomp is now performed on GPU 2021-03-01 10:26:35 +01:00
Tong Dong Qiu
748dc4ccb3 Reduced header inclusion, also moved WellContributions OpenCL initialization 2021-03-01 09:42:56 +01:00
Joakim Hove
81ec44822b Make sure ParallellFieldPropsManager::porv() return compact values 2021-02-28 15:47:59 +01:00
Tor Harald Sandve
09ff71ae31 only log changes of group controls on rank 0 2021-02-26 14:16:38 +01:00
Joakim Hove
74ca0d12e0 Use std::chrono::system_clock with 1/1000 second resolution 2021-02-25 23:50:25 +01:00
Joakim Hove
6f15765f53 Use Schedule time functions - avoid TimeMap 2021-02-25 18:10:22 +01:00
Tor Harald Sandve
1627e421d7 communicate group data before well testing 2021-02-25 11:08:55 +01:00
Tor Harald Sandve
c23094b299 make another throw tread safe 2021-02-24 15:54:02 +01:00
Atgeirr Flø Rasmussen
831f1db872
Merge pull request #3078 from fgfuchs/json_file_does_not_exist
throw specific error if json file does not exist
2021-02-24 14:13:14 +01:00
Franz Georg Fuchs
17126ba229 throw specific error if json file does not exist 2021-02-24 11:31:36 +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
Alf Birger Rustad
034dab84f9 Messages sent to debug file 2021-02-23 12:17:51 +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
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
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
b6fdb7cc8e using global index when accessing pore volume in numerical aquifer 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
Paul Egberts
59b6e21cc3 fixed num_perf_this_well declaration 2021-02-22 21:39:34 +01:00
Paul Egberts
42f426c7fd rebasing thermaloutput 2021-02-22 18:47:13 +01:00
Paul Egberts
3ff3d549ed temperature output as weighted sum of well block temperatures based on specific heat capacity of the phases 2021-02-22 18:41:25 +01:00
Tor Harald Sandve
38a394dcc2 change default MinTimeStepBeforeShuttingProblematicWellsInDays to 0.01 2021-02-19 09:12:36 +01:00
Joakim Hove
ff51c2d7ee Handle WELLPI keyword in ACTIONX
When an ACTIONX has evaluated to True we inspect the keyword payload and if it
contains WELPI we query the well model for current wellpi values and pass that
along as context to the Schedule::applyAction()
2021-02-18 16:53:50 +01:00
Joakim Hove
d65cb22e69
Merge pull request #3066 from joakim-hove/vfp-warnings
Use class based enums for VFP flow types
2021-02-16 13:37:57 +01:00
Joakim Hove
abf48b0782 Remove multiplier in aquifer connected area 2021-02-16 10:02:36 +01:00
Joakim Hove
d2e6d80265 Improve warning when invalid values are encountered in VFP 2021-02-16 07:48:59 +01:00
Joakim Hove
471a19e851 Pass table argument to getGFR() and getWFR() 2021-02-15 22:36:51 +01:00
Joakim Hove
fda1d65494 Pass table argument to VFP getFLo() 2021-02-15 22:21:56 +01:00
Joakim Hove
6383f3c1ac Use class based enums for VFP flow types 2021-02-15 19:17:39 +01:00
Joakim Hove
27b4dabd6a
Merge pull request #3063 from joakim-hove/aquconn-default
Aquifer connected cell area - unconditional access to double
2021-02-15 09:20:10 +01:00
Joakim Hove
b7f3a07939 Aquifer connected cell area - unconditional access to double 2021-02-14 20:47:22 +01:00
Joakim Hove
99a61e120b Implement BlackoilWellModel::hasWell() method 2021-02-13 10:37:45 +01:00
Joakim Hove
0299af26ed Extract method wellPI() from existing lambda implementation 2021-02-12 11:49:04 +01:00
Alf Birger Rustad
8fce439f13 One more message 2021-02-12 10:39:04 +01:00
Alf Birger Rustad
40800da0a8 Do not report confusing error 2021-02-11 23:48:30 +01:00
Bård Skaflestad
4f112e443f
Merge pull request #3055 from joakim-hove/wellpi-update-connections
Extract functionality to update ecl_well
2021-02-10 21:15:20 +01:00
Joakim Hove
89eb6e5659 Extract functionality to update ecl wells to separate function 2021-02-10 15:17:36 +01:00
Markus Blatt
00df3d06c2 Allow usage of non-gpu devices with OpenCL.
This is needed to use the CPU backend of PoCL http://portablecl.org/
which seems handy for debugging.
2021-02-09 10:45:19 +01:00
Markus Blatt
7862f7d56d
Merge pull request #2991 from Tongdongq/fgpilu_cpu_gpu
Added CPU and GPU implementations of Fine-Grained Parallel ILU (FGPILU)
2021-02-09 10:35:12 +01:00
Joakim Hove
d9f29945aa Pass unscaled newWellPI to Schedule::applyWellProdIndexScaling() 2021-02-05 12:53:00 +01:00
tqiu
c8dca99fad Renamed fgpilu to ChowPatelIlu 2021-02-03 17:43:54 +01:00
Kai Bao
a18c1a15ab correcting the output of the number of threads 2021-02-03 14:02:56 +01:00
Markus Blatt
0238a80b02
Merge pull request #3032 from blattms/test-spe9-distributed-wells
Support external loadbalancers in EclCpGridVanguard
2021-02-02 11:21:40 +01:00
Markus Blatt
67fc95c340
Merge pull request #3029 from blattms/activate-distributed-wells
Activate distributed wells in the simulator
2021-02-02 09:40:08 +01:00
tqiu
a64a342104 Added symmetry check in Debug mode 2021-02-01 11:19:38 +01:00
Bård Skaflestad
76c59978b6 Reset Non-Linear Iteration Count Before 'beginTimeStep'
While here, also fix a couple of misprints in a nearby comment.
2021-01-29 12:30:34 +01:00
Markus Blatt
1af403c45d
Merge pull request #3037 from totto82/resetIter
reset the iteration count in the newtonSolver
2021-01-29 08:33:17 +01:00
Tor Harald Sandve
d3ea5a67ea reset the iteration count in the newtonSolver 2021-01-29 07:59:56 +01:00
tqiu
363cc31316 Made waiting for a GPUcopy more explicit 2021-01-28 15:40:10 +01:00
Arne Morten Kvarving
9b74b5dfac changed: this is known on compile time
use info to disable code
2021-01-28 14:33:56 +01:00
tqiu
d222dffcfd Improved initial guess of L 2021-01-28 13:46:01 +01:00
Arne Morten Kvarving
77692c1f99 quell unused parameter warning 2021-01-28 12:52:19 +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
Markus Blatt
2d23b01da8 Restrict property/type tag changes to eclbasevanguar.hh 2021-01-27 14:41:10 +01:00
Bård Skaflestad
27a11508ae
Merge pull request #3031 from totto82/relperm_diag
Removing explicit usage of the Grid in the relperm diagnostics
2021-01-27 09:18:16 +01:00
tqiu
837a83fc16 Added error checking and std::call_once 2021-01-26 17:32:18 +01:00
tqiu
1e09b1f4d9 Added comments and rewrote if 2021-01-26 15:42:38 +01:00
Tor Harald Sandve
c145722798 pass CartesianIndexMapper instead of the grid to the RelpermDiagnositics 2021-01-26 14:59:36 +01:00
Joakim Hove
358620120e
Merge pull request #3027 from joakim-hove/vfp-ref-wrapper
Use std::reference_wrapper<> instead of pointers for VFP tables
2021-01-26 11:07:42 +01:00
Bård Skaflestad
7684f22073
Merge pull request #3000 from totto82/substituteSolveWellEq
substitute solveWellEq with inner iterations and initial solve
2021-01-26 09:59:37 +01:00
Joakim Hove
e4789d4eb7 Use std::reference_wrapper for VFP tables 2021-01-26 07:56:59 +01:00
Markus Blatt
f464d93f15 Activate distributed standard wells.
We introduce a new parameter --enable-distributed-wells=<true|false>
for this. During startup we check that the model either only has
standard wells or that multisegement wells are actively interpreted
as standard wells (by way of passing --enable-multisegment-wells=false
as an option).
2021-01-25 15:05:24 +01:00
Tor Harald Sandve
9277b2edee get connection length and radius from the connection object 2021-01-25 14:08:59 +01:00
Bård Skaflestad
f8e4346e6d Ensure Well Defined Initial Values for CT Data Members 2021-01-22 09:04:08 +01:00
Atgeirr Flø Rasmussen
18a8d78f02
Merge pull request #3008 from GitPaean/cleaningup_after_aicd_pr
refactoring the pressure assemble equations for ICD
2021-01-22 08:26:16 +01:00
Tor Harald Sandve
91ab0f4d93 fix phase index for WELLPI for MSW 2021-01-21 11:58:24 +01:00
Tor Harald Sandve
036a021c63 fix well model for gasoil thermal 2021-01-21 11:37:25 +01:00
tqiu
dba20adf04 Bugfix: extra swap was done on odd number of sweeps 2021-01-20 11:00:30 +01:00
Tor Harald Sandve
36ba423d42 Add guard around solve well equation. 2021-01-20 08:46:58 +01:00
tqiu
48ebef7808 Updated comments 2021-01-19 11:06:39 +01:00
tqiu
123e3fa89e Use std::find and added comments 2021-01-18 17:10:46 +01:00
Tor Harald Sandve
62e485cbea adapt to changes in the schedule class 2021-01-18 15:12:17 +01:00
Tor Harald Sandve
b6fe8cbd77 only update individual wells after solve eq 2021-01-18 15:12:17 +01:00
Tor Harald Sandve
27bea2fa4f Solve well equation for the first iteration 2021-01-18 15:12:17 +01:00
Tor Harald Sandve
fbcd230eb2 substitute solveWellEq with one inner solve for newly opened wells 2021-01-18 15:12:17 +01:00
tqiu
a8e524fc9d Minor C to C++ changes 2021-01-18 14:11:07 +01:00
Atgeirr Flø Rasmussen
3a0dbdc6e7
Merge pull request #2993 from blattms/stdwell-comm-rebase-split-cont-clean
Final fixes to make distributed wells work for Norne.
2021-01-15 15:42:45 +01:00
Joakim Hove
17fcdfc87a Use ScheduleState to handle VFP propertes + simplifications 2021-01-14 19:22:34 +01:00
tqiu
0f9ae3695d Made reordering optional for WellContributions
Removed unnecessary alloc
2021-01-13 12:34:56 +01:00
Joakim Hove
5b129a3304 Use ScheduleState to manage network properties 2021-01-13 00:58:03 +01:00
Joakim Hove
b32f3f7546 Manage GConSale and GConSump with ScheduleState object 2021-01-12 18:29:59 +01:00
tqiu
f26e58c6ca Reordering is now actually skipped when NONE is chosen.
Also made reordering optional for openclSolver.
2021-01-12 15:25:47 +01:00
tqiu
71692ff52b Disabled FGPILU by default 2021-01-12 15:21:19 +01:00
tqiu
9f92a69037 Added CPU and GPU implementations of Fine-Grained Parallel ILU (FGPILU) 2021-01-12 15:21:19 +01:00
Joakim Hove
c1a1bf8683 Use ScheduleState to manage well test configuration 2021-01-12 14:08:41 +01:00
Joakim Hove
914bbeca82 Fetch messagelimits from ScheduleState 2021-01-12 07:44:10 +01:00
Joakim Hove
237eb2b7ee Fetch events from ScheduleState 2021-01-11 17:42:30 +01:00
Joakim Hove
8983b8d532
Merge pull request #3009 from GitPaean/moving_aquifer_folder
adapting to the directory change in opm-common related to aquifer
2021-01-09 10:35:03 +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
Joakim Hove
c6f0ea3ae2
Merge pull request #3004 from joakim-hove/nupcol
Use ScheduleState to access nupcol
2021-01-07 15:48:49 +01:00
Joakim Hove
a8be103173
Merge pull request #3005 from joakim-hove/sched-tuning
Access tuning class from ScheduleState
2021-01-07 07:49:29 +01:00
Joakim Hove
fe788cdb05 Access tuning class from ScheduleState 2021-01-06 16:26:13 +01:00
Joakim Hove
c1e10d81ba Use ScheduleState to access nupcol 2021-01-06 15:10:05 +01:00
Tor Harald Sandve
5ee75c45e3 move well operability check for STW 2021-01-05 15:10:40 +01:00
Joakim Hove
f5653af392 Output typeid(T).name() for types without packing support 2021-01-05 12:00:46 +01:00
Joakim Hove
fff19a2cf3 Serialize std::chrono::system_clock::time_point through std::time_t 2021-01-03 10:30:51 +01:00
Markus Blatt
c037bd762d
Merge pull request #2990 from atgeirr/testing-precfactory-operators
Only add AMG preconditioners to factory if sensible.
2020-12-22 09:52:53 +01:00
Tor Harald Sandve
967f99500c dont copy the well model in computeWellPotentials 2020-12-22 09:25:56 +01:00
Atgeirr Flø Rasmussen
02f93984f3
Merge pull request #2995 from totto82/stopfix
don't shut stopped wells
2020-12-21 15:51:36 +01:00
Bård Skaflestad
a657f2371a
Merge pull request #2996 from totto82/outputStoppedWells
output stopped wells
2020-12-21 15:22:25 +01:00
Tor Harald Sandve
33e3102983 output stopped wells 2020-12-21 13:51:21 +01:00
Arne Morten Kvarving
b812088519 further avoidance of overlap cells 2020-12-21 12:54:34 +01:00
Arne Morten Kvarving
faa04b5c4d changed: put initializeConnections in base aquifer class 2020-12-21 12:54:34 +01:00
Arne Morten Kvarving
4cdb3e85c0 make initializeConnection similar in aquifer classes 2020-12-21 12:54:34 +01:00
Arne Morten Kvarving
5f844bc3a4 fixed: no reason to calculate this inside the loop 2020-12-21 12:54:34 +01:00
Arne Morten Kvarving
86d7666e5c enable aquifers in parallel 2020-12-21 12:54:34 +01:00
Arne Morten Kvarving
fa90bc0709 add some parallel reductions in aquifer code 2020-12-21 12:54:34 +01:00
Arne Morten Kvarving
91336f30e7 fixed: do not process aquifers attached to overlap cells 2020-12-21 12:02:54 +01:00
Tor Harald Sandve
bcdf6c8d02 don't shut stopped wells 2020-12-21 09:25:57 +01:00
Bård Skaflestad
eb4aabc71a
Merge pull request #2986 from totto82/scalePot
Initial well rates with the well potentials and scale the segment rates
2020-12-18 23:03:37 +01:00
Markus Blatt
ef6c953e0f [bugfix] Fix partial sum
the total number of entries gathered was computed wrong, and we wrote
out ouf memory.
2020-12-18 14:48:19 +01:00
Markus Blatt
5b943761d7 Fixes StandardWell::computeConnectionDensities.
This computation is serial and needs a complete representation
of data attached to all preforations (even those stored on
another process). This commit uses the newly created factory to
correctly compute the connection densities for distributed wells.
2020-12-18 14:48:19 +01:00
Markus Blatt
69fd6495c0 Added factory to construct the global representation of perf data.
Some of our computations are heavily serial and need a complete
representation of the data attached to all perforation no matter
whether a perforation lives on the local partition or not. This commit
adds a factory that allows to easily create such a representaion and
helps writing data back to the local representation.
2020-12-18 14:48:19 +01:00
Markus Blatt
53b51eeba7 Use int as global index type in IndexSet
That is what seems to be used by ECL schedule, too.
2020-12-18 14:48:19 +01:00
Markus Blatt
4dff6fb168 Fixes StandardWell::updateProductivityIndex for distributed wells. 2020-12-18 14:48:19 +01:00
Markus Blatt
12f5a6aaff Fixes StandardWell::allDrawDownWrongDirection for distributed wells. 2020-12-18 14:48:19 +01:00
Markus Blatt
ba1feadb63 Added missing parallel reduction to computeCurrentWellRates.
This is supposed to be summation over values at all perforations.
Hence, it needs a parallel sum.
2020-12-18 14:48:19 +01:00
Markus Blatt
fc4a7fa3c1 Fixes StandardWell::updateIPR for distributed wells.
Of course the summation needs to be over all perforations of the
wells, no matter where they reside. Hence we need communication.
2020-12-18 14:48:19 +01:00
Markus Blatt
c09797355d Sum well rates in computeWellRatesWithBhp for distributed wells.
This needs summation over all procs that share the well as it needs
information from all perforations. Some of them might reside on other
processes.
2020-12-18 14:48:19 +01:00
Alf Birger Rustad
673328a4e1 Remove WSEGAICD from missing features 2020-12-18 11:23:26 +01:00
Atgeirr Flø Rasmussen
d910d42f6e Only add AMG preconditioners to factory if sensible.
Also add test using a new operator class, that would not compile
without the change.
2020-12-17 14:54:59 +01:00
Tor Harald Sandve
273538e1f4 some cleanup 2020-12-16 12:58:17 +01:00
Tor Harald Sandve
30ce605713 use the old initSegmentRates when opening up wells 2020-12-15 15:15:59 +01:00
Atgeirr Flø Rasmussen
81419aa001
Merge pull request #2975 from totto82/dunify_aquifers
Dunify aquifers
2020-12-15 09:46:21 +01:00
Tor Harald Sandve
d027205c34 Initial well rates with the well potentials and scale the segment rates
Initialize the well rates with well potentials when computing rates from bhp or bhp(thp)
The bhp was already initialized.

Scale the segment rates and pressure to adapt to changes in well rate and bhp

Improves convergence of the well potential calculations
2020-12-15 08:39:22 +01:00
Joakim Hove
ab143d15c7 Make sure well is open before copying MSW well state from previous 2020-12-14 09:01:42 +01:00
Joakim Hove
aa345a36f1 Fetch connpos and number of perforations from WellInfo for MSW wells 2020-12-14 09:01:37 +01:00
Markus Blatt
065e2f34f1 Do not include config.h in header (not even in *_impl.hpp)
I was getting warnings about redefined definitions (e.g. HAVE_PARMETIS).
2020-12-11 17:53:24 +01:00
Markus Blatt
924bf5ed19 Use old style traits class approach to check for face tag support.
Old version failed due to a gcc compiler
bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77446 with error:
"non-constant condition for static assertion"
2020-12-11 17:39:55 +01:00
Joakim Hove
cd19e987cf
Merge pull request #2981 from joakim-hove/skip-prev-closed-well
Skip previously shut wells in WellState init
2020-12-11 17:01:46 +01:00
Markus Blatt
9097907857
Merge pull request #2983 from blattms/stdwell-comm-works-on-spe9-2
use random access to simplify code at second occasion
2020-12-11 17:00:07 +01:00
Tor Harald Sandve
7a42a82c55 add check for gridType 2020-12-11 15:33:25 +01:00
Markus Blatt
fa83ed2fdc use random access to simplify code at second occasion 2020-12-11 14:25:56 +01:00
Markus Blatt
354ae1f319
Merge pull request #2976 from blattms/stdwell-comm-works-on-spe9
Make distributed standard well work on SPE9.
2020-12-11 13:43:03 +01:00
Tor Harald Sandve
e09eff6063
Merge pull request #2979 from totto82/prepostreport
Add report for pre/post time
2020-12-11 13:38:58 +01:00
Tor Harald Sandve
6cf91e7f19 Get compressed to cartesian mapping and depths from the vanguard 2020-12-11 12:48:01 +01:00
Tor Harald Sandve
8a0fde9104 dunify the aquifer models 2020-12-11 12:48:01 +01:00
Markus Blatt
b4ed86313e use random access to simplify code during partial_sum of dist wells 2020-12-11 11:24:51 +01:00
Markus Blatt
02bab0957d
Merge pull request #2982 from totto82/fixPot
move the try-catch inside the compute potential loop
2020-12-11 11:24:21 +01:00
Tor Harald Sandve
2deee380f9 move the try-catch inside the compute potential loop 2020-12-11 08:26:52 +01:00
Joakim Hove
8c17172f08 Skip previously shut wells in WellState init 2020-12-10 16:41:10 +01:00
Tor Harald Sandve
6b7c0e630a report pre/post time 2020-12-10 13:40:41 +01:00
Atgeirr Flø Rasmussen
2673af7db5
Merge pull request #2978 from joakim-hove/use-well-status
Use enum Well::Status for well status in WellState
2020-12-10 12:43:40 +01:00
Markus Blatt
c0c1897ea9 Fix computeConnectionPressureDelta for distributed wells.
As this is as sequential (ordering matters!) as it can get we need to
communicate all perforations, do the partial sum with them and save
result back to the local perforations.
2020-12-10 11:32:52 +01:00
Markus Blatt
35218bf042 Added possibility to communicate values from perforations below. 2020-12-10 11:06:28 +01:00
Markus Blatt
3c66b729e1 Fixes perf rate initialization for distributed wells. 2020-12-10 11:06:28 +01:00
Joakim Hove
f5f3d8a98e Introduce WellState::stopWell() 2020-12-10 09:54:37 +01:00
Atgeirr Flø Rasmussen
6e87ec6266
Merge pull request #2955 from blattms/stdwell-comm-rebase-split-pwell-info
Last part of current distributed standard wells.
2020-12-10 08:56:00 +01:00
Joakim Hove
bd3fa0af88 Use enum Well::Status for well status in WellState 2020-12-10 08:11:19 +01:00
Bård Skaflestad
a9e739d0a2
Merge pull request #2977 from joakim-hove/connpos
Change access to connpos to use WellMap instead of index counting
2020-12-09 20:50:03 +01:00
Joakim Hove
e4303c6784 Change access to connpos to use WellMap instead of index counting 2020-12-09 16:49:10 +01:00
Bård Skaflestad
b83f8f0397
Merge pull request #2949 from totto82/msw_operability2
Check operability for MSW
2020-12-09 15:06:21 +01:00
Markus Blatt
1d9d04161d Use std::partial_sum to calculate displacements. 2020-12-09 12:30:48 +01:00
Markus Blatt
b97385c963 Fix and move changes to commented code to code to WellGroupHlper.hpp 2020-12-09 12:29:56 +01:00
Tor Harald Sandve
73439070f7
Merge pull request #2963 from totto82/extbo_conv
add convergence check for extended blackoil model
2020-12-09 08:51:11 +01:00
Atgeirr Flø Rasmussen
f6353535c9
Merge pull request #2973 from blattms/include-config.h
[bugfix] Include config.h in WellGroupHelpers.cpp
2020-12-09 07:36:33 +01:00
Markus Blatt
4f93b2b7c6 Include config.h in WellGroupHelpers.cpp
as should be done in all cpp files.
2020-12-08 21:21:02 +01:00
Atgeirr Flø Rasmussen
6a376b3212
Merge pull request #2922 from atgeirr/make-new-well-rate-init-default
Make --alternative-well-rate-init=true the default.
2020-12-08 16:25:12 +01:00
Tor Harald Sandve
21fd76ccf6 add convergence check for extended blackoil model 2020-12-08 13:09:58 +01:00
Tor Harald Sandve
ba8d2068ea pass trivial B_avg to init method in wellPI calculation 2020-12-08 12:51:25 +01:00
Tor Harald Sandve
5fb73c9714 Only check well operability for wells under THP and BHP limits 2020-12-08 12:38:25 +01:00