- Jun 07, 2021
-
-
Mark OLESEN authored
- in some cases, additional dictionary inputs are useful for extending the input parameters or functionality of dynamic coded conditions. Typically this can be used to provide a simple set of dictionary inputs that are used to drive specific code, but allows changing the inputs without causing a recompilation. Accessed with this type of code: ``` const dictionary& dict = this->codeContext(); ``` boundary conditions and function objects: * specify an additional codeContext dictionary entry: ``` codeContext { ... } ``` PatchFunction1: * The code context dictionary is simply the dictionary used to specify the PatchFunction1 coefficients. To replicated persistant data, use local member static data. Eg, ``` code #{ // Persistent (Member) Data static autoPtr<Function1<scalar>> baseVel; static autoPtr<Function1<vector>> baseDir; ... #} ``` fvOptions: * currently not applicable
-
Mark OLESEN authored
- meshTools include/library for many (most) coded items - add PatchFunction1 include for coded BCs to provide ready access to Function1 and PatchFunction1
-
- May 19, 2021
-
-
Mark OLESEN authored
-
- May 13, 2021
-
-
Mark OLESEN authored
- use common base for handling scheme lookups. Extended to support local injection of schemes into the dictionaries during runtime.
-
- Apr 23, 2021
-
-
Mark OLESEN authored
- largely as per patch from Jong-Gwan (Jason) Do NB: the intel-one setup adds in paths for intelmpi. Its mpicc version does not harmonize with the OpenFOAM system openmpi setup (using mpicc --showme:link). Needs adjustment, or use intelmpi instead. - update name mappings for newer gcc, clang versions
-
- Apr 19, 2021
-
-
CONFIG: bad csh syntax
-
- Mar 31, 2021
-
-
mattijs authored
It was only looking for faces that were used in both endpoints but not actually checking whether they were indeed an edge (== consecutive vertex) in all faces. So if one face had an additional crossing edge and another didn't it would find more edgeFaces than the proper 'primitiveMesh::edgeFaces()' routine. This occasionally happened inside snappyHexMesh (e.g. motorBike tutorial)
-
- Mar 29, 2021
-
-
Mark OLESEN authored
-
- previously had a very old (likely irrelevant) setting for solaris systems only. - support site-specific customization. Eg, using etc/config.{csh,sh}/prefs.fjmpi - remove erroneous shell redirects present in cshell files
-
- Mar 22, 2021
-
-
mattijs authored
-
Mark OLESEN authored
- if the system/decomposeParDict is missing, skip check for matching number of processor dirs. This can make job dispatch easier. Does not apply if -decomposeParDict was explicitly specified. STYLE: adjust naming of host/slaves in argList
-
- Mar 17, 2021
-
-
Mark OLESEN authored
- can use either command-line option "-load-fields" or dictionary entry "readFields" to specify field names to be preloaded. Essentially the same functionality as with a readFields function object but with a lot less typing. - tutorial examples provided by Ryan Danks <ryan.danks@rwdi.com> illustrate using setExpr* utilities to calculate a quantity as a post-processing step.
-
- Feb 16, 2021
-
-
Mark OLESEN authored
- location and naming more consistent with other controls old: DebugSwitch 'level' new: InfoSwitch 'outputLevel'
-
- Feb 10, 2021
-
-
Mark OLESEN authored
-
- Feb 03, 2021
-
-
Mark OLESEN authored
-
- Jan 22, 2021
-
-
Mark OLESEN authored
-
- Dec 23, 2020
-
-
Andrew Heather authored
-
- Dec 18, 2020
-
-
Mark OLESEN authored
-
- Dec 16, 2020
-
-
Mark OLESEN authored
- previously always called dlclose on opened libraries when destroying the dlLibraryTable. However, by force closing the libraries the situation can arise that the library is missing its own code that it needs on unload (#1524). This is also sometimes evident when closing VTK libraries for runTimePostProcessing (#354, #1585). - The new default is to not forcibly dlclose any libraries, unless the dlcloseOnTerminate OptimisationSwitch specifies otherwise. - The dlLibraryTable::close() method can be used to explicitly close all libraries and clear the list. - The dlLibraryTable::clear() method now only clears the entries, without a dlclose.
-
- Dec 14, 2020
-
-
Mark OLESEN authored
- the adiosFoam module has been updated to handle restart with the newer time structure (directories only, no files)
-
- Dec 11, 2020
-
-
// Treatment of the outer region outer { type sphere; onGround true; expansion relative; ratios 1.1; size 3; nCells 10; }
-
- Dec 08, 2020
-
-
Mark OLESEN authored
- better distinction between types of algorithms. Easier for future deprecation/replacement.
-
- Nov 26, 2020
-
-
Mark OLESEN authored
- relocated module-prefix handling to wmakeFunctions
-
- Nov 19, 2020
-
-
Mark OLESEN authored
- easier support for non-mandatory functions. In some boundary conditions it can be desirable to support additional functions, but not necessarily require them. Make this easier to support with a Function1, PatchFunction1 NewIfPresent() selector. - support for compatibility lookups - harmonize branching logic and error handling between Function1 and PatchFunction1. ENH: refactor a base class for Function1, PatchFunction1 - includes base characteristics, patch or scalar information ENH: additional creation macros - makeConcreteFunction1, makeConcretePatchFunction1Type for adding a non-templated function into the correct templated selection table. makeScalarPatchFunction1 for similarity with makeScalarFunction1
-
- Nov 11, 2020
-
-
Mark OLESEN authored
- prefix FOAM_MPI and library directories with 'sys-' for system versions for uniform identication. WM_MPLIB | libdir (FOAM_MPI) | old naming | SYSTEMMPI | sys-mpi | mpi | SYSTEMOPENMPI | sys-openmpi | openmpi-system | - prefix preferences with 'prefs.' to make them more easily identifiable, and update bin/tools/create-mpi-config accordingly Old name: config.{csh,sh}/openmpi New name: config.{csh,sh}/prefs.openmpi - additional mpi preferences now available: * prefs.intelmpi * prefs.mpich ... CONFIG: added hook for EASYBUILDMPI (eb-mpi), somewhat like USERMPI - EasyBuild uses mpicc when compiling, so no explicit wmake rules are used ENH: support different major versions for system openmpi - for example, with WM_MPLIB=SYSTEMOPENMPI2 defines FOAM_MPI=sys-openmpi2 and thus creates lib/sys-openmpi2 ENH: centralize handling of mpi as 'mpi-rules' Before: sinclude $(GENERAL_RULES)/mplib$(WM_MPLIB) sinclude $(DEFAULT_RULES)/mplib$(WM_MPLIB) ifeq (,$(FOAM_MPI_LIBBIN)) FOAM_MPI_LIBBIN := $(FOAM_LIBBIN)/$(FOAM_MPI) endif After: include $(GENERAL_RULES)/mpi-rules - also allows variants such as SYSTEMOPENMPI2 to be handled separately
-
Mark OLESEN authored
- support prefs.compiler with better possibilities to provide overload values STYLE: reduce code for WM_ARCH_OPTION (seldom-used)
-
- Nov 04, 2020
-
-
Mark OLESEN authored
- ensures that subsequent Allwmake scripts know about it. ENH: add bin/tools/query-detect wrapper for wmake have_* scripts CONFIG: use project/ThirdParty without additional sanity checks - no need to test for Allwmake or platforms/ if ThirdParty is located within the project directory itself. COMP: add simple mpi test to 00-dummy - for testing library linkage, etc.
-
- Oct 28, 2020
-
-
Mark OLESEN authored
- consistent with FOAM_SIGFPE etc. - centralize code as error::useAbort() static function to avoid scattering the logic throughout the code. ENH: also accept "0" and "1" string values for Switch - not the normal path for Switch input (eg, from a dictionary), but consistent with bool definitions and simplifies string parsing. This means that `FOAM_SIGFPE=1 application` will now also work.
-
Mark OLESEN authored
- use bracketed syntax (eg, "<constant>/triSurface") instead for implicit case resolution.
-
- Oct 20, 2020
-
-
Mark OLESEN authored
- autoPtr to Function requires clone() method, not optional copy/move argument. - fix bad character range for 'sed'
-
- Sep 28, 2020
-
-
Mark OLESEN authored
- timeVaryingUniformFixedValue -> uniformFixedValue - allows a variety of functions (eg, coded, expressions, tables, ...) - more similarity to finiteVolume patch type STYLE: remove unused timeVarying... from etc/controlDict
-
- Sep 07, 2020
-
-
Mark OLESEN authored
- introduce WM_COMPILE_CONTROL variable to convey control information into the build rules. The convention (as per spack): - '+' to select a feature - '~' to deselect a feature Eg, to select the gold linker, and disable openmp (spaces are not required): WM_COMPILE_CONTROL="+gold ~openmp" CONFIG: accept FOAM_EXTRA_LDFLAGS for AMD, gold, Mingw linkers CONFIG: generalize PROJECT_LIBS (-ldl used almost universally)
-
- Aug 11, 2020
-
-
Mark OLESEN authored
- handle relative directory names for FOAM_CONFIG_ETC
-
- Aug 10, 2020
-
-
Mark OLESEN authored
-
- Aug 06, 2020
-
-
Mark OLESEN authored
- WM_ARCH=win64 to indicate the runtime environment ENH: cross-compile wmake toolchain for the target-side as well
-
- Jul 23, 2020
-
-
mattijs authored
-
- Jun 30, 2020
-
-
Andrew Heather authored
-
- Jun 29, 2020
-
-
Andrew Heather authored
-
Andrew Heather authored
-