variableHeightFlowRateInletVelocity & dynamic meshes
Summary
A colleague (Bernardas Jankauskas) and I have been investigating a problem where variableHeightFlowRateInletVelocity doesn't seem to work with dynamic meshes. The problem has also been mentioned on CFD Online by another user.
Steps to reproduce
- Copy the
weirOverflowtutorial forinterFoam - Add a
constant/dynamicMeshDictfile - Add a
0.orig/pointDisplacementfile - Amend
system/fvSolutionto include a solver forcellDisplacement - Run without making any changes to the boundary condition (it crashes)
- Run after changing
valuein theinletboundary condition in0.orig/alpha.waterto0.000001(it doesn't crash)
Example case
What is the current bug behaviour?
Divide by zero on this line
What is the expected correct behavior?
It shouldn't divide by zero
Relevant logs
#0 Foam::error::printStack(Foam::Ostream&) at ??:?
#1 Foam::sigFpe::sigHandler(int) at ??:?
#2 ? in /lib64/libpthread.so.0
#3 Foam::variableHeightFlowRateInletVelocityFvPatchVectorField::updateCoeffs() at ??:?
#4 Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>::Boundary::evaluate() at ??:?
#5 Foam::dynamicMotionSolverFvMesh::update() at ??:?
#6 ? at ??:?
#7 __libc_start_main in /lib64/libc.so.6
#8 ? at ??:?
Environment information
- OpenFOAM version: v2112
Possible fixes
(alphap + VSMALL) but that wouldn't explain why it thinks alphap is zero only when a dynamic mesh is used?