Joakim Hove
43f42ab7d7
Merge pull request #3162 from totto82/addSwitchEvent
...
Use the event for swithing between producer and injector
2021-04-23 08:17:47 +02:00
Tor Harald Sandve
93ac6e8283
Merge pull request #3165 from joakim-hove/wellstate-split
...
Wellstate split
2021-04-22 12:28:33 +02:00
Markus Blatt
824df60e94
Merge pull request #3150 from Tongdongq/always_print_prec_info
...
Always print CHOW_PATEL info if used
2021-04-21 19:51:22 +02:00
Tor Harald Sandve
3445f2e03a
Merge pull request #3168 from joakim-hove/simplify-global-is-grup
...
Simplify global is grup
2021-04-21 14:49:13 +02:00
Joakim Hove
7fecd9f433
Create new class GroupState to maintain runtime state of groups
2021-04-21 13:07:57 +02:00
Joakim Hove
c8db0d1090
Assign number of phases in WellState constructor
2021-04-21 13:07:57 +02:00
Joakim Hove
7131647362
Use Well.insert_index() instead of maintaining extra counter
2021-04-21 10:34:57 +02:00
Joakim Hove
ed2fb11084
Avoid superfluos code to reset globalIsProductionGrup to false
2021-04-21 09:04:55 +02:00
Atgeirr Flø Rasmussen
fc8d17c04e
Merge pull request #3164 from totto82/fixNOgrp
...
honour group available for higher controll
2021-04-20 11:13:27 +02:00
Tor Harald Sandve
352e40d109
honour group available for higher controll
2021-04-19 14:34:38 +02:00
Arne Morten Kvarving
b9c19958fb
fixed: mark possibly unused variables as such to quell warnings
...
also take chance to break an extremely long line
2021-04-19 09:49:20 +02:00
Markus Blatt
8fe9314104
Merge pull request #3148 from totto82/gliftmpi2
...
make gaslift parallel
2021-04-19 08:30:14 +02:00
Tor Harald Sandve
090b75425f
Use switch event
2021-04-16 13:38:56 +02:00
Tor Harald Sandve
e69b097ac5
fix for distributed wells
2021-04-15 14:00:28 +02:00
Markus Blatt
13f62a718b
Merge pull request #2998 from g-marchiori/fpgasolver-integration
...
Added fpgaSolver, requires Xilinx Alveo U280 FPGA board
2021-04-15 11:21:39 +02:00
Tor Harald Sandve
ebcaea3faa
get bhp from thp without solving
2021-04-14 15:58:58 +02:00
Tor Harald Sandve
9d56588906
Make gaslift parallel
2021-04-14 14:14:39 +02:00
Bård Skaflestad
481c72a0fc
Merge pull request #3156 from joakim-hove/well-init-restart-bug
...
Well init restart bug
2021-04-14 09:10:30 +02:00
Joakim Hove
289e0ea938
Handle closed connections when loading connection data from restart
2021-04-14 07:59:55 +02:00
Joakim Hove
7d825ba9d0
Rename function wellToState -> loadRestartData
2021-04-13 21:02:36 +02:00
Alf Birger Rustad
a7f7c1af72
Removed four supported keywords
2021-04-13 09:53:15 +02:00
Peter Verveer
1640c4afcf
Implement a new keyword validator
2021-04-12 16:47:02 +02:00
Joakim Hove
e1fe527719
Change output to indicate start of time step
2021-04-10 13:37:12 +02:00
Tong Dong Qiu
5466b0f5f2
Always print CHOW_PATEL info if used
2021-04-09 16:19:45 +02:00
Atgeirr Flø Rasmussen
c6431c2f04
Merge pull request #3042 from totto82/changeDefaultMinTimeStepShutting
...
change default MinTimeStepBeforeShuttingProblematicWellsInDays to 0.01
2021-04-07 08:04:05 +02:00
Håkon Hægland
61e67b143d
Adds a simple test case for gas lift.
...
Adds a simple test case for gas lift optimization. Currently this is
very simplistic and only covers a fraction of the gas lift optimization
code. The plan is to use this as a building block to add more tests
in the future.
2021-04-01 16:41:46 +02:00
Håkon Hægland
24c419913a
Update to use new API for accessing well state.
...
Use access function to get a handle to the well state object according
to PR #3140 .
2021-03-30 17:10:09 +02:00
Håkon Hægland
ff3c7f2afb
Try to silence a warning about an unused variable.
...
Added some more debug code, and initialized some boolean variables.
The jenkins build gives a warning about that '"alq_is_limited" may be
used uninitialized', though the warning is generated in another file
(GasLiftWellState.hpp, line #44 ) it could be (?) caused by the fact that
"alq_is_limited" might not be initialized before calling the constructor
in GasLiftSingleWell_impl.hpp line #963..
2021-03-30 15:42:33 +02:00
Håkon Hægland
a80ad54d7d
Parallel runs not supported yet.
...
Gives a warning if gas lift optimization is attempted for more than one
process in the MPI communicator. The plan is to implement support for
muliple processes in a later commit.
2021-03-30 15:42:33 +02:00
Håkon Hægland
231f5374d7
Fixed some typos introduced in previous commit.
...
Some conflicts in the previous rebase was unfortunately not resolved
correctly. This commit corrects those errors.
2021-03-30 15:42:33 +02:00
Håkon Hægland
60c5fab82d
Fix unused variable warnings.
2021-03-30 15:41:46 +02:00
Håkon Hægland
cd85943352
Fix some warnings.
2021-03-30 15:41:46 +02:00
Håkon Hægland
434640fdf5
Implements gas lift optimization for groups.
...
Extends PR #2824 to include support for GLIFTOPT (item 2, maximum lift
gas supply for a group) and group production constraints.
The optimization is split into two phases. First the wells are optimized
separately (as in PR #2824 ). In this phase LIFTOPT and WLIFTOPT constraints
(e.g. maxmimum lift gas injection for a well, minimum economic gradient) are
considered together with well production constraints.
Then, in the next phase the wells are optimized in groups. Here, the ALQ
distribution from the first phase is used as a starting point. If a group
has any production rate constraints, and/or a limit on its total rate of
lift gas supply, lift gas is redistributed to the wells that gain the most
benefit from it by considering which wells that currently has the largest
weighted incremental gradient (i.e. increase in oil rate compared to
increase in ALQ).
2021-03-30 15:41:46 +02:00
Joakim Hove
98f6a9a7ac
Update collection of wells after ACTIONX
2021-03-29 16:20:10 +02:00
Joakim Hove
5fe43c09cb
Implement updateEclWell() as an internal function in wellPI code
2021-03-29 16:20:10 +02:00
Joakim Hove
90a9ed49a2
Add function WellState::updateStatus()
2021-03-29 16:20:10 +02:00
Joakim Hove
43925ae4f2
Explicily assign CMODE_UNDEFINED when controls vector is resized
2021-03-29 16:20:10 +02:00
Joakim Hove
405b9d2244
Add accessor functions to maintain WellState objects in well model
2021-03-29 15:30:32 +02:00
Joakim Hove
3d226abd24
Remove references to RestartConfig
2021-03-26 08:03:07 +01:00
Bård Skaflestad
7503cfd76a
Address PR Review Comments
2021-03-24 23:13:50 +01:00
Bård Skaflestad
578fa4b6c3
Report Dimensionless Time and Pressure for CT Aquifers
...
This commit adds support for calculating and reporting the
dimensionless time (simulator time divided by aquifer's time
constant) and pressure (influence function evaluated at
dimensionless time) values as part of the Carter-Tracy aquifer's
'aquiferData()' reporting function.
These values are useful in their own right, e.g., for summary output
through the keywords AAQTD and AAQPD, but they are also needed for
ECLIPSE restart purposes.
2021-03-24 23:13:50 +01:00
Bård Skaflestad
c23ce16879
Merge pull request #3120 from totto82/refactorBAVG
...
only compute Bavg once pr timestep
2021-03-24 11:34:13 +01:00
Bård Skaflestad
f980ff5f77
Merge pull request #3128 from totto82/fixTarget
...
reset target from wconprod and wconinje
2021-03-23 23:59:27 +01:00
Bård Skaflestad
41fd301d16
Merge pull request #3131 from fgfuchs/global_time_fix
...
fix bug that sets global_time to 0
2021-03-23 15:51:47 +01:00
Tor Harald Sandve
8283b53f3b
only compute Bavg once pr timestep and use the stored variable instead of passing it around
2021-03-23 15:30:36 +01:00
Franz Georg Fuchs
b86d5e2ad0
fix bug that sets global_time to 0
2021-03-23 12:19:07 +01:00
Tor Harald Sandve
3a65a7ba22
reset target from wconprod and wconinje
2021-03-23 09:23:35 +01:00
Tor Harald Sandve
8882b8027a
Merge pull request #3115 from totto82/onlyComputeGuideRateOnce
...
only compute guiderates at the beginning of a timestep
2021-03-23 08:43:47 +01:00
Joakim Hove
44eb07e621
Don't Initialize Well State for Shut Wells
2021-03-20 20:33:28 +01:00
Joakim Hove
4fd5d52f2f
Retrieve Number of Connections from Well Map
2021-03-20 20:33:28 +01:00
Joakim Hove
f0c738ea34
Reflect Well Object's Status Flag in Well State
2021-03-20 20:33:28 +01:00
Joakim Hove
e2d75b608b
Rename well filter -> not_on_process_()
2021-03-20 20:33:28 +01:00
Joakim Hove
9662d4019e
Use enum Well::Status to indicate well status instead of bool
2021-03-20 20:33:28 +01:00
Joakim Hove
634f0d61d8
Deferred logger will throw "correct" exception
2021-03-19 14:05:55 +01:00
Tor Harald Sandve
78d351676f
only update guide rates at the beginning of a timestep
2021-03-19 11:09:14 +01:00
Bård Skaflestad
2b34dc843c
Merge pull request #3119 from totto82/mintimestep
...
Change minimum timestep size to 1e-12
2021-03-19 09:39:35 +01:00
Bård Skaflestad
b982ad0fd2
Record Dynamic Well Status in 'wellData()' Output
...
This commit sets the 'data::Well::dynamicStatus' based on the
dynamically updated 'Schedule' object (i.e., from ACTIONX and
similar) and the results of well/operability testing (WECON and/or
WTEST). If a well is closed due to economic limits (WECON) we still
provide summary-style data at the timestep that closed the well, but
omit this data at later steps until the well reopens.
We add a new parameter to WellState::report() to distinguish these
situations.
This is in preparation of making the 'BlackoilWellModel' manage both
open and shut wells alike.
2021-03-18 17:28:28 +01:00
Bård Skaflestad
65edfb702c
Preparations for Recording Dynamic Well State
...
Coalesce blocks with same conditions, split long lines, and apply
'const' where appropriate. While here, also tighten the "rate = 0"
criterion to include denormalised numbers.
2021-03-18 17:28:28 +01:00
Joakim Hove
cd7c4d9927
Merge pull request #3112 from totto82/refact_ginj
...
Add support for explicit guiderate for injection groups
2021-03-18 17:03:53 +01:00
Tor Harald Sandve
61de5689bd
cleanup: add and remove comments
2021-03-18 14:56:45 +01:00
Tor Harald Sandve
58fa3eaf31
replace asserts with OPM_DEFLOG_THROW
2021-03-18 11:58:05 +01:00
Tor Harald Sandve
1582d92d06
Change minimum timestep size to 1e-12
...
the unit is days for field and metric and hours for lab
the purpose is to shut down "dead" simulations
2021-03-18 10:45:26 +01:00
Bård Skaflestad
0667497108
Merge pull request #3039 from GitPaean/new_numerical_aquifer
...
New numerical aquifer
2021-03-16 16:30:53 +01:00
Tor Harald Sandve
6bac5da27c
adapt to changes in the guiderate interface
2021-03-16 15:56:31 +01:00
Tor Harald Sandve
f4ac7f555b
Add support for explicit guiderate for injection groups
...
With this commit the guiderate logic used for the production groups is also used for injectors
This allows for setting guiderates explicit at different group levels
Only RATE, NETV and VOID guiderate type is suppored.
2021-03-16 15:56:31 +01:00
Tor Harald Sandve
c29b61ff99
Merge pull request #3074 from plgbrts/thermaloutput
...
Temperature output for producers
2021-03-15 13:54:18 +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
Joakim Hove
8adea8c68a
Merge pull request #3102 from totto82/validControls2
...
make sure wells has valid controls
2021-03-15 09:43:22 +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
Tong Dong Qiu
8ea19c66aa
Reduced code duplication in BdaBridge
2021-03-12 11:15:02 +01:00
Tong Dong Qiu
81c0a3d9f9
Simplified CPU fallback warnings
2021-03-12 11:15:02 +01:00
Giacomo Marchiori
b4aa28771f
Added fpgaSolver
2021-03-12 11:14:59 +01:00
Kai Bao
9ecdca75d9
Merge remote-tracking branch 'upstream/master' into new_numerical_aquifer
2021-03-11 14:08:42 +01:00
Franz Georg Fuchs
d13cf3ee6a
fix ordering of first line in *INFOSTEP files
2021-03-11 11:22:58 +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
Joakim Hove
7e59532944
Merge pull request #3104 from joakim-hove/summary-config-rm-tables
...
Remove TableManager argument when constructing SummaryConfig
2021-03-10 07:33:06 +01:00
Tor Harald Sandve
8ad00e60f9
Merge pull request #3096 from totto82/weconPOTN
...
add support for POTN in WECON
2021-03-09 13:51:14 +01:00
Tor Harald Sandve
858856adec
update solution for WAG injectors
2021-03-09 13:37:03 +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
Arne Morten Kvarving
e179bb5850
quell uninitialized usage warning without mpi
2021-03-09 08:39:17 +01:00
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