The moving-mesh tracking algorithm needs the cell-centres at the previous time-step. These were not originally stored by the polyMesh, so they were being generated on-the-fly. In some tracking-dominated cases this caused an unacceptable overhead. The polyMesh now stores the old-time cell-centres on demand. They are not stored by default (like the old-time points), so if they are needed then the accessor should be called before any mesh motion. Typically this will be during construction of whatever functionality requires it. See Cloud.C for an example. The logic for storage and update of the old-time points has also been improved to account for the possibility of the mesh motion coming to an end.
README for OpenFOAM-dev
- About OpenFOAM
- Copyright
- Download and installation instructions
- Documentation
- Source code documentation
- OpenFOAM C++ Style Guide
- Reporting bugs in OpenFOAM
- Contacting the OpenFOAM Foundation
#
About OpenFOAM
OpenFOAM is a free, open source computational fluid dynamics (CFD) software package released by the OpenFOAM Foundation. It has a large user base across most areas of engineering and science, from both commercial and academic organisations. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions, turbulence and heat transfer, to solid dynamics and electromagnetics.
Copyright
OpenFOAM is free software: you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation, either version 3 of the License, or (at your option) any later
version. See the file COPYING in this directory or
http://www.gnu.org/licenses/, for a description of the GNU General Public
License terms under which you can copy the files.