From 71290b4d9e3ae8e25372d40d9db1eca4964de28c Mon Sep 17 00:00:00 2001 From: Henry Weller Date: Thu, 12 May 2016 11:38:11 +0100 Subject: [PATCH] functionObjects: Changed options 'outputControl' -> 'writeControl' and 'outputInterval' -> 'writeInterval' for consistency with the time controls in controlDict and to avoid unnecessary confusion. All code and tutorials have been updated. The old names 'outputControl' and 'outputInterval' are but supported for backward compatibility but deprecated. --- .../foamToVTK/foamToVTK/writeVTK/controlDict | 8 +-- .../postProcessing/faceSource/faceSource.cfg | 2 +- .../postProcessing/fields/Lambda2.cfg | 2 +- etc/caseDicts/postProcessing/fields/Q.cfg | 2 +- .../postProcessing/forces/forces.cfg | 4 +- etc/caseDicts/postProcessing/graphs/graph.cfg | 2 +- .../postProcessing/minMax/cellMinMax.cfg | 2 +- .../postProcessing/minMax/faceMinMax.cfg | 2 +- .../postProcessing/minMax/fieldMinMax.cfg | 2 +- .../postProcessing/numerical/residuals.cfg | 4 +- .../pressure/pressureDifference.cfg | 2 +- .../postProcessing/pressure/pressureTools.cfg | 2 +- etc/caseDicts/postProcessing/probes/cloud.cfg | 2 +- .../postProcessing/probes/probes.cfg | 4 +- .../scalarTransport/scalarTransport.cfg | 2 +- .../visualization/streamlines.cfg | 2 +- .../postProcessing/visualization/surfaces.cfg | 2 +- etc/templates/axisymmetricJet/system/graph | 2 +- src/OpenFOAM/Make/files | 2 +- .../OutputFilterFunctionObject.C | 26 ++++---- .../OutputFilterFunctionObject.H | 13 ++-- .../OutputFilterFunctionObjectI.H | 14 +--- .../functionObject/functionObject.H | 26 ++++++-- .../functionObjectList/functionObjectList.H | 2 +- .../outputFilterControl.C} | 65 ++++++++++++------- .../outputFilterControl.H} | 61 ++++++++--------- .../outputFilterControlI.H | 53 +++++++++++++++ .../field/fieldAverage/controlDict | 2 +- .../postProcessingDict | 2 +- .../field/fieldValues/controlDict | 6 +- .../field/nearWallFields/controlDict | 4 +- .../field/processorField/postProcessingDict | 2 +- .../field/readFields/postProcessingDict | 8 +-- .../field/streamLine/controlDict | 4 +- .../field/streamLine/streamLine.C | 21 ++++-- .../field/wallBoundedStreamLine/controlDict | 8 +-- .../wallBoundedStreamLine.C | 24 +++++-- .../lagrangian/cloudInfo/postProcessingDict | 4 +- .../codedFunctionObject/codedFunctionObject.H | 2 +- .../utilities/partialWrite/controlDict | 12 ++-- .../utilities/residuals/residuals.H | 4 +- .../setTimeStep/setTimeStepFunctionObject.C | 4 +- .../setTimeStep/setTimeStepFunctionObject.H | 6 +- .../utilities/systemCall/controlDict | 2 +- .../timeActivatedFileUpdate/controlDict | 4 +- .../timeActivatedFileUpdate.H | 4 +- .../turbulenceFields/postProcessingDict | 4 +- .../writeRegisteredObject/controlDict | 12 ++-- .../writeRegisteredObject.H | 2 +- src/sampling/probes/probes.C | 15 ++--- .../sampledSet/sampledSets/sampledSets.C | 15 +++-- .../sampledSetsFunctionObject/sampledSetsDict | 2 +- .../sampledSurfaces/sampledSurfaces.C | 15 +++-- .../movingCone/system/cuttingPlane | 2 +- .../helmholtzResonance/system/controlDict | 4 +- .../les/pitzDaily/system/controlDict | 2 +- .../movingCone/system/cuttingPlane | 2 +- .../ras/nacaAirfoil/system/controlDict | 4 +- .../freeSpacePeriodic/system/controlDict | 4 +- .../freeSpaceStream/system/controlDict | 4 +- .../supersonicCorner/system/controlDict | 4 +- .../dsmcFoam/wedge15Ma5/system/controlDict | 6 +- .../movingCone/system/cuttingPlane | 2 +- .../pimpleDyMFoam/propeller/system/Q | 2 +- .../pimpleDyMFoam/propeller/system/forces | 2 +- .../pimpleDyMFoam/propeller/system/surfaces | 2 +- .../system/controlDict | 4 +- .../pimpleFoam/TJunction/system/controlDict | 4 +- .../TJunctionFan/system/controlDict | 4 +- .../pimpleFoam/channel395/system/controlDict | 2 +- .../motorBike/motorBike/system/controlDict | 8 +-- .../motorBike/motorBike/system/cuttingPlane | 2 +- .../motorBike/motorBike/system/forceCoeffs | 4 +- .../motorBike/motorBike/system/streamLines | 4 +- .../pisoFoam/les/pitzDaily/system/controlDict | 8 +-- .../les/pitzDailyMapped/system/controlDict | 8 +-- .../simpleFoam/motorBike/system/cuttingPlane | 2 +- .../simpleFoam/motorBike/system/forceCoeffs | 2 +- .../simpleFoam/motorBike/system/streamLines | 4 +- .../motorBike/system/wallBoundedStreamLines | 4 +- .../simpleFoam/pitzDaily/system/controlDict | 4 +- .../pitzDailyExptInlet/system/controlDict | 4 +- .../verticalChannel/system/controlDict | 2 +- .../verticalChannelLTS/system/controlDict | 2 +- .../verticalChannel/system/controlDict | 2 +- .../les/throttle/system/controlDict | 2 +- .../les/throttle3D/system/controlDict | 2 +- .../ras/sloshingTank2D/system/controlDict | 4 +- .../ras/DTCHull/system/controlDict | 4 +- .../ras/sloshingTank2D/system/controlDict | 4 +- .../ras/sloshingTank2D3DoF/system/controlDict | 4 +- .../ras/sloshingTank3D/system/controlDict | 4 +- .../ras/sloshingTank3D3DoF/system/controlDict | 4 +- .../ras/sloshingTank3D6DoF/system/controlDict | 4 +- .../interFoam/ras/DTCHull/system/controlDict | 4 +- .../ras/waterChannel/system/controlDict | 2 +- .../bubbleColumn/system/controlDict | 2 +- .../oscillatingBox/system/controlDict | 6 +- .../oscillatingBox/system/controlDict | 6 +- .../laminar/bubbleColumn/system/controlDict | 2 +- .../LES/bubbleColumn/system/controlDict | 2 +- .../RAS/bubbleColumn/system/controlDict | 2 +- .../RAS/fluidisedBed/system/controlDict | 2 +- .../laminar/bubbleColumn/system/controlDict | 2 +- .../system/continuityFunctions | 4 +- .../bubbleColumnIATE/system/controlDict | 2 +- .../laminar/fluidisedBed/system/controlDict | 2 +- .../LES/bubbleColumn/system/controlDict | 2 +- .../RAS/bubbleColumn/system/controlDict | 2 +- .../RAS/fluidisedBed/system/controlDict | 2 +- .../laminar/bubbleColumn/system/controlDict | 2 +- .../bubbleColumnIATE/system/controlDict | 2 +- .../laminar/fluidisedBed/system/controlDict | 2 +- 113 files changed, 399 insertions(+), 295 deletions(-) rename src/OpenFOAM/db/functionObjects/{outputFilterOutputControl/outputFilterOutputControl.C => outputFilterControl/outputFilterControl.C} (73%) rename src/OpenFOAM/db/functionObjects/{outputFilterOutputControl/outputFilterOutputControl.H => outputFilterControl/outputFilterControl.H} (77%) create mode 100644 src/OpenFOAM/db/functionObjects/outputFilterControl/outputFilterControlI.H diff --git a/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK/writeVTK/controlDict b/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK/writeVTK/controlDict index fdb8d149c..17b7cc49c 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK/writeVTK/controlDict +++ b/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK/writeVTK/controlDict @@ -58,16 +58,16 @@ functions functionObjectLibs ("libfoamToVTK.so"); // When to write: - // timeStep (with optional outputInterval) - // outputTime (with optional outputInterval) + // timeStep (with optional writeInterval) + // outputTime (with optional writeInterval) // adjustableTime // runTime // clockTime // cpuTime - outputControl outputTime; + writeControl outputTime; // Write every writeInterval (only valid for timeStemp, outputTime) - outputInterval 1; + writeInterval 1; // Interval of time (valid for adjustableTime, runTime, clockTime, // cpuTime) diff --git a/etc/caseDicts/postProcessing/faceSource/faceSource.cfg b/etc/caseDicts/postProcessing/faceSource/faceSource.cfg index 1132a7a33..2d540dae0 100644 --- a/etc/caseDicts/postProcessing/faceSource/faceSource.cfg +++ b/etc/caseDicts/postProcessing/faceSource/faceSource.cfg @@ -18,7 +18,7 @@ type faceSource; functionObjectLibs ("libfieldFunctionObjects.so"); enabled true; -outputControl timeStep; +writeControl timeStep; writeInterval 1; valueOutput false; diff --git a/etc/caseDicts/postProcessing/fields/Lambda2.cfg b/etc/caseDicts/postProcessing/fields/Lambda2.cfg index 0722af8f6..7db52b557 100644 --- a/etc/caseDicts/postProcessing/fields/Lambda2.cfg +++ b/etc/caseDicts/postProcessing/fields/Lambda2.cfg @@ -18,6 +18,6 @@ type Lambda2; functionObjectLibs ("libutilityFunctionObjects.so"); enabled true; -outputControl outputTime; +writeControl outputTime; // ************************************************************************* // diff --git a/etc/caseDicts/postProcessing/fields/Q.cfg b/etc/caseDicts/postProcessing/fields/Q.cfg index 5def0533f..a1d42b27f 100644 --- a/etc/caseDicts/postProcessing/fields/Q.cfg +++ b/etc/caseDicts/postProcessing/fields/Q.cfg @@ -18,6 +18,6 @@ type Q; functionObjectLibs ("libutilityFunctionObjects.so"); enabled true; -outputControl outputTime; +writeControl outputTime; // ************************************************************************* // diff --git a/etc/caseDicts/postProcessing/forces/forces.cfg b/etc/caseDicts/postProcessing/forces/forces.cfg index 4d36643c8..9d78c1d2c 100644 --- a/etc/caseDicts/postProcessing/forces/forces.cfg +++ b/etc/caseDicts/postProcessing/forces/forces.cfg @@ -18,8 +18,8 @@ type forces; functionObjectLibs ( "libforces.so" ); enabled true; -outputControl timeStep; -outputInterval 1; +writeControl timeStep; +writeInterval 1; pName p; UName U; diff --git a/etc/caseDicts/postProcessing/graphs/graph.cfg b/etc/caseDicts/postProcessing/graphs/graph.cfg index 629aea0f8..e9de6a2c1 100644 --- a/etc/caseDicts/postProcessing/graphs/graph.cfg +++ b/etc/caseDicts/postProcessing/graphs/graph.cfg @@ -18,7 +18,7 @@ type sets; functionObjectLibs ("libsampling.so"); enabled true; -outputControl outputTime; +writeControl outputTime; sets ( diff --git a/etc/caseDicts/postProcessing/minMax/cellMinMax.cfg b/etc/caseDicts/postProcessing/minMax/cellMinMax.cfg index 53374d6a2..d7de7029c 100644 --- a/etc/caseDicts/postProcessing/minMax/cellMinMax.cfg +++ b/etc/caseDicts/postProcessing/minMax/cellMinMax.cfg @@ -18,7 +18,7 @@ type cellSource; functionObjectLibs ("libfieldFunctionObjects.so"); enabled true; -outputControl timeStep; +writeControl timeStep; writeInterval 1; valueOutput false; diff --git a/etc/caseDicts/postProcessing/minMax/faceMinMax.cfg b/etc/caseDicts/postProcessing/minMax/faceMinMax.cfg index 620b02cf6..4f6d9f36b 100644 --- a/etc/caseDicts/postProcessing/minMax/faceMinMax.cfg +++ b/etc/caseDicts/postProcessing/minMax/faceMinMax.cfg @@ -18,7 +18,7 @@ type faceSource; functionObjectLibs ("libfieldFunctionObjects.so"); enabled true; -outputControl timeStep; +writeControl timeStep; writeInterval 1; valueOutput false; diff --git a/etc/caseDicts/postProcessing/minMax/fieldMinMax.cfg b/etc/caseDicts/postProcessing/minMax/fieldMinMax.cfg index 842cbbdf4..93c1a82ea 100644 --- a/etc/caseDicts/postProcessing/minMax/fieldMinMax.cfg +++ b/etc/caseDicts/postProcessing/minMax/fieldMinMax.cfg @@ -18,7 +18,7 @@ type fieldMinMax; functionObjectLibs ("libfieldFunctionObjects.so"); enabled true; -outputControl timeStep; +writeControl timeStep; writeInterval 1; write true; diff --git a/etc/caseDicts/postProcessing/numerical/residuals.cfg b/etc/caseDicts/postProcessing/numerical/residuals.cfg index 844c2810f..a775830cf 100644 --- a/etc/caseDicts/postProcessing/numerical/residuals.cfg +++ b/etc/caseDicts/postProcessing/numerical/residuals.cfg @@ -18,7 +18,7 @@ type residuals; functionObjectLibs ("libutilityFunctionObjects.so"); enabled true; -outputControl timeStep; -outputInterval 1; +writeControl timeStep; +writeInterval 1; // ************************************************************************* // diff --git a/etc/caseDicts/postProcessing/pressure/pressureDifference.cfg b/etc/caseDicts/postProcessing/pressure/pressureDifference.cfg index f8b1ef96d..b1f5dfb82 100644 --- a/etc/caseDicts/postProcessing/pressure/pressureDifference.cfg +++ b/etc/caseDicts/postProcessing/pressure/pressureDifference.cfg @@ -20,7 +20,7 @@ functionObjectLibs ("libfieldFunctionObjects.so"); operation subtract; enabled true; -outputControl timeStep; +writeControl timeStep; writeInterval 1 log false; diff --git a/etc/caseDicts/postProcessing/pressure/pressureTools.cfg b/etc/caseDicts/postProcessing/pressure/pressureTools.cfg index 331875a43..10008b263 100644 --- a/etc/caseDicts/postProcessing/pressure/pressureTools.cfg +++ b/etc/caseDicts/postProcessing/pressure/pressureTools.cfg @@ -18,7 +18,7 @@ type pressureTools; functionObjectLibs ("libutilityFunctionObjects.so"); enabled true; -outputControl outputTime; +writeControl outputTime; log false; // ************************************************************************* // diff --git a/etc/caseDicts/postProcessing/probes/cloud.cfg b/etc/caseDicts/postProcessing/probes/cloud.cfg index 87cd5e7bd..1a2a10b74 100644 --- a/etc/caseDicts/postProcessing/probes/cloud.cfg +++ b/etc/caseDicts/postProcessing/probes/cloud.cfg @@ -18,6 +18,6 @@ type sets; functionObjectLibs ("libsampling.so"); enabled true; -outputControl outputTime; +writeControl outputTime; // ************************************************************************* // diff --git a/etc/caseDicts/postProcessing/probes/probes.cfg b/etc/caseDicts/postProcessing/probes/probes.cfg index 462851bd1..5a9b63aaa 100644 --- a/etc/caseDicts/postProcessing/probes/probes.cfg +++ b/etc/caseDicts/postProcessing/probes/probes.cfg @@ -18,7 +18,7 @@ type probes; functionObjectLibs ("libsampling.so"); enabled true; -outputControl timeStep; -outputInterval 1; +writeControl timeStep; +writeInterval 1; // ************************************************************************* // diff --git a/etc/caseDicts/postProcessing/scalarTransport/scalarTransport.cfg b/etc/caseDicts/postProcessing/scalarTransport/scalarTransport.cfg index 425b921da..eaeea4073 100644 --- a/etc/caseDicts/postProcessing/scalarTransport/scalarTransport.cfg +++ b/etc/caseDicts/postProcessing/scalarTransport/scalarTransport.cfg @@ -18,7 +18,7 @@ type scalarTransport; functionObjectLibs ("libutilityFunctionObjects.so"); enabled true; -outputControl timeStep; +writeControl timeStep; writeInterval 1; write true; diff --git a/etc/caseDicts/postProcessing/visualization/streamlines.cfg b/etc/caseDicts/postProcessing/visualization/streamlines.cfg index 8673f7221..6883c570e 100644 --- a/etc/caseDicts/postProcessing/visualization/streamlines.cfg +++ b/etc/caseDicts/postProcessing/visualization/streamlines.cfg @@ -17,7 +17,7 @@ FoamFile type streamLine; functionObjectLibs ( "libfieldFunctionObjects.so" ); -outputControl outputTime; +writeControl outputTime; setFormat vtk; UName U; diff --git a/etc/caseDicts/postProcessing/visualization/surfaces.cfg b/etc/caseDicts/postProcessing/visualization/surfaces.cfg index cdd1cefc0..a87bd5a4a 100644 --- a/etc/caseDicts/postProcessing/visualization/surfaces.cfg +++ b/etc/caseDicts/postProcessing/visualization/surfaces.cfg @@ -18,7 +18,7 @@ type surfaces; functionObjectLibs ("libsampling.so"); enabled true; -outputControl outputTime; +writeControl outputTime; surfaceFormat vtk; interpolationScheme cellPoint; diff --git a/etc/templates/axisymmetricJet/system/graph b/etc/templates/axisymmetricJet/system/graph index b8a7cdf2e..fa17d0cb3 100644 --- a/etc/templates/axisymmetricJet/system/graph +++ b/etc/templates/axisymmetricJet/system/graph @@ -18,7 +18,7 @@ graph { type sets; functionObjectLibs ("libsampling.so"); - outputControl outputTime; + writeControl outputTime; interpolationScheme cellPointFace; diff --git a/src/OpenFOAM/Make/files b/src/OpenFOAM/Make/files index a24631da1..7fbff70da 100644 --- a/src/OpenFOAM/Make/files +++ b/src/OpenFOAM/Make/files @@ -218,7 +218,7 @@ db/functionObjects/functionObject/functionObject.C db/functionObjects/functionObjectList/functionObjectList.C db/functionObjects/functionObjectFile/functionObjectFile.C db/functionObjects/functionObjectFiles/functionObjectFiles.C -db/functionObjects/outputFilterOutputControl/outputFilterOutputControl.C +db/functionObjects/outputFilterControl/outputFilterControl.C Time = db/Time diff --git a/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.C b/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.C index acdde24b1..087de87cb 100644 --- a/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.C +++ b/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.C @@ -61,19 +61,21 @@ Foam::OutputFilterFunctionObject::OutputFilterFunctionObject functionObject(name), time_(t), dict_(dict), - regionName_(dict.lookupOrDefault("region", polyMesh::defaultRegion)), timeStart_(-VGREAT), timeEnd_(VGREAT), nStepsToStartTimeChange_ ( dict.lookupOrDefault("nStepsToStartTimeChange", 3) ), - outputControl_(t, dict, "output"), + writeControl_(t, dict, "write"), evaluateControl_(t, dict, "evaluate"), filter_ ( name, - time_.lookupObject(regionName_), + time_.lookupObject + ( + dict.lookupOrDefault("region", polyMesh::defaultRegion) + ), dict_ ) { @@ -96,7 +98,7 @@ bool Foam::OutputFilterFunctionObject::execute filter_.execute(); } - if (forceWrite || outputControl_.output()) + if (forceWrite || writeControl_.output()) { filter_.write(); } @@ -111,7 +113,7 @@ bool Foam::OutputFilterFunctionObject::end() { filter_.end(); - if (outputControl_.output()) + if (writeControl_.output()) { filter_.write(); } @@ -138,12 +140,12 @@ bool Foam::OutputFilterFunctionObject::adjustTimeStep() if ( active() - && outputControl_.outputControl() - == outputFilterOutputControl::ocAdjustableRunTime + && writeControl_.writeControl() + == outputFilterControl::ocAdjustableRunTime ) { - const label outputTimeIndex = outputControl_.outputTimeLastDump(); - const scalar writeInterval = outputControl_.writeInterval(); + const label outputTimeIndex = writeControl_.outputTimeLastDump(); + const scalar writeInterval = writeControl_.writeInterval(); scalar timeToNextWrite = max ( @@ -188,7 +190,7 @@ bool Foam::OutputFilterFunctionObject::read { dict_ = dict; - outputControl_.read(dict); + writeControl_.read(dict); evaluateControl_.read(dict); readControls(); @@ -207,7 +209,7 @@ void Foam::OutputFilterFunctionObject::updateMesh const mapPolyMesh& mpm ) { - if (active() && mpm.mesh().name() == regionName_) + if (active()) { filter_.updateMesh(mpm); } @@ -220,7 +222,7 @@ void Foam::OutputFilterFunctionObject::movePoints const polyMesh& mesh ) { - if (active() && mesh.name() == regionName_) + if (active()) { filter_.movePoints(mesh); } diff --git a/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.H b/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.H index d62e5afde..e0cd4e8c3 100644 --- a/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.H +++ b/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObject.H @@ -44,7 +44,7 @@ SourceFiles #include "functionObject.H" #include "dictionary.H" -#include "outputFilterOutputControl.H" +#include "outputFilterControl.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -71,9 +71,6 @@ class OutputFilterFunctionObject // Optional user inputs - //- Name of region - defaults to name of polyMesh::defaultRegion - const word regionName_; - //- Activation time - defaults to -VGREAT scalar timeStart_; @@ -86,10 +83,10 @@ class OutputFilterFunctionObject //- Output controls - outputFilterOutputControl outputControl_; + outputFilterControl writeControl_; //- Evaluate controls - outputFilterOutputControl evaluateControl_; + outputFilterControl evaluateControl_; //- The output filter OutputFilter filter_; @@ -141,7 +138,7 @@ public: inline const word& regionName() const; //- Return the output control object - inline const outputFilterOutputControl& outputControl() const; + inline const outputFilterControl& writeControl() const; //- Return the output filter inline const OutputFilter& outputFilter() const; @@ -150,7 +147,7 @@ public: // Function object control //- Called at each ++ or += of the time-loop. - // forceWrite overrides the usual outputControl behaviour and + // forceWrite overrides the usual writeControl behaviour and // forces writing (used in post-processing mode) virtual bool execute(const bool forceWrite = false); diff --git a/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObjectI.H b/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObjectI.H index 0e8be54e3..502c701c0 100644 --- a/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObjectI.H +++ b/src/OpenFOAM/db/functionObjects/OutputFilterFunctionObject/OutputFilterFunctionObjectI.H @@ -42,18 +42,10 @@ Foam::OutputFilterFunctionObject::dict() const template -inline const Foam::word& -Foam::OutputFilterFunctionObject::regionName() const +inline const Foam::outputFilterControl& +Foam::OutputFilterFunctionObject::writeControl() const { - return regionName_; -} - - -template -inline const Foam::outputFilterOutputControl& -Foam::OutputFilterFunctionObject::outputControl() const -{ - return outputControl_; + return writeControl_; } diff --git a/src/OpenFOAM/db/functionObjects/functionObject/functionObject.H b/src/OpenFOAM/db/functionObjects/functionObject/functionObject.H index a56625d57..952a93d2b 100644 --- a/src/OpenFOAM/db/functionObjects/functionObject/functionObject.H +++ b/src/OpenFOAM/db/functionObjects/functionObject/functionObject.H @@ -51,8 +51,8 @@ Description enabled yes; timeStart 0; timeEnd 10; - outputControl outputTime; - outputInterval 1; + writeControl outputTime; + writeInterval 1; ... } } @@ -62,13 +62,27 @@ Description \table Property | Description | Required | Default value type | Type of function object | yes | - functionObjectLibs | Libraries containing object implementation | yes | + functionObjectLibs | Libraries containing 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 | - outputControl | Either 'outputTime' or 'timeStep'| no | timeStep - outputInterval| Steps between output for outputControl=timeStep | no | 1 + evaluateControl | See time controls below | no | timeStep + evaluateInterval | Steps between output | no | + writeControl | See time controls below | no | timeStep + writeInterval | Steps between output | no | + \endtable + + Time controls: + \table + Option | Description + timeStep | Execute/write every 'writeInterval' time-steps + outputTime | Execute/write every 'writeInterval' output times + adjustableRunTime | Execute/write every 'writeInterval' run time period + runTime | Execute/write every 'writeInterval' run time period + clockTime | Execute/write every 'writeInterval' clock time period + cpuTime | Execute/write every 'writeInterval' CPU time period + none | Execute/write every time-step \endtable The sub-dictionary name \c myFunctionObject is chosen by the user, and is @@ -184,7 +198,7 @@ public: virtual const word& name() const; //- Called at each ++ or += of the time-loop. forceWrite overrides - // the usual outputControl behaviour and forces writing always + // the usual writeControl behaviour and forces writing always // (used in post-processing mode) virtual bool execute(const bool forceWrite) = 0; diff --git a/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.H b/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.H index 41b43b4c5..ca373b0c1 100644 --- a/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.H +++ b/src/OpenFOAM/db/functionObjects/functionObjectList/functionObjectList.H @@ -171,7 +171,7 @@ public: bool start(); //- Called at each ++ or += of the time-loop. forceWrite overrides - // the usual outputControl behaviour and forces writing always + // the usual writeControl behaviour and forces writing always // (used in post-processing mode) bool execute(const bool forceWrite = false); diff --git a/src/OpenFOAM/db/functionObjects/outputFilterOutputControl/outputFilterOutputControl.C b/src/OpenFOAM/db/functionObjects/outputFilterControl/outputFilterControl.C similarity index 73% rename from src/OpenFOAM/db/functionObjects/outputFilterOutputControl/outputFilterOutputControl.C rename to src/OpenFOAM/db/functionObjects/outputFilterControl/outputFilterControl.C index c48f4fcb9..78f826853 100644 --- a/src/OpenFOAM/db/functionObjects/outputFilterOutputControl/outputFilterOutputControl.C +++ b/src/OpenFOAM/db/functionObjects/outputFilterControl/outputFilterControl.C @@ -23,7 +23,7 @@ License \*---------------------------------------------------------------------------*/ -#include "outputFilterOutputControl.H" +#include "outputFilterControl.H" #include "PstreamReduceOps.H" // * * * * * * * * * * * * * Static Member Data * * * * * * * * * * * * * * // @@ -31,10 +31,11 @@ License namespace Foam { template<> - const char* NamedEnum:: + const char* NamedEnum:: names[] = { "timeStep", + "writeTime", "outputTime", "adjustableRunTime", "runTime", @@ -44,13 +45,13 @@ namespace Foam }; } -const Foam::NamedEnum - Foam::outputFilterOutputControl::outputControlNames_; +const Foam::NamedEnum + Foam::outputFilterControl::writeControlNames_; // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::outputFilterOutputControl::outputFilterOutputControl +Foam::outputFilterControl::outputFilterControl ( const Time& t, const dictionary& dict, @@ -59,10 +60,10 @@ Foam::outputFilterOutputControl::outputFilterOutputControl : time_(t), prefix_(prefix), - outputControl_(ocTimeStep), + writeControl_(ocTimeStep), outputInterval_(0), - outputTimeLastDump_(0), - writeInterval_(-1) + writeInterval_(-1), + outputTimeLastDump_(0) { read(dict); } @@ -70,27 +71,41 @@ Foam::outputFilterOutputControl::outputFilterOutputControl // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // -Foam::outputFilterOutputControl::~outputFilterOutputControl() +Foam::outputFilterControl::~outputFilterControl() {} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -void Foam::outputFilterOutputControl::read(const dictionary& dict) +void Foam::outputFilterControl::read(const dictionary& dict) { - const word controlName(prefix_ + "Control"); - const word intervalName(prefix_ + "Interval"); + word controlName(prefix_ + "Control"); + word intervalName(prefix_ + "Interval"); + + // For backward compatibility support the deprecated 'outputControl' option + // now superseded by 'writeControl' for compatibility with Time + if (prefix_ == "write" && dict.found("outputControl")) + { + IOWarningInFunction(dict) + << "Using deprecated 'outputControl'" << nl + << " Please use 'writeControl' with 'writeInterval'" + << endl; + + // Change to the old names for this option + controlName = "outputControl"; + intervalName = "outputInterval"; + } if (dict.found(controlName)) { - outputControl_ = outputControlNames_.read(dict.lookup(controlName)); + writeControl_ = writeControlNames_.read(dict.lookup(controlName)); } else { - outputControl_ = ocTimeStep; + writeControl_ = ocTimeStep; } - switch (outputControl_) + switch (writeControl_) { case ocTimeStep: { @@ -98,6 +113,7 @@ void Foam::outputFilterOutputControl::read(const dictionary& dict) break; } + case ocWriteTime: case ocOutputTime: { outputInterval_ = dict.lookupOrDefault