From c782b093222cc7a2a70f7365de28a7e1e6c1e013 Mon Sep 17 00:00:00 2001 From: Andrew Heather Date: Thu, 10 Aug 2017 11:14:10 +0100 Subject: [PATCH] ENH: Corrections to doxygen help --- doc/Doxygen/Doxyfile | 2 +- doc/Doxygen/OpenFOAMlogo.png | Bin 5622 -> 1130 bytes src/functionObjects/doc/functionObjects.dox | 97 ++++++++++++++++++++ 3 files changed, 98 insertions(+), 1 deletion(-) create mode 100644 src/functionObjects/doc/functionObjects.dox diff --git a/doc/Doxygen/Doxyfile b/doc/Doxygen/Doxyfile index 771dc8f14b..a032193806 100644 --- a/doc/Doxygen/Doxyfile +++ b/doc/Doxygen/Doxyfile @@ -51,7 +51,7 @@ PROJECT_BRIEF = "The open source CFD toolbox" # pixels and the maximum width should not exceed 200 pixels. Doxygen will copy # the logo to the output directory. -PROJECT_LOGO = OpenFOAM-logo2-55x55.png +PROJECT_LOGO = OpenFOAMlogo.png # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path # into which the generated documentation will be written. If a relative path is diff --git a/doc/Doxygen/OpenFOAMlogo.png b/doc/Doxygen/OpenFOAMlogo.png index 722febb968068d28a82262b316a4a890e1a601bf..491d00780800cbe1788b4d73806cd7f598f57c4c 100644 GIT binary patch literal 1130 zcmeAS@N?(olHy`uVBq!ia0vp^=0I%9!3-oXoo%iMQY`6?zK#qG8~eHcB(ehe3dtTp zz6=aiY77hwEes65fIQ5RnoyF_?pSxlJNQs(IJ70W~-qC}TRYV0bn(3EaJ?|(9Yr-YaHj&2#y zWX2?KcNag&#KQYP4rhT!WHAE+w=f7ZGR&GI!N9;I=jq}Y;&FWLwcO}i1|n<^)L*UI z!Xt8L*@_0PMH&_^0)ZhV!twwA-#7HVHNi|h*DyZglFjwI)6|wnM8!q!(ba$0{(0`U zuB~%k>)yI^M`}X3*g4Ce^BopSG)U@CEIwM=z`9^_;Hhh;W}nlam!#2QT~hzwaoM(A zM=j?i-w>M~dGq1%mAt#F^X~B*vW8_#HhujRwo##&>yH2V#P0|0ibrk}VZZ5au`+H{|DxPvJo@_1sqF6Y(@8Lex1JM$9 zu5|LbSujkEi{9=pzT<-g{n?x!L*x^0*z8yAV3uzaj) zH1Ez-#$R(j@=5;vxRl|!cJGs(IZV&Be|_WtYWEk{Vj*V zjT!9zzFFrLr}20RO(}hT|H|TT7Fizbx-!bw%NRcG%6j}F#<^)vUvb~PLnm!Hj_dxM z`KY+$Du8 zOTDgGYxOzp>aj(ZZPTycd_DW`maj*CyD$HfY5SM8g)4M&p@-B%VDeEdag8WRNi0dV zN-jzTQVd20hGx137P^L}A%-Sah89)^7TN}eRt5$?vWz`ZH00)|WTsW(*3fC*{S~Nz N!PC{xWt~$(698vgyp;d| literal 5622 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. + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +\page pagePostProcessing Post-processing + +\section secFunctionObjects Function objects + +OpenFOAM includes a collection of \ref grpFunctionObjects that offer users the +opportunity to closely manage their computational analyses. These objects can +be applied to manipulate the workflow process, and provide a mechanism to +extract predicted field and derived quantities at run-time. Alternatively, +the actions can be executed afterwards using the \c execFlowFunctionObjects +utility. + +\linebreak +The current range of features comprises of: +- \ref grpFieldFunctionObjects +- \ref grpForcesFunctionObjects +- \ref grpGraphicsFunctionObjects +- \ref grpLagrangianFunctionObjects +- \ref grpSolversFunctionObjects +- \ref grpUtilitiesFunctionObjects + +\linebreak +\subsection secFieldFunctionObjectUsage Using function objects + +Function objects are defined by additional entries in the +$FOAM_CASE/system/controlDict input dictionary. Each object is listed in a +\c functions sub-dictionary entry, e.g. the following shows the input options +applicable to `output' -type objects: + +\verbatim +functions +{ + myFunctionObject // user-defined name of function object entry + { + type functionObjectType; + libs ("libMyFunctionObjectlib.so"); + region defaultRegion; + enabled yes; + timeStart 0; + timeEnd 10; + evaluateControl timeStep; + evaluateInterval 1; + writeControl outputTime; + writeInterval 1; + ... + } +} +\endverbatim + +Where: +\table + Property | Description | Required | Default value + type | type of function object | yes | + libs | libraries containing object implementation | yes | + region | name of region for multi-region cases | no | + enabled | on/off switch | no | yes + timeStart| start time | no | + timeEnd | end time | no | + evaluateControl | when to evaluate: either 'writeTime' or 'timeStep'| no | timeStep + evaluateInterval| steps between evaluation when evaluateControl=timeStep | no | 1 + writeControl | when to output: either 'writeTime' or 'timeStep'| no | timeStep + writeInterval| steps between output when writeControl=timeStep | no | 1 +\endtable + +The sub-dictionary name \c myFunctionObject is chosen by the user, and is +typically used as the name of the output directory for any derived data. The +\c type entry defines the type of function object properties that follow. +Since the function objects are packaged into separate libraries, the user must +tell the code where to find the function object implementation, identified +using the \c functionObjectLibs entry. + + +\*---------------------------------------------------------------------------*/