-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Spalart Allmaras Test Failing #622
Comments
Looks like Input: [Variables] [./Velocity] names = 'u v' fe_family = 'LAGRANGE' order = 'FIRST' [../Pressure] names = 'p' fe_family = 'LAGRANGE' order = 'FIRST' [../TurbulentViscosity] names = 'nu' fe_family = 'LAGRANGE' order = 'FIRST' [] Program echo: EquationSystems n_systems()=1 System #0, "flow" Type "Implicit" Variables={ "u" "nutil" } Finite Element Types="LAGRANGE", "JACOBI_20_00" Infinite Element Mapping="CARTESIAN" Approximation Orders="FIRST", "THIRD" n_dofs()=662 n_local_dofs()=662 n_constrained_dofs()=0 n_local_constrained_dofs()=0 n_vectors()=2 n_matrices()=1 DofMap Sparsity Average On-Processor Bandwidth <= 9.96375 Average Off-Processor Bandwidth <= 0 Maximum On-Processor Bandwidth <= 10 Maximum Off-Processor Bandwidth <= 0 DofMap Constraints Number of DoF Constraints = 0 Number of Node Constraints = 0 |
Just to be clear, I'm not sure if this is a libMesh problem or a GRINS problem yet. Could be libMesh exposed a bad API usage or something. |
It's definitely at least a libMesh problem; at the very least we should be catching an error earlier and reporting it more informatively. So it's either a libMesh problem or a both problem, and I fear I know which of those Occam would pick... |
That is an astonishing bisect result, though. I can't see anything in that commit that I would expect to be remotely relevant. I'll try to replicate this weekend. |
Agreed, was a serious Whiskey Tango Foxtrot moment for me. I've reproduced it by hand though. Using 54021ccfb of libMesh and GRINS tests pass (assuming you have the fix for the GhostingFunctor::map_type as well). Using b663ec537 of libMesh and that one test fails. I do not know what is special about that test. We have plenty of others that should group together variables like this one. It's the only turbulence one, though, which is what makes me suspect this is a "both" problem. I'm on Ubuntu 20.04 and here's my modules environment: Currently Loaded Modules: 1) gcc/11.2.0 2) openblas/0.3.20 3) mpich/4.0.1 4) petsc/3.16.6-opt 5) hdf5/1.8.21 6) boost/1.66.0 7) vtk/9.1.0 8) cppunit/1.15.1 |
My comment about variables getting dropped was incorrect. That was the info from the EquationSystems used for projecting the boundary values. We're dying the in |
OK, it's something with the |
So for the |
And the variable groups are out-of-sync because |
Ohhhhh, that is sneaky. So here is what's going on, I'm not sure what the correct fix is. This seems to be a flaw with the Turbulence class hierarchy and possibly GRINS more generally. So The issue is that the call stack for this it initiated at I would argue that is not libMesh's fault and this has been broken on the GRINS side this entire time. Now to think about the proper fix. |
It seems to me we need a hook, |
git bisect
points at libMesh/libmesh#3407, specifically libMesh/libmesh@b663ec5375I haven't dug any deeper, at least wanted to capture the git bisect results.
The text was updated successfully, but these errors were encountered: