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 113244 +10
===========================================
+ Hits 66668 66670 +2
- Misses 46566 46574 +8 ☔ 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 .
New baseline required for single phase fluid cases with well setting useSurfaceConditions="1"