- 21 Dec, 2018 3 commits
-
-
Mark Olesen authored
- makes the intent clearer and avoids the need for additional constructor casting. Eg, labelList(10, Zero) vs. labelList(10, 0) scalarField(10, Zero) vs. scalarField(10, scalar(0)) vectorField(10, Zero) vs. vectorField(10, vector::zero)
-
Mark Olesen authored
-
Mark Olesen authored
-
- 20 Dec, 2018 3 commits
-
-
Andrew Heather authored
-
mattijs authored
-
mattijs authored
-
- 19 Dec, 2018 5 commits
-
-
mattijs authored
-
mattijs authored
-
Mark Olesen authored
- they had an isType<> instead of isA<>() check
-
Andrew Heather authored
Averages columns of cells for layered meshes. For each patch face, calculates the average value of all cells attached in the patch face normal direction, and then pushes the average value back to all cells in the column. Useful for channel-like cases where we want to average fields in the spanwise direction. Example of function object specification: columnAverage1 { type columnAverage; libs ("libfieldFunctionObjects.so"); ... patches (front side); fields (U p); } Where the entries comprise: \table Property | Description | Required | Default value type | type name: fieldMinMax | yes | patches | list of patches to collapse onto | yes | fields | list of fields to process | yes | \endtable
-
Andrew Heather authored
-
- 18 Dec, 2018 1 commit
-
-
Mark Olesen authored
-
- 17 Dec, 2018 3 commits
-
-
sergio authored
-
Mark Olesen authored
-
Mark Olesen authored
- this corresponds to 'never match', which may be useful in combination with -constant selection. Eg, surfaceMeshTriangulate -constant -time none selects only the constant entry and suppresses any automatic time loop STYLE: adjust help for the standard -times option - indicate that times can be comma or space separated, since this is otherwise not apparent. Don't mention semicolon separators in the help since that just adds even more clutter.
-
- 16 Dec, 2018 5 commits
-
-
Mark Olesen authored
-
Mark Olesen authored
-
Mark Olesen authored
- support .vtp format for geometry, surface, line, cloud. - use native reader for handling vtk, vtp, obj, stl surface files. For other formats, use the MeshedSurface (the surfMesh lib) to handle reading and Foam::vtk::Tools::Patch to handle the conversion to vtkPolyData. This combination is more memory efficient. - update tutorial case to include vtp surface geometry
-
Mark Olesen authored
- the patch could use face or triFace (labelledTriFace) - avoid trigger patch faceNormals unnecessarily
-
Mark Olesen authored
- for quantities such as face area/normals etc, it can be useful to calculate directly and avoid the overhead of caching all the values. STYLE: comments, use HashTable lookup() method in whichPoint()
-
- 15 Dec, 2018 3 commits
-
-
Mark Olesen authored
- this allows more use of the runTimePostProcessing functionObject that will fail more gracefully if the proper version could not be built. The dummy functionObject simply emits a message that it is not available.
-
Mark Olesen authored
- this is identical to either of these solutions: * getEnv("FOAM_CASE") * stringOps::expand("<case>") but with a closer resemblance to argList or Time globalPath(), which makes the intent clearer. Avoids using raw strings in the caller, which improves compile-time checks. Used in situations where a class has no derivation path or other access to a time registry or command args.
-
Mark Olesen authored
- provide relativePath() for argList and for Time. These are relative to the case globalPath(). Eg, Info<< "output: " << runTime.relativePath(outputFile) << nl;
-
- 14 Dec, 2018 3 commits
-
-
Mark Olesen authored
- partial solution for issue #1091 This generates file properties that are case-relative, Eg, plane0 { p { file "<case>/postProcessing/plane0/1/p_plane0.vtk"; } U { file "<case>/postProcessing/plane0/1/U_plane0.vtk"; } } This allows the case to be moved elsewhere and still find its files. This functionality was previously added for vtkCloud, but now also applies to streamLine, sampledSets and sampledSurfaces
-
Mark Olesen authored
- optionally replace stripped parent directory with the \<case\> shortcut "/this/path/and/subdirs/name" relative("/this/path") -> "and/subdirs/name" relative("/this/path", true) -> "\<case\>/and/subdirs/name"
-
Mark Olesen authored
- accept origin or centre, as per other geometric entities
-
- 13 Dec, 2018 5 commits
-
-
Mark Olesen authored
- it is sufficient to provide the total number of times that findBinary() failed instead of flooding the screen with messages Full verbose warnings still emitted when debugging is on.
-
mattijs authored
-
Mark Olesen authored
- now use findEtcEntry() instead to handle file or directory. Added findEtcEntries(), which provides provides a common code basis for findEtcDirs(), findEtcFiles() ...
-
Mark Olesen authored
- this simplifies use of a unified test for directory or file. fileName::Type what = myfile.type(true, true); if (what == FILE) ... if (what == DIRECTORY) ... - Use distinct bit values for fileName::Type, for possible use in the future. - related to issue #1121, since we need a more flexible way of expanding file or directory. An alternative would be to add checkGzip to Foam::exists() and Foam::type() functions, but that would make the code there more confusing and in the fileHandler classes.
-
Mark Olesen authored
- for some special cases we wish to mark command-line arguments as being optional, in order to do our own treatment. For example, when an arbitrary number of arguments should be allowed. Now tag this situation with argList::noMandatoryArgs(). The argList::argsMandatory() query can then be used in any further logic, including the standard default argument checking. - with the new default check, can consolidate the special-purpose "setRootCaseNonMandatoryArgs.H" into the regular "setRootCase.H" - revert to a simple "setRootCase.H" and move all the listing related bits to a "setRootCaseLists.H" file. This leaves the information available for solvers, or whoever else wishes, without being introduced everywhere. - add include guards and scoping to the listing files and rename to something less generic. listOptions.H -> setRootCaseListOptions.H listOutput.H -> setRootCaseListOutput.H
-
- 12 Dec, 2018 8 commits
-
-
Mark Olesen authored
- Now also responds to the contents of the trigger file, processing action= contents similar to used with external coupling. Previously it only handled an action that was defined in the dictionary. With this update, the user can chose a diferent action simply by echoing the appropriate action string into the trigger file.
-
Mark Olesen authored
- similar to the foamEtcFile script -mode=... option, the specific search location (user/group/other) can now also specified for string expansions and as a numerical value for etcFile() For example, if searching for group or other (project) controlDict, but not wishing to see the user controlDict: 1. foamEtcFile -mode=go controlDict 2. fileName dictFile("<etc:go>/controlDict"); dictFile.expand(); 3. etcFile(controlDict, false, 0077); The default behaviour for searching all contexts is unchanged. 1. foamEtcFile controlDict 2. fileName dictFile("<etc>/controlDict"); dictFile.expand(); 3. etcFile(controlDict);
-
Mark Olesen authored
-
Mark Olesen authored
- also replaced a few instances of readIfPresent with opt<> for constant values.
-
Mark Olesen authored
-
Mark Olesen authored
-
Mark Olesen authored
- restrict to text between "^[Oo]ptions:" and "-help-full" to avoid potential issues when more text is introduced in the usage output.
-
Mark Olesen authored
- for referencing the etc locations, or reporting the current API value.
-
- 11 Dec, 2018 1 commit
-
-
Mark Olesen authored
-