- Nov 13, 2020
-
-
Kutalmış Berçin authored
Computes a histogram for the distribution of particle diameters and corresponding number of particles hitting on a given list of patches. A minimal example by using `constant/reactingCloud1Properties.cloudFunctions`: ``` patchParticleHistogram1 { // Mandatory entries (unmodifiable) type patchParticleHistogram; patches (<patch1> <patch2> ... <patchN>); nBins 10; min 0.1; max 10.0; maxStoredParcels 20; } ```
-
Andrew Heather authored
Miscellaneous code changes - Nov 20 See merge request !387
-
Kutalmış Berçin authored
DOC: heatTransferCoeff models: complete remaining header docs STYLE: heatTransferCoeff models: use auto specifier when appropriate Optionally, the Nusselt number (i.e. the ratio of convective to conductive heat transfer at a boundary in a fluid) can be output: ```math Nu = \frac{h L}{\kappa} ``` where ``` Nu | Nusselt number h | Convective heat transfer coefficient of the flow L | Characteristic length that defines the scale of the physical system \kappa | Thermal conductivity of the fluid ```
-
Kutalmış Berçin authored
It was observed in a MPPICDyMFoam simulation involving a single particle in a moving mesh that the barocentric trajectory of the particle follows an unexpected path at some arbitrary instant in time. The issue was tracked to "hitEqn()" where cubicEqn/quadraticEqn computes one of the roots wrongly due to the discriminant limit we set, e.g. for: 0x^3 + 1.4334549e-33 x^2 - 9.0869006e-10 x + 0.0027666538 Although the discriminant limit was carefully selected to avoid various problems at the time, the new change is required more due to its exposition to a wider spectrum of applications.
-
From OpenFOAM Foundation https://github.com/OpenFOAM/OpenFOAM-dev/commit/e4d89daf5de85f31c98012102c7dea2e29351ff2 The main issue here was that reconstructPar is serial but coupled() in cyclicAMIFvPatch.C could return true if both sides of the patch was present (this->size() && neighbFvPatch().size()). However, this would result in an evaluate call in cyclicAMIFvPatchField. This would only work if both sides were completely contained on the same processor. The change in logic prevents coupled() from returning true when called in serial for a decomposed case. Signed-off-by:
Kutalmis Bercin <kutalmis.bercin@esi-group.com>
-
Kutalmış Berçin authored
ENH: actuationDiskSource: change two FatalError to FatalIOError
-
Kutalmış Berçin authored
The change helps to carry out and monitor parallelisation tests for FOs and topoSets.
-
Kutalmış Berçin authored
-
- Nov 12, 2020
-
-
Andrew Heather authored
Feature rationalize mpi configs See merge request !389
-
- 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)
-
Mark OLESEN authored
-
Mark OLESEN authored
-
- Nov 10, 2020
- Nov 09, 2020
-
-
Mark OLESEN authored
ENH: provide fallback prefix for cmake detection STYLE: simplify some shell syntax, avoid uname call in sysFunctions STYLE: report FOAM_MPI during mpiLib builds
-
- Nov 07, 2020
-
-
Mark OLESEN authored
- upstream fixes: minor compiler warnings, style changes
-
- 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.
-
Mark OLESEN authored
- blockMesh <- extrudeModel <- dynamicMesh COMP: bad constructor in searchableSphere - used brace initializer instead of bracket initializer, which triggered component-wise construction instead of copy/move construction (gcc 4.8) STYLE: use uint8_t instead of relying on definition of 'direction'
-
- Oct 29, 2020
-
-
Mark OLESEN authored
- uses averaged value instead of emitting a fatal error
-
- Oct 28, 2020
-
-
Mark OLESEN authored
- first sort the cells into their ijk bins, and restrict testing for face orientation to those faces with an owner or neighbour that has an ijk bin. ENH: ensure polyMesh from PDRblockMesh is marked as AUTO_WRITE - the particular polyMesh constructor inherits the writeOpt, which makes is dependent on the caller and thus somewhat fragile for the top level caller.
-
Mark OLESEN authored
- for blockMesh meshing and as snappyHexMesh geometry (adjust the igloo aspect ratio)
-
- a sphere/spheroid can be specified as a single radius or three radii. If all three values happen to be identical, they are collapsed to a single value. Examples, radius 2; radius (2 2 2); radius (2 3 4); radius (2 2 4); The search for nearest point on an ellipse or ellipsoid follows the description given by Geometric Tools (David Eberly), which also include some pseudo code. The content is CC-BY 4.0 In the search algorithm, symmetry is exploited and the searching is confined to the first (+x,+y,+z) octant, and the radii are ordered from largest to smallest. Searching is optimized for sphere, prolate and oblate spheroids.
-
Mark OLESEN authored
- code reduction, documentation, code stubs for spheroid (#1901) - make searchableSurfaceCollection available as 'collection' for consistency with other objects
-
Mark OLESEN authored
- make handling of verbosity more consistent. Make all setter return the old value, remove (unused) default parameter as being counter-intuitive. This makes it easier to restore the original values. For example, const bool oldVerbose = sampler.verbose(false); ... sampler.verbose(oldVerbose);
-
Mark OLESEN authored
- can help when designing/debugging blockMesh layouts - propagate low-level cellModel methods face() and edge() to cellShape STYLE: relocate blockMesh OBJ output to application only - remove blockTopology files in cleanCase function - improve code consistency in top-level blockMesh, PDRblockMesh generation.
-
Mark OLESEN authored
- make patchFieldType default to calculated, as per GeometricField constructor
-
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.
-
Mark OLESEN authored
- use refPtr to simplify some logic. - avoid copying field if an average will be used - initialize geometric fields with a uniform value instead of Zero - minor tweak of method names - apply bugfix #1889 (longer description elsewhere)
-
- Oct 22, 2020
-
-
Mark OLESEN authored
- add -recentre option to shift points according to the bounding box centre before performing other operations - add -auto-origin to use the bounding box centre as the origin for rotations. Has lower priority than the -origin option. - surfaceTransformPoints now has distinct -read-scale, -write-scale options (as per surfaceMeshConvert). Silently accepts -scale as equivalent to -write-scale, for backwards compatibility and similarity with transformPoints - add -steps option for surfaceRefineRedGreen for successive refinement
-
Mark OLESEN authored
- adjust contributor names to include windows port BUG: bash script marked as sh (fixes #1890)
-
Ivor Clifford authored
Allows specification of extrusion path using blockMesh 'edges' syntax. See tutorials/mesh/extrudeMesh/polyline Contribution by Ivor Clifford/Paul Scherrer Institut
-
- Oct 20, 2020
-
-
Mark OLESEN authored
- autoPtr to Function requires clone() method, not optional copy/move argument. - fix bad character range for 'sed'
-
- Oct 19, 2020
-
-
Mark OLESEN authored
- can be useful when confronted with partial outputs - provision for redirecting error/warning
-
Mark OLESEN authored
ENH: add some scalar constants for .org compatibility (#1881) Although it can very much be a moving target, it can prove partly useful to have some compatibility constants/methods. - The wholesale change of 'GREAT' -> 'great' etc (JAN-2018), makes user coding for multiple versions problematic. When COMPAT_OPENFOAM_ORG is defined, now define constants (aliases) named as per the openfoam.org version. Values, however, remain identical. - For type-safe dictionary value retrieval, we have the templated get<> methods added around NOV-2018 and deprecated the lookupType method. The .org version followed suit in NOV-2019, but opted for renaming the templated lookupType method as a templated 'lookup' method. Using this is discouraged, but allowed when COMPAT_OPENFOAM_ORG is defined.
-
- Oct 15, 2020
-
-
Mark OLESEN authored
- flips state while preserving the textual representation. Eg, OFF <-> ON, YES <-> NO etc. - fix test case to avoid triggering abort(), which we cannot try/catch
-
Mark OLESEN authored
- not usually of any interest. Unifies code for Ostream and std::ostream operators
-
Mark OLESEN authored
- provides a more direct means of generating a compound token without an Istream - add transferCompoundToken() without Istream reference - mark more token methods as noexcept
-
Mark OLESEN authored
- was marked as transitional/deprecated (2018-02), now deleted. - avoids unexpected stealing of the pointer. Use the move assignment it that is the intention.
-