amr-wind icon indicating copy to clipboard operation
amr-wind copied to clipboard

Mass inflow input requirements are inconsistent

Open mbkuhn opened this issue 1 month ago • 1 comments

Bug description

When using mass_inflow as a boundary condition, the velocity values at that boundary are not required (because queryarr is used), but the scalar values are required (because getarr is used). See links below. This leads to a confusing situation when boundary planes are used, because temperature input values are required even though they will be overwritten by boundary planes. It also means that the velocity values could be accidentally left off an input file for simulation where they are needed (e.g. not with boundary planes, and without a UDF specified).

https://github.com/Exawind/amr-wind/blob/main/amr-wind/boundary_conditions/BCInterface.cpp#L279

https://github.com/Exawind/amr-wind/blob/main/amr-wind/boundary_conditions/BCInterface.cpp#L369

Steps to reproduce

This behavior is seen in any of the _input regression tests, where a temperature value is required as an input for domain boundaries that will have temperature supplied through the boundary planes.

Expected behavior

Ideally, the boundary fills (like boundary planes and MPL) would be smart enough to indicate when certain variables are already covered by the fill routine, and a constant is not needed as an input. E.g. if boundary plane input is on, and temperature is one of the variables, then the temperature input line will not be required (and a warning would arise if it was included), but if it isn't one of the variables, then the temperature input line would be required.

mbkuhn avatar Dec 31 '24 16:12 mbkuhn