diff --git a/src/OpenFOAM/primitives/subModelBase/subModelBase.C b/src/OpenFOAM/primitives/subModelBase/subModelBase.C index b76e89a04e..a8d828a5f8 100644 --- a/src/OpenFOAM/primitives/subModelBase/subModelBase.C +++ b/src/OpenFOAM/primitives/subModelBase/subModelBase.C @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2019 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -169,6 +170,17 @@ bool Foam::subModelBase::writeTime() const } +Foam::fileName Foam::subModelBase::localPath() const +{ + if (modelName_ != word::null) + { + return modelName_; + } + + return baseName_; +} + + bool Foam::subModelBase::getModelDict ( const word& entryName, diff --git a/src/OpenFOAM/primitives/subModelBase/subModelBase.H b/src/OpenFOAM/primitives/subModelBase/subModelBase.H index 90ecac2989..7da05b41f2 100644 --- a/src/OpenFOAM/primitives/subModelBase/subModelBase.H +++ b/src/OpenFOAM/primitives/subModelBase/subModelBase.H @@ -6,6 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2011-2016 OpenFOAM Foundation + Copyright (C) 2019 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -157,6 +158,9 @@ public: //- Flag to indicate when to write a property virtual bool writeTime() const; + //- Output directory + virtual fileName localPath() const; + // Edit diff --git a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/CloudFunctionObject/CloudFunctionObject.C b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/CloudFunctionObject/CloudFunctionObject.C index 4e05475139..3e6ed89908 100644 --- a/src/lagrangian/intermediate/submodels/CloudFunctionObjects/CloudFunctionObject/CloudFunctionObject.C +++ b/src/lagrangian/intermediate/submodels/CloudFunctionObjects/CloudFunctionObject/CloudFunctionObject.C @@ -5,7 +5,7 @@ \\ / A nd | www.openfoam.com \\/ M anipulation | ------------------------------------------------------------------------------- - Copyright (C) 2011-2017 OpenFOAM Foundation + Copyright (C) 2011-2019 OpenFOAM Foundation ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -66,9 +66,7 @@ Foam::CloudFunctionObject::CloudFunctionObject ( owner.mesh().time().globalPath() / functionObject::outputPrefix - / cloud::prefix - / owner.name() - / this->modelName() + / this->localPath(); ); outputDir_.clean(); // Remove unneeded ".." diff --git a/src/lagrangian/intermediate/submodels/CloudSubModelBase.C b/src/lagrangian/intermediate/submodels/CloudSubModelBase.C index aaf1baee98..1203dff816 100644 --- a/src/lagrangian/intermediate/submodels/CloudSubModelBase.C +++ b/src/lagrangian/intermediate/submodels/CloudSubModelBase.C @@ -26,6 +26,7 @@ License \*---------------------------------------------------------------------------*/ #include "CloudSubModelBase.H" +#include "cloud.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -125,6 +126,18 @@ bool Foam::CloudSubModelBase::writeTime() const } +template +Foam::fileName Foam::CloudSubModelBase::localPath() const +{ + if (modelName_ != word::null) + { + return cloud::prefix/owner_.name()/modelName_; + } + + return cloud::prefix/owner_.name()/baseName_; +} + + template void Foam::CloudSubModelBase::write(Ostream& os) const { diff --git a/src/lagrangian/intermediate/submodels/CloudSubModelBase.H b/src/lagrangian/intermediate/submodels/CloudSubModelBase.H index 08b95195ce..500f4ddd49 100644 --- a/src/lagrangian/intermediate/submodels/CloudSubModelBase.H +++ b/src/lagrangian/intermediate/submodels/CloudSubModelBase.H @@ -109,6 +109,9 @@ public: //- Flag to indicate when to write a property virtual bool writeTime() const; + //- Output directory + virtual fileName localPath() const; + // Edit