OpenFOAM工具可以在终端输入命令 cd $FOAM_UTILITIES查看,标准小工具列表如下:
Pre-processing 前处理 |
|
applyBoundaryLayer |
Apply a simplified boundary-layer model to the velocity and turbulence fields based on the 1/7th power-law |
applyWallFunctionBoundaryConditions |
Updates OpenFOAM RAS cases to use the new (v1.6) wall function framework |
boxTurb |
Makes a box of turbulence which conforms to a given energy spectrum and is divergence free |
changeDictionary |
Utility to change dictionary entries, e.g. can be used to change the patch type in the field and polyMesh/boundary files |
dsmcInitialise |
Initialise a case for dsmcFoam by reading the initialisation dictionarysystem/dsmcInitialise |
engineSwirl |
Generates a swirling flow for engine calulations |
faceAgglomerate |
(Currently no description) |
foamUpgradeCyclics |
Tool to upgrade mesh and fields for split cyclics |
foamUpgradeFvSolution |
Simple tool to upgrade the syntax of system/fvSolution::solvers |
mapFields |
Maps volume fields from one mesh to another, reading and interpolating all fields present in the time directory of both cases. Parallel and non-parallel cases are handled without the need to reconstruct them first |
mdInitialise |
Initialises fields for a molecular dynamics (MD) simulation |
setFields |
Set values on a selected set of cells/patchfaces through a dictionary |
viewFactorGen |
(Description not found) |
wallFunctionTable |
Generates a table suitable for use by tabulated wall functions |
Mesh generation 网格生成 |
|
blockMesh |
A multi-block mesh generator |
extrudeMesh |
Extrude mesh from existing patch (by default outwards facing normals; optional flips faces) or from patch read from file. |
extrude2DMesh |
Takes 2D mesh (all faces 2 points only, no front and back faces) and creates a 3D mesh by extruding with specified thickness |
extrudeToRegionMesh |
Extrude faceZones into separate mesh (as a different region), e.g. for creating liquid film regions |
snappyHexMesh |
Automatic split hex mesher. Refines and snaps to surface |
Mesh conversion 网格转换 |
|
ansysToFoam |
Converts an ANSYS input mesh file, exported from I-DEAS, to OpenFOAM format |
cfx4ToFoam |
Converts a CFX 4 mesh to OpenFOAM format |
datToFoam |
Reads in a datToFoam mesh file and outputs a points file. Used in conjunction with blockMesh |
fluent3DMeshToFoam |
Converts a Fluent mesh to OpenFOAM format |
fluentMeshToFoam |
Converts a Fluent mesh to OpenFOAM format including multiple region and region boundary handling |
foamMeshToFluent |
Writes out the OpenFOAM mesh in Fluent mesh format |
foamToStarMesh |
Reads an OpenFOAM mesh and writes a PROSTAR (v4) bnd/cel/vrt format |
foamToSurface |
Reads an OpenFOAM mesh and writes the boundaries in a surface format |
gambitToFoam |
Converts a GAMBIT mesh to OpenFOAM format |
gmshToFoam |
Reads .msh file as written by Gmsh |
ideasUnvToFoam |
I-Deas unv format mesh conversion |
kivaToFoam |
Converts a KIVA grid to OpenFOAM format |
mshToFoam |
Converts .msh file generated by the Adventure system |
netgenNeutralToFoam |
Converts neutral file format as written by Netgen v4.4 |
plot3dToFoam |
Plot3d mesh (ascii/formatted format) converter |
sammToFoam |
Converts a STAR-CD (v3) SAMM mesh to OpenFOAM format |
star3ToFoam |
Converts a STAR-CD (v3) PROSTAR mesh into OpenFOAM format |
star4ToFoam |
Converts a STAR-CD (v4) PROSTAR mesh into OpenFOAM format |
tetgenToFoam |
Converts .ele and .node and .face files, written by tetgen |
writeMeshObj |
For mesh debugging: writes mesh as three separate OBJ files which can be viewed with e.g. javaview |
Mesh manipulation 网格处理 |
|
attachMesh |
Attach topologically detached mesh using prescribed mesh modifiers |
autoPatch |
Divides external faces into patches based on (user supplied) feature angle |
checkMesh |
Checks validity of a mesh |
createBaffles |
Makes internal faces into boundary faces. Does not duplicate points, unlikemergeOrSplitBaffles |
createPatch |
Utility to create patches out of selected boundary faces. Faces come either from existing patches or from a faceSet |
deformedGeom |
Deforms a polyMesh using a displacement field U and a scaling factor supplied as an argument |
flattenMesh |
Flattens the front and back planes of a 2D cartesian mesh |
insideCells |
Picks up cells with cell centre ’inside’ of surface. Requires surface to be closed and singly connected |
mergeMeshes |
Merge two meshes |
mergeOrSplitBaffles |
Detects faces that share points (baffles). Either merge them or duplicate the points |
mirrorMesh |
Mirrors a mesh around a given plane |
moveDynamicMesh |
Mesh motion and topological mesh changes utility |
moveEngineMesh |
Solver for moving meshes for engine calculations |
moveMesh |
Solver for moving meshes |
objToVTK |
Read obj line (not surface!) file and convert into vtk |
polyDualMesh |
Calculate the dual of a polyMesh. Adheres to all the feature and patch edges |
refineMesh |
Utility to refine cells in multiple directions |
renumberMesh |
Renumbers the cell list in order to reduce the bandwidth, reading and renumbering all fields from all the time directories |
rotateMesh |
Rotates the mesh and fields from the direcion to the direction |
setSet |
Manipulate a cell/face/point/ set or zone interactively |
setsToZones |
Add pointZones/faceZones/cellZones to the mesh from similar namedpointSets/faceSets/cellSets |
singleCellMesh |
Removes all but one cells of the mesh. Used to generate mesh and fields that can be used for boundary-only data. Might easily result in illegal mesh though so only look at boundaries in paraview |
splitMesh |
Splits mesh by making internal faces external. Uses attachDetach |
splitMeshRegions |
Splits mesh into multiple regions |
stitchMesh |
’Stitches’ a mesh |
subsetMesh |
Selects a section of mesh based on a cellSet |
topoSet |
Operates on cellSets/faceSets/pointSets through a dictionary |
transformPoints |
Transforms the mesh points in the polyMesh directory according to the translate, rotate and scale options |
zipUpMesh |
Reads in a mesh with hanging vertices and zips up the cells to guarantee that all polyhedral cells of valid shape are closed |
Other mesh tools 其他网格工具 |
|
autoRefineMesh |
Utility to refine cells near to a surface |
collapseEdges |
Collapse short edges and combines edges that are in line |
combinePatchFaces |
Checks for multiple patch faces on same cell and combines them. These result from e.g. refined neighbouring cells getting removed, leaving 4 exposed faces with same owner |
modifyMesh |
Manipulates mesh elements |
PDRMesh |
Mesh and field preparation utility for PDR type simulations |
refineHexMesh |
Refines a hex mesh by 2x2x2 cell splitting |
refinementLevel |
Tries to figure out what the refinement level is on refined cartesian meshes. Run beforesnapping |
refineWallLayer |
Utility to refine cells next to patches |
removeFaces |
Utility to remove faces (combines cells on both sides) |
selectCells |
Select cells in relation to surface |
splitCells |
Utility to split cells with flat faces |
Post-processing graphics 后处理 |
|
ensightFoamReader |
EnSight library module to read OpenFOAM data directly without translation |
fieldview9Reader |
Reader module for Fieldview 9 to read OpenFOAM mesh and data |
Post-processing data converters 后处理数据转换器 |
|
foamDataToFluent |
Translates OpenFOAM data to Fluent format |
foamToEnsight |
Translates OpenFOAM data to EnSight format |
foamToEnsightParts |
Translates OpenFOAM data to Ensight format. An Ensight part is created for eachcellZone and patch |
foamToFieldview9 |
Write out the OpenFOAM mesh in Version 3.0 Fieldview-UNS format (binary) |
foamToGMV |
Translates foam output to GMV readable files |
foamToTecplot360 |
Tecplot binary file format writer |
foamToVTK |
Legacy VTK file format writer |
smapToFoam |
Translates a STAR-CD SMAP data file into OpenFOAM field format |
Post-processing velocity fields 速度场后处理 |
|
Co |
Configurable graph drawing program |
enstrophy |
Calculates and writes the enstrophy of the velocity field U |
flowType |
Calculates and writes the flowType of velocity field U |
Lambda2 |
Calculates and writes the second largest eigenvalue of the sum of the square of the symmetrical and anti-symmetrical parts of the velocity gradient tensor |
Mach |
Calculates and optionally writes the local Mach number from the velocity field U at each time |
Pe |
Calculates and writes the Pe number as a surfaceScalarField obtained from field phi |
Q |
Calculates and writes the second invariant of the velocity gradient tensor |
streamFunction |
Calculates and writes the stream function of velocity field U at each time |
uprime |
Calculates and writes the scalar field of uprime ( ) |
vorticity |
Calculates and writes the vorticity of velocity field U |
Post-processing stress fields 压力场后处理 |
|
stressComponents |
Calculates and writes the scalar fields of the six components of the stress tensor sigmafor each time |
Post-processing scalar fields 标量场后处理 |
|
pPrime2 |
Calculates and writes the scalar field of pPrime2 ( ) at each time |
Post-processing at walls 壁面后处理 |
|
wallGradU |
Calculates and writes the gradient of U at the wall |
wallHeatFlux |
Calculates and writes the heat flux for all patches as the boundary field of avolScalarField and also prints the integrated flux for all wall patches |
wallShearStress |
Calculates and writes the wall shear stress, for the specified times |
yPlusLES |
Calculates and reports yPlus for all wall patches, for the specified times |
yPlusRAS |
Calculates and reports yPlus for all wall patches, for the specified times when using RAS turbulence models |
Post-processing turbulence 湍流后处理 |
|
createTurbulenceFields |
Creates a full set of turbulence fields |
R |
Calculates and writes the Reynolds stress R for the current time step |
Post-processing patch data 边界数据后处理 |
|
patchAverage |
Calculates the average of the specified field over the specified patch |
patchIntegrate |
Calculates the integral of the specified field over the specified patch |
Post-processing Lagrangian simulation 后处理Lagrangian计算 |
|
particleTracks |
Generates a VTK file of particle tracks for cases that were computed using a tracked-parcel-type cloud |
steadyParticleTracks |
Generates a VTK file of particle tracks for cases that were computed using a steady-state cloud NOTE: case must be re-constructed (if running in parallel) before use |
Sampling post-processing 取样后处理 |
|
probeLocations |
Probe locations |
sample |
Sample field data with a choice of interpolation schemes, sampling options and write formats |
Miscellaneous post-processing 其他后处理工具 |
|
dsmcFieldsCalc |
Calculate intensive fields (U and T) from averaged extensive fields from a DSMC calculation |
engineCompRatio |
Calculate the geometric compression ratio. Note that if you have valves and/or extra volumes it will not work, since it calculates the volume at BDC and TCD |
execFlowFunctionObjects |
Execute the set of functionObjects specified in the selected dictionary (which defaults tosystem/controlDict) for the selected set of times. Alternative dictionaries should be placed in the system/ folder |
foamCalc |
Generic utility for simple field calculations at specified times |
foamListTimes |
List times using timeSelector |
pdfPlot |
Generates a graph of a probability distribution function |
postChannel |
Post-processes data from channel flow calculations |
ptot |
For each time: calculate the total pressure |
wdot |
Calculates and writes wdot for each time |
writeCellCentres |
Write the three components of the cell centres as volScalarFields so they can be used in postprocessing in thresholding |
Surface mesh (e.g. STL) tools 面网格工具 |
|
surfaceAdd |
Add two surfaces. Does geometric merge on points. Does not check for overlapping/intersecting triangles |
surfaceAutoPatch |
Patches surface according to feature angle. Like autoPatch |
surfaceCheck |
(Currently no description) |
surfaceClean |
- removes baffles - collapses small edges, removing triangles. - converts sliver triangles into split edges by projecting point onto base of triangle |
surfaceCoarsen |
Surface coarsening using ’bunnylod’: |
surfaceConvert |
Converts from one surface mesh format to another |
surfaceFeatureConvert |
Convert between edgeMesh formats |
surfaceFeatureExtract |
Extracts and writes surface features to file |
surfaceFind |
Finds nearest face and vertex |
surfaceInertia |
Calculates the inertia tensor and principal axes and moments of a command line specified triSurface. Inertia can either be of the solid body or of a thin shell |
surfaceMeshConvert |
Convert between surface formats with optional scaling or transformations (rotate/translate) on a coordinateSystem |
surfaceMeshConvertTesting |
Converts from one surface mesh format to another, but primarily used for testing functionality |
surfaceMeshExport |
Export from surfMesh to various third-party surface formats with optional scaling or transformations (rotate/translate) on a coordinateSystem |
surfaceMeshImport |
Import from various third-party surface formats into surfMesh with optional scaling or transformations (rotate/translate) on a coordinateSystem |
surfaceMeshInfo |
Miscellaneous information about surface meshes |
surfaceMeshTriangulate |
Extracts triSurface from a polyMesh. Triangulates all boundary faces. Region numbers on triangles are the patch numbers of the polyMesh. Optionally only triangulates named patches |
surfaceOrient |
Set normal consistent with respect to a user provided ’outside’ point. If -inside the point is considered inside |
surfacePointMerge |
Merges points on surface if they are within absolute distance. Since absolute distance use with care! |
surfaceRedistributePar |
(Re)distribution of triSurface. Either takes an undecomposed surface or an already decomposed surface and redistribute it so each processor has all triangles that overlap its mesh |
surfaceRefineRedGreen |
Refine by splitting all three edges of triangle (’red’ refinement). Neighbouring triangles (which are not marked for refinement get split in half (’green’) refinement. (R. Verfuerth, ”A review of a posteriori error estimation and adaptive mesh refinement techniques”, Wiley-Teubner, 1996) |
surfaceSmooth |
Example of a simple laplacian smoother |
surfaceSplitByPatch |
Writes regions of triSurface to separate files |
surfaceSplitNonManifolds |
Takes multiply connected surface and tries to split surface at multiply connected edges by duplicating points. Introduces concept of - borderEdge. Edge with 4 faces connected to it. - borderPoint. Point connected to exactly 2 borderEdges. - borderLine. Connected list of borderEdges |
surfaceSubset |
A surface analysis tool which sub-sets the triSurface to choose only a part of interest. Based on subsetMesh |
surfaceToPatch |
Reads surface and applies surface regioning to a mesh. Uses boundaryMesh to do the hard work |
surfaceTransformPoints |
Transform (scale/rotate) a surface. Like transformPoints but for surfaces |
Parallel processing 并行处理 |
|
decomposePar |
Automatically decomposes a mesh and fields of a case for parallel execution of OpenFOAM |
reconstructPar |
Reconstructs a mesh and fields of a case that is decomposed for parallel execution of OpenFOAM |
reconstructParMesh |
Reconstructs a mesh using geometric information only |
redistributeMeshPar |
Redistributes existing decomposed mesh and fields according to the current settings in the decomposeParDict file |
Thermophysical-related utilities 热物理相关工具 |
|
adiabaticFlameT |
Calculates the adiabatic flame temperature for a given fuel over a range of unburnt temperatures and equivalence ratios |
chemkinToFoam |
Converts CHEMKIN 3 thermodynamics and reaction data files into OpenFOAM format |
equilibriumCO |
Calculates the equilibrium level of carbon monoxide |
equilibriumFlameT |
Calculates the equilibrium flame temperature for a given fuel and pressure for a range of unburnt gas temperatures and equivalence ratios; the effects of dissociation on O2,H2O andCO2are included |
mixtureAdiabaticFlameT |
Calculates the adiabatic flame temperature for a given mixture at a given temperature |
Miscellaneous utilities 其他工具 |
|
expandDictionary |
Read the dictionary provided as an argument, expand the macros etc. and write the resulting dictionary to standard output |
foamDebugSwitches |
Write out all library debug switches |
foamFormatConvert |
Converts all IOobjects associated with a case into the format specified in thecontrolDict |
foamInfoExec |
Interrogates a case and prints information to stdout |
patchSummary |
Writes fields and boundary condition info for each patch at each requested time instance |