- Sep 22, 2017
-
-
Updated the tetrahedron and triangle classes to use the barycentric primitives. Removed duplicate code for generating random positions in tets and tris, and fixed bug in tri random position.
-
now possible with level-sets as well as planes. Removed tetPoints class as this wasn't really used anywhere except for the old tet-cutting routines. Restored tetPointRef.H to be consistent with other primitive shapes. Re-wrote tet-overlap mapping in terms of the new cutting.
-
terms of the local barycentric coordinates of the current tetrahedron, rather than the global coordinate system. Barycentric tracking works on any mesh, irrespective of mesh quality. Particles do not get "lost", and tracking does not require ad-hoc "corrections" or "rescues" to function robustly, because the calculation of particle-face intersections is unambiguous and reproducible, even at small angles of incidence. Each particle position is defined by topology (i.e. the decomposed tet cell it is in) and geometry (i.e. where it is in the cell). No search operations are needed on restart or reconstruct, unlike when particle positions are stored in the global coordinate system. The particle positions file now contains particles' local coordinates and topology, rather than the global coordinates and cell. This change to the output format is not backwards compatible. Existing cases with Lagrangian data will not restart, but they will still run from time zero without any modification. This change was necessary in order to guarantee that the loaded particle is valid, and therefore fundamentally prevent "loss" and "search-failure" type bugs (e.g., 2517, 2442, 2286, 1836, 1461, 1341, 1097). The tracking functions have also been converted to function in terms of displacement, rather than end position. This helps remove floating point error issues, particularly towards the end of a tracking step. Wall bounded streamlines have been removed. The implementation proved incompatible with the new tracking algorithm. ParaView has a surface LIC plugin which provides equivalent, or better, functionality. Additionally, bug report <https://bugs.openfoam.org/view.php?id=2517> is resolved by this change.
-
- Sep 18, 2017
-
-
mattijs authored
Note that now mirrorMesh does not delete empty patches anymore.
-
- Sep 15, 2017
-
-
Mark OLESEN authored
-
- Sep 12, 2017
-
-
Mark OLESEN authored
- Can occur if the selected geometry does not actually exist. A non-critical bug since paraview catches this anyhow and just emits a warning message.
-
Mark OLESEN authored
- previous only checked for clouds at the last instance and only detected lagrangian fields from the first cloud. Now check for clouds at all instances and detect all of their fields as well.
-
Mark OLESEN authored
- relocate as Test-surfaceMeshConvert.
-
- Sep 11, 2017
-
-
Mark OLESEN authored
- surfaceFeatureExtract * dictionary "scale" entry - triSurface - triSurfaceLoader * optional scaleFactor on reading - surfaceAdd - surfaceBooleanFeatures - surfaceClean - surfaceCoarsen * scale option - surfaceTransformPoints, transformPoints * scale option as scalar or vector quantity
-
- Sep 08, 2017
-
-
sergio authored
-
- Sep 07, 2017
- Sep 06, 2017
-
-
mattijs authored
-
- Aug 31, 2017
-
-
Prashant Sonakar authored
-
- Aug 28, 2017
-
-
Prashant Sonakar authored
-
- Aug 18, 2017
-
-
Prashant Sonakar authored
fixes #560
-
- Aug 14, 2017
-
-
Mark OLESEN authored
- assists when building simple hand-rolled parsers. Also add string::split() taking a sub-string for the delimiter.
-
- Aug 10, 2017
-
-
mattijs authored
-
mattijs authored
-
Mark OLESEN authored
- access tokenType enum values more consistently.
-
- Aug 09, 2017
-
-
Mark OLESEN authored
-
- Aug 07, 2017
-
-
Andrew Heather authored
-
- Aug 03, 2017
-
-
Mark OLESEN authored
- The logic for switching input-mode was previously completely encapsulated within the #inputMode directive, but without any programming equivalent. Furthermore, the encapsulation in inputMode made the logic less clear in other places. Exposing the inputMode as an enum with direct access from entry simplifies things a fair bit. - eliminate one level of else/if nesting in entryIO.C for clearer logic - for dictionary function entries, simply use addNamedToMemberFunctionSelectionTable() and avoid defining a type() as a static. For most function entries the information is only used to get a name for the selection table lookup anyhow.
-
- Aug 02, 2017
-
-
Mark OLESEN authored
- consolidate word::validated() into word::validate() and also allow as short form for string::validate<word>(). Also less confusing than having similarly named methods that essentially do the same thing. - more consistent const access when iterating over strings - add valid(char) for keyType and wordRe
-
Mark OLESEN authored
-
- Jul 29, 2017
-
-
Mark OLESEN authored
- error::throwExceptions(bool) returning the previous state makes it easier to set and restore states. - throwing() method to query the current handling (if required). - the normal error::throwExceptions() and error::dontThrowExceptions() also return the previous state, to make it easier to restore later.
-
- Jul 26, 2017
-
-
Prashant Sonakar authored
-
- Jul 22, 2017
-
-
Mark OLESEN authored
-
Mark OLESEN authored
-
- Jul 21, 2017
-
-
Mark OLESEN authored
- this represents a partial revert for commit 1dcf2fb3
-
Mark OLESEN authored
- generic means of holding ranges of substring iterators
-
Mark OLESEN authored
- makes the purpose clearer. In some places, string::resize() is even simpler. - use C++11 string::back() in preference to str[str.size()-1]
-
Mark OLESEN authored
- this now appears to be the more common use case.
-
Mark OLESEN authored
-
- Jul 20, 2017
-
-
Mark OLESEN authored
- the 'protect' inputMode is used to supply defaults. If an entry already exists, it should act as a no-op without any side-effects whatsoever.
-
- Jul 19, 2017
-
-
mattijs authored
-
Mark OLESEN authored
- mostly associated with forgotten quotes around "(abd|def)" ... - Address different potential problems: (key) { key1 entry1; } (key) { key1 entry1; }; // <- Note trailing ';' (key) entry2;
-
Andrew Heather authored
-
- Jul 18, 2017
-
-
Mark OLESEN authored
- clear error flags. Special handling for igzstream.
-
Mark OLESEN authored
- resets the output buffer completely - implementing what rewind was likely meant to have accomplished for many use cases. STYLE: OSHA1stream reset() for symmetry. Deprecate rewind().
-