Conversation
|
Should the fluid model interface should throw if being called when model is thermal ??? |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #3978 +/- ##
===========================================
- Coverage 58.87% 58.87% -0.01%
===========================================
Files 1356 1356
Lines 113234 113243 +9
===========================================
Hits 66668 66668
- Misses 46566 46575 +9 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
dkachuma
left a comment
There was a problem hiding this comment.
Looks good. The fact that the thermal fluid has the interface without the temperature is strange. I think we can adopt the multiphase approach that we will always call with the temperature. Remove the interface without the temperature from the fluid models and see what fails to compile.
| { | ||
| // use surface conditions | ||
| flashPressure = wellControls.getSurfacePressure(); | ||
| flashTemperature = wellControls.getSurfaceTemperature(); |
There was a problem hiding this comment.
Do we ensure that users supply this for single phase?
| { | ||
| // we need to compute the surface density | ||
| fluidWrapper.update( iwelemRef, 0, flashPressure ); | ||
| if constexpr ( IS_THERMAL ) |
There was a problem hiding this comment.
Since both fluid interfaces have the temperature dependent interface (the isothermal fluid simply ignores it), I would remove this branch and have a single call.
| real64 const refPres = pres[iwelemRef]; | ||
| fluidWrapper.update( iwelemRef, 0, refPres ); | ||
| real64 const refTemp = temp[iwelemRef]; | ||
| if constexpr ( IS_THERMAL ) |
There was a problem hiding this comment.
Similarly here. No need for the branch.
Well separator used for constraint properties did not supply temperature when calling flash