- Dec 07, 2021
-
-
Mark OLESEN authored
- fix overly aggressive match in the API value - allow `INTELMPI*` generic value, this can be used to specify something like INTELMPI_custom and populate the corresponding wmake rule manually STYLE: mention FOAM_BUILDROOT in wmake -help-full output STYLE: adjust openfoam shell session welcome information - adjust internal variable names to reduce collision potential - improve handling of openfoam -etc=...
-
- Dec 06, 2021
-
-
Mark OLESEN authored
sampledSets - enable writer construction from dictionary; glTF export See merge request !503
-
-
Description Writes point data in glTF v2 format Two files are generated: - filename.bin : a binary file containing all scene entities - filename.gltf : a JSON file that ties fields to the binary data The output can contain both geometry and fields, with additional support for colours using a user-supplied colour map, and animation of particle tracks. Controls are provided via the optional formatOptions dictionary. For non-particle track data: \verbatim formatOptions { // Apply colours flag (yes | no ) [optional] colours yes; // List of options per field fieldInfo { p { // Colour map [optional] colourMap <colourMap>; // Colour map minimum and maximum limits [optional] // Uses field min and max if not specified min 0; max 1; // Alpha channel [optional] (uniform | field) alpha uniform; alphaValue 0.5; //alpha field; //alphaField T; //normalise yes; } } } \verbatim For particle tracks: \verbatim formatOptions { // Apply colours flag (yes | no) [optional] colours yes; // Animate tracks (yes | no) [optional] animate yes; // Animation properties [optional] animationInfo { // Colour map [optional] colourMap <colourMap>; // Colour [optional] (uniform | field) colour uniform; colourValue (1 0 0); // RGB in range [0-1] //colour field; //colourField d; // Colour map minimum and maximum limits [optional] // Note: for colour = field option // Uses field min and max if not specified min 0; max 1; // Alpha channel [optional] (uniform | field) alpha uniform; alphaValue 0.5; //alpha field; //alphaField T; //normalise yes; } } \endverbatim Note When writing particle animations, the particle field and colour properties correspond to initial particle state (first data point) and cannot be animated (limitation of the file format). For more information on the specification see https://www.khronos.org/registry/glTF/
-
The utility will now add field data to all tracks (previous version only created the geometry) The new 'fields' entry can be used to output specific fields. Example cloud reactingCloud1; sampleFrequency 1; maxPositions 1000000; fields (d U); // includes wildcard support STYLE: minor typo fix
-
Users can now include additional controls via a new formatOptions dictionary.
-
-
-
mattijs authored
-
- Dec 03, 2021
-
-
Mark OLESEN authored
-
Mark OLESEN authored
- update coded templates with qualified names GIT: add in missing PatchFunction1 constant() method - was missed in a previous commit
-
Mark OLESEN authored
- specify any of these ./Allwmake -build-root=... wmake -build-root=... FOAM_BUILDROOT=... wmake these specify an alternative root where build artifacts are to land. Currently only used as an alternative for the 'build/' hierarchy since the 'platforms/' target normally includes inputs as well. Possible use: ``` ( export WM_MPLIB="%{foam_mplib}" export FOAM_MPI="%{foam_mpi}" export MPI_ARCH_PATH="%{mpi_prefix}" export FOAM_BUILDROOT=/tmp/mpibuild export FOAM_MPI_LIBBIN="$FOAM_BUILDROOT/platforms/$WM_OPTIONS/lib/$FOAM_MPI" src/Pstream/Allwmake-mpi ) ```
-
Mark OLESEN authored
- exposed by the new embedded function handling. Requires local copies of dictionary content instead (similar to coded BCs handling) BUG: incorrect formatting for expression function output ENH: simpler copyDict version taking wordList instead of wordRes - corresponds to the most common use case at the moment ENH: expression string writeEntry method - write as verbatim for better readability
-
Mark OLESEN authored
- extendes the prefix syntax to handle '!' values. For example, "(?!).*processor.*" or "(?!i)inlet.*"
-
Mark OLESEN authored
-
Mark OLESEN authored
-
Mark OLESEN authored
-
Mark OLESEN authored
- this revises the changes made in 95cd8ee7 to replace the SFINAE-type of handling of string hashes with direct definitions. This places a bit more burden on the developer if creating hashable classes derived from std::string or variants of Foam::string, but improves reliability when linking. STYLE: drop template key defaulting from HashSet - this was never used and `HashSet<>` is much less transparent than writing `HashSet<word>` or `wordHashSet`
-
- Generic thermophysical properties class for a liquid in which the functions and coefficients for each property are run-time selected. Code adapted from openfoam.org
-
Mark OLESEN authored
STYLE: hostName() is short name, don't need parameter
-
Mark OLESEN authored
- had lookups into the merge-point map instead of determining/remapping the duplicate points directly. The result was a jumble of face/point addressing. STYLE: additional debug/verbosity comment for mergePoints
-
Mark OLESEN authored
CONFIG: cleanup additional build-related env variables
-
Mark OLESEN authored
- Function1, sampledSets, expressions, runTime selection tables
-
Mark OLESEN authored
-
Mark OLESEN authored
- marks if the value is considered to be independent of 'x'. Propagate into PatchFunction1 instead ad hoc checks there. - adjust method name in PatchFunction1 to 'whichDb()' to reflect final changes in Function1 method names. ENH: add a Function1 'none' placeholder function - This is principally useful for interfaces that expect a Function1 but where it is not necessarily used by a particular submodel. TUT: update Function1 creation to use objectRegistry
-
Andrew Heather authored
-
Andrew Heather authored
-
Andrew Heather authored
Note - this resolves the reported dimensions error, but it is not clear if this code (has ever?) run or if this change is appropriate...
-
Andrew Heather authored
-
Andrew Heather authored
-
- Dec 02, 2021
-
-
Sergio Ferraris authored
ENH: coupling BC: allow Function1. Fixes #2277. See merge request !507
-
-
- Nov 29, 2021
-
-
mattijs authored
Problem was extending the storage, copying the original contents.
-
- Nov 26, 2021
-
-
Andrew Heather authored
Updates for expressions to improve robustness and support functions, external context etc. See merge request !501
-
Mark OLESEN authored
- allows an additional HashTable of pointers to reference external content which not otherwise directly available via an objectRegistry. This could typically be used to provide a function-local "rho" to the expression evaluation.
-
Mark OLESEN authored
- for cell quantities, these evaluate on the faceCells associated with that patch to produce a field of true/false values - for face quantities, these simply correspond to the mesh faces associated with that patch to produce a field of true/false values
-
Mark OLESEN authored
- similar idea to swak timelines/lookuptables but combined together and based on Function1 for more flexibility. Specified as 'functions<scalar>' or 'functions<vector>'. For example, functions<scalar> { intakeType table ((0 0) (10 1.2)); p_inlet { type sine; frequency 3000; scale 50; level 101325; } } These can be referenced in the expressions as a nullary function or a unary function. Within the parser, the names are prefixed with "fn:" (function). It is thus possible to define "fn:sin()" that is different than the builtin "sin()" function. * A nullary call uses time value - Eg, fn:p_inlet() * A unary call acts as a remapper function. - Eg, fn:intakeType(6.25)
-
Mark OLESEN authored
- previously simply reused the scan token, which works fine for non-nested tokenizations but becomes too fragile with nesting. Now changed to use tagged unions that can be copied about and still retain some rudimentary knowledge of their types, which can be manually triggered with a destroy() call. - provide an 'identifier' non-terminal as an additional catch to avoid potential leakage on parsing failure. - adjust lemon rules and infrastructure: - use %token to predefine standard tokens. Will reduce some noise on the generated headers by retaining the order on the initial token names. - Define BIT_NOT, internal token rename NOT -> LNOT - handle non-terminal vector values. Support vector::x, vector::y and vector::z constants - permit fieldExpr access to time(). Probably not usable or useful for an '#eval' expression, but useful for a Function1. - provisioning for hooks into function calls. Establishes token names for next commit(s).
-
Mark OLESEN authored
Function1 objectRegistry access See merge request !499
-
Returns a 0/1 value corresponding to function object trigger levels. Usage: \verbatim <entryName> functionObjectTrigger; <entryName>Coeffs { triggers (1 3 5); defaultValue false; // Default when no triggers activated } \endverbatim ENH: add reset() method for Constant Function1 ENH: allow forced change of trigger index - the triggers are normally increase only, but can now override this optionally
-