Commit Graph
100 Commits
Author SHA1 Message Date
Kai Bao a1cc880ad7 only calculating repesentative radius when having PLYSHLOG. 2016-06-28 15:50:50 +08:00
Kai Bao 9dbb908b04 adding a test for flow_multisegment
it is a 2D case with H__ pressure drop specification, and it takes about
2 second to run.
2016-06-28 15:50:50 +08:00
Kai Bao d2c822e37a only calculating repesentative radius when having PLYSHLOG. 2016-06-24 10:00:06 +02:00
Kai Bao d27524c3a7 adding a test for flow_multisegment
it is a 2D case with H__ pressure drop specification, and it takes about
2 second to run.
2016-06-21 14:43:11 +02:00
Kai Bao 0ebd25f66a fixing the compilation error due to rebasing. 2016-05-23 15:42:05 +02:00
Kai Bao d2d9bd8a80 moving depth difference calcualtion to init() for MultisegmentWells
instead of recalculating them for each iterations.
2016-05-23 15:11:52 +02:00
Kai Bao c2bdaa1b92 fixing the calculation of volumeRatio.
due to the wrong use of parenthesis.
2016-05-23 15:11:52 +02:00
Kai Bao 879f127ae8 moving variableStateExtractWellsVars() from models to Well Models. 2016-05-23 15:11:52 +02:00
Kai Bao fbe7143f54 using WellModel functions in BlackoilPolymerModel.
reducing some repeated code.
2016-05-23 15:11:52 +02:00
Kai Bao 846ff890de refactoring the interface of computeWellPotentials()
to reduce the cost of makeConstantState when not calculating the
potentials.
2016-05-23 15:11:52 +02:00
Kai Bao 19a256dce0 some pure cleaning up. 2016-05-23 15:11:52 +02:00
Kai Bao f2b7f2a56c moving numWellVars from models to Wells. 2016-05-23 15:11:52 +02:00
Kai Bao b3d1c0eabc initializing the pointers to be nullptr in the Wells classes 2016-05-23 15:11:52 +02:00
Kai Bao 4527034f29 removing variableStateInitials() from BlackoilMultiSegmentModel
which is not helpful anymore.
2016-05-23 15:11:52 +02:00
Kai Bao a102e934ac removing baseSolveWellEq from BlackoilMultiSegmentModel
to solve the different interfaces of computeWellConnectionPressures for
StandardWells and MultisegmentWells, a function
computeWellConnectionPressures was introduced for the models.
2016-05-23 15:11:52 +02:00
Kai Bao 01328559e2 removing the updateWellState from the models. 2016-05-23 15:11:52 +02:00
Kai Bao 4e8099057e small cleaning up for BlackoilMultiSegmentModel_impl 2016-05-23 15:11:51 +02:00
Kai Bao fcd541a1c1 removing the rebundant ms_wells_ in BlackoilMultiSegmentModel 2016-05-23 15:11:51 +02:00
Kai Bao 184bff95ba using well_model_ to represent the WellModel member 2016-05-23 15:11:51 +02:00
Kai Bao 06775ee02c Make BlackoilMultisegmentModel constructured from MultisegmentWells
Instead of being coustructed based StandardWells and having a
MultisegmentWells member.
2016-05-23 15:11:51 +02:00
Kai Bao 4254b48b57 unifying interface of a few functions of Wells classes
updateWellControls()
updateWellState()
addWellControlEq()

The change of function computeWellConnectionPressures() is not done
completely. Should find a solution later.
2016-05-23 15:11:51 +02:00
Kai Bao be165a26e0 adding a few more members to the Wells classes.
gravity, vfp_properties_ and depth_.

to further simplify the interfaces.
2016-05-23 15:11:51 +02:00
Kai Bao 50385013fe adding variableWellStateInitials to MultisegmentWells 2016-05-23 15:11:51 +02:00
Kai Bao 7886e4b9d2 adding computeWellConnectionPressures to MultisegmentWells 2016-05-23 15:11:51 +02:00
Kai Bao b4f4878901 fixing the errors from rebasing. 2016-05-23 15:11:51 +02:00
Kai Bao 60fb868727 adding updatePerfPhaseRatesAndPressures to MultisegmentWells 2016-05-23 15:11:51 +02:00
Kai Bao 508de4dc37 adding extractWellPerfProperties to MultisegmentWells
removing extractWellPerfProperties in all the model classes.
2016-05-23 15:11:51 +02:00
Kai Bao 718ba5470b adding const Wells* wells_ for MultisegmentWells
for interface refactoring.
At the moment, both wells_ and wells_multisegment_ contain all the
wells.
2016-05-23 15:11:51 +02:00
Kai Bao 4180fea951 refactoring the construcor of MultisegmentWells
MultisegmentWells is initialized with Wells structure.
2016-05-23 15:11:51 +02:00
Kai Bao 7d0d50eb53 changing reservoir related members to pointers for MultisegmentWells 2016-05-23 15:11:51 +02:00
Kai Bao 66cd66e61b change reservoir related members to be pointers in StandardWells
to fullfil the requirement of interface design.
2016-05-23 15:11:51 +02:00
Kai Bao 89a8f133fd adding variableWellStateIndices to MultisegmentWells
to remove the using of stdWells() in BlackoilMultiSegmentModel
The code is copied from StandardWells, better solution need to be
exploited.
2016-05-23 15:11:50 +02:00
Kai Bao a8742a9348 introduce perforation densities and pressdiffs to MultisegmentWells
to reduce dependence on StandardWells.
2016-05-23 15:11:50 +02:00
Kai Bao 25fbd20acf adding a few member variables for MultisegmentWells
and reduce the number of parameters of the related functions by using
the new introduced member variables.
2016-05-23 15:11:50 +02:00
Kai Bao bd03eff5a5 making two functions in StandardWells protected.
computePropertiesForWellConnectionPressures
computeWellConnectionDensitesPressures
2016-05-23 15:11:50 +02:00
Kai Bao 1f2442fe80 reducing paramter list for more functions in StandardWells
computeWellFlux
updateWellState
updateWellControls
addWellControlEq
computeWellPotentials
2016-05-23 15:11:50 +02:00
Kai Bao a35c3e7468 removing parameters for extractWellPerfProperties 2016-05-23 15:11:50 +02:00
Kai Bao 75c64b67d1 fixing the compilation from the rebase. 2016-05-23 15:11:50 +02:00
Kai Bao 0667fceb35 reducing the number of arguments of computeWellConnectionPressures
and computeWellConnectionDensitesPressures.

These functions need to be renamed.
2016-05-23 15:11:50 +02:00
Kai Bao 18a530f9be removing paramters in computePropertiesForWellConnectionPressures 2016-05-23 15:11:50 +02:00
Kai Bao 22b5157bf2 adding a few fluid related members to StandardWells
to reduce the number of the public function arguments.
2016-05-23 15:11:50 +02:00
Kai Bao 6f2a0c47a2 fixing application of rs and rv to the volumeRatio calculation.
the use of parenthesis is wrong according to Cramer's rule
2016-05-20 14:52:24 +02:00
Kai Bao f5fcbb03b5 adding test_multisegmentwells 2016-05-09 10:33:53 +02:00
Kai Bao 28e65283d9 initializing top_well_segments_ when constructing MultisegmentWells
not wait until BlackoilMultiSegmentModel.
2016-05-09 10:33:53 +02:00
Kai Bao 9bdf1d5b93 removing unhelpful public functions in MultisegmentWells 2016-05-09 10:33:53 +02:00
Kai Bao edf29c322c adding several wells related _impl.hpp files to CMakeLists_files
StandardWells_impl.hpp
MultisegmentWells_impl.hpp
StandardWellsSolvent_impl.hpp
2016-05-09 10:33:53 +02:00
Kai Bao f8a6ae4f8c adding num_phases_ to MultisegmentWells
and removing all the np in the argument of the public methods.
2016-05-09 10:33:53 +02:00
Kai Bao 40baf3b720 moving updateWellControls to MultisegmentWells 2016-05-09 10:33:53 +02:00
Kai Bao 868efa97a0 moving addWellControlEq to MultisegmentWells 2016-05-09 10:33:53 +02:00
Kai Bao 5ba53a7a39 moving addWellFluxEq to MultisegmentWells 2016-05-09 10:33:53 +02:00
Kai Bao 89117c0294 moving computeSegmentPressuresDelta to MultisegmentWells 2016-05-09 10:33:53 +02:00
Kai Bao 580ac7df6b moving computeSegmentFluidProperties to MultisegmentWells 2016-05-09 10:33:53 +02:00
Kai Bao 944ebec4c0 moving computeWellFlux to MultisegmentWells 2016-05-09 10:33:53 +02:00
Kai Bao 484c48e0fe moving onlyWellDerivs() to MultisegmentWells
it is only used for MultisegmentWells
2016-05-09 10:33:53 +02:00
Kai Bao ec3b50d092 adding updateWellState to MultisegmentWells 2016-05-09 10:33:53 +02:00
Kai Bao 15ff16efd2 removing multi-segment member variables from BlackoilMultiSegmentModel 2016-05-09 10:33:53 +02:00
Kai Bao a07843a896 adding the member variables to MultisegmentWells
and ther public interfaces. Probably the mutable interfaces can be
removed after moving the functions to the Wells class.
2016-05-09 10:33:53 +02:00
Kai Bao 05e164b609 adding number of segment and performation to MultisegmentWells 2016-05-09 10:33:52 +02:00
Kai Bao f319514581 using the MultisegmentWells class in BlackoilMultiSegmentModel 2016-05-09 10:33:52 +02:00
Kai Bao aa6065a70c introducing a new class MultisegmentWells
which will handle the multi-segment wells related.
2016-05-09 10:33:52 +02:00
Kai Bao 8236a32aee sliencing a few shadowing warnings. 2016-05-06 17:59:00 +02:00
Kai Bao 08e691e262 moving variableWellStateInitials to StandardWells. 2016-04-29 10:07:10 +02:00
Kai Bao 15380fd370 moving variableWellStateIndices to StandardWells
Probably it is the time to introduce SeqQs and SeqP for the
multi-segment wells.
2016-04-29 10:07:10 +02:00
Kai Bao e7d00f4f99 adding variableStateWellIndices to StandardWells
to handle different types of variables later for different types of
wells.
2016-04-29 10:07:10 +02:00
Kai Bao b87920e5e4 moving computeWellPotentials to StandardWells 2016-04-29 10:07:10 +02:00
Kai Bao 13acc8ee03 moving computeWellConnectionPressures to StandardWells
the results look okay, while the running for flow_solvent needs further
investigation even the results with flow_solvent actually look okay.

With two different version of
computePropertiesForWellConnectionPressures, flow_solvent produces the
same results. This is something needs further investigation.

The current implementation requires a copy of
computeWellConnectionPressure in StandardWells and StandardWellsSolvent.
That means probably we need to introduce the asImpl() for the Wells.
2016-04-29 10:07:10 +02:00
Kai Bao dcca0b0b76 moving addWellControlEq to StandardWells 2016-04-29 10:07:10 +02:00
Kai Bao eb278c3c9a moving addWellFluxEq() to StandardWells
Conflicts:
	opm/autodiff/BlackoilModelBase_impl.hpp
2016-04-29 10:07:10 +02:00
Kai Bao 9afadffea9 fixing flow_polymer running cases without polymer. 2016-04-21 12:59:11 +02:00
Kai Bao cc79dff708 adding the has_solvent_ flag to StandardWellsSolvent
flow_solvent is able to run cases without solvent.
2016-04-21 11:17:39 +02:00
Kai Bao be55efa484 fixing the compilation and running resulting from PR648 2016-04-20 14:42:56 +02:00
Kai Bao e67e31171d adding one line comment for WellModel in BlackoilModelBase 2016-04-20 14:26:13 +02:00
Kai Bao 350a38164e fixing the compilation and running of flow_multisegment 2016-04-20 14:26:13 +02:00
Kai Bao a72f04a564 fixing the compilation and running of flow_polymer 2016-04-20 14:26:13 +02:00
Kai Bao b82e917b0d improving the initSolvent in StandardWellsSolvent 2016-04-20 14:26:13 +02:00
Kai Bao ebe60bc5d7 puting WellModel before Implementation in the template. 2016-04-20 14:26:13 +02:00
Kai Bao 5bce482086 fixing the compilation and running of flow_solvent 2016-04-20 14:26:13 +02:00
Kai Bao b464e4fb4a adding WellModel as template class for BlackoilModelBase
the compilation and running of flow are recovered.

Conflicts:
	opm/autodiff/BlackoilModelBase_impl.hpp
2016-04-20 14:26:13 +02:00
Kai Bao adb140a788 fixing the running of flow_multisegment 2016-04-14 16:05:19 +02:00
Kai Bao 75b73a893e putting Vector and ADB to be inside StandardWells and wellhelpers 2016-04-14 16:05:19 +02:00
Kai Bao 14d774e08f removing blank lines in CMakeLists_files
Not sure how the lines happened, probably from the rebase process.
2016-04-14 16:05:19 +02:00
Kai Bao 19734f2103 adding extractWellPerfProperties to StandardWellsSolvent
to fix the flow_solvent running.
2016-04-14 16:05:19 +02:00
Kai Bao 5da57973fe adding updateWellState and updateWellControls to StandardWells 2016-04-14 16:05:18 +02:00
Kai Bao 376c940f09 moving updatePerfPhaseRatesAndPressures to StandardWells 2016-04-14 16:05:18 +02:00
Kai Bao c398a6e424 puting computeWellFlux in StandardWells 2016-04-14 16:05:18 +02:00
Kai Bao e9e1b9fda8 adding extractWellPerfProperties to StandardWells
It causes problem for the flow_multisegment. So the version in
BlackoilModelBase is kept for now.

On the other hand, it is few of functions that will be both required by
the standard wells and multisegment wells.

Some decision will be made later on how to put this function.
2016-04-14 16:05:18 +02:00
Kai Bao c8b66821d5 adding computeWellConnectionDensitesPressures to StandardWells class. 2016-04-14 16:05:18 +02:00
Kai Bao 5d99fac207 adding StandardWellsSolvent for Solvent model. 2016-04-14 16:05:18 +02:00
Kai Bao bca23d34c1 making StandardWells non-templated
we will focus on template functions instead.
2016-04-14 16:05:18 +02:00
Kai Bao 266f6f2df5 adding computePropertiesForWellConnectionPressures to StandardWells
tested with flow. Not sure how other flow siblings work.
2016-04-14 16:05:18 +02:00
Kai Bao 3bcfc905bd makding StandardWells a template based on SolutionState and WellState
may need to be adjusted later.
2016-04-14 16:05:18 +02:00
Kai Bao c120313f09 renaming visc parameters to mu_w for better readability 2016-04-14 15:09:03 +02:00
Kai Bao 104f6053f1 removing blank spaces and replacing the tab with spaces by retab 2016-04-14 14:57:26 +02:00
Kai Bao 30774d8309 correcting buggy visc pointer usage in effective viscosity calculation 2016-04-14 14:52:00 +02:00
Kai Bao 666f91505d using effective polymer viscosity for polymer mobility calculation. 2016-04-14 13:45:21 +02:00
Kai Bao 23ba5fa398 removing the StandardWells definition inside BlackoilModelBase
and some other tiny cleaning up.
2016-04-07 10:45:13 +02:00
Kai Bao 624516ed3c creating separate files for class StandardWells 2016-04-06 16:42:04 +02:00
Kai Bao 84cc1ed81d correcting the determination of wells_active_. 2016-04-06 14:36:51 +02:00
Kai Bao 2bd83aae73 making the constructors of WellOps and StandardWells explicit. 2016-04-06 14:10:17 +02:00
Kai Bao 9972dae32a updating for the comments.
implement wells(), localWellsActive() and wellsActive() for the
BlackoilModelBase and its derived classed.
2016-04-06 12:54:01 +02:00