diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/Make/files b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/Make/files similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/Make/files rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/Make/files diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/Make/options b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/Make/options similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/Make/options rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/Make/options diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/UEqn.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/UEqn.H similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/UEqn.H rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/UEqn.H diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/YEqn.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/YEqn.H similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/YEqn.H rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/YEqn.H diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/chemistry.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/chemistry.H similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/chemistry.H rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/chemistry.H diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/createClouds.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/createClouds.H similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/createClouds.H rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/createClouds.H diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/createFields.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/createFields.H similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/createFields.H rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/createFields.H diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/createMulticomponentPointSources.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/createMulticomponentPointSources.H similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/createMulticomponentPointSources.H rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/createMulticomponentPointSources.H diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/createPorousZones.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/createPorousZones.H similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/createPorousZones.H rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/createPorousZones.H diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/hEqn.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/hEqn.H similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/hEqn.H rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/hEqn.H diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/pEqn.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/pEqn.H similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/pEqn.H rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/pEqn.H diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/trackedReactingParcelFoam.C b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/porousExplicitSourceReactingParcelFoam.C similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/trackedReactingParcelFoam.C rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/porousExplicitSourceReactingParcelFoam.C diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/readChemistryProperties.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/readChemistryProperties.H similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/readChemistryProperties.H rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/readChemistryProperties.H diff --git a/applications/solvers/lagrangian/trackedReactingParcelFoam/rhoEqn.H b/applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/rhoEqn.H similarity index 100% rename from applications/solvers/lagrangian/trackedReactingParcelFoam/rhoEqn.H rename to applications/solvers/lagrangian/porousExplicitSourceReactingParcelFoam/rhoEqn.H diff --git a/src/lagrangian/basic/ParticleTrackingData/ParticleTrackingData.C b/src/lagrangian/basic/ParticleTrackingData/ParticleTrackingData.C deleted file mode 100644 index 80f1dcaaf7..0000000000 --- a/src/lagrangian/basic/ParticleTrackingData/ParticleTrackingData.C +++ /dev/null @@ -1,72 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the - Free Software Foundation; either version 2 of the License, or (at your - option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM; if not, write to the Free Software Foundation, - Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - -\*---------------------------------------------------------------------------*/ - -#include "ParticleTrackingData.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -template -Foam::label Foam::ParticleTrackingData::PARTICLE_COUNT = 0; - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -template -Foam::ParticleTrackingData::ParticleTrackingData -( - const Cloud& cloud -) -: - cloud_(cloud), - origProc_(Pstream::myProcNo()), - id_(PARTICLE_COUNT++) -{} - - -template -Foam::ParticleTrackingData::ParticleTrackingData -( - const ParticleTrackingData& ptd -) -: - cloud_(ptd.cloud_), - origProc_(ptd.origProc_), - id_(ptd.id_) -{} - - -// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // - -template -Foam::ParticleTrackingData::~ParticleTrackingData() -{} - - -// * * * * * * * * * * * * * * IOStream operators * * * * * * * * * * * * * // - -#include "ParticleTrackingDataIO.C" - -// ************************************************************************* // diff --git a/src/lagrangian/basic/ParticleTrackingData/ParticleTrackingData.H b/src/lagrangian/basic/ParticleTrackingData/ParticleTrackingData.H deleted file mode 100644 index c752c2ec36..0000000000 --- a/src/lagrangian/basic/ParticleTrackingData/ParticleTrackingData.H +++ /dev/null @@ -1,166 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the - Free Software Foundation; either version 2 of the License, or (at your - option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM; if not, write to the Free Software Foundation, - Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - -Class - Foam::ParticleTrackingData - -Description - Class to provide additional properties to allow construction of - particle tracks - -SourceFiles - ParticleTrackingData.C - ParticleTrackingDataIO.C - -\*---------------------------------------------------------------------------*/ - -#ifndef ParticleTrackingData_H -#define ParticleTrackingData_H - -#include "Cloud.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -// Forward declaration of classes and friend functions -template -class ParticleTrackingData; - - -template -Ostream& operator<< -( - Ostream&, - const ParticleTrackingData& -); - - -/*---------------------------------------------------------------------------*\ - Class ParticleTrackingData Declaration -\*---------------------------------------------------------------------------*/ - -template -class ParticleTrackingData -{ - // Private data - - //- Reference to the cloud - const Cloud& cloud_; - - //- Originating processor id - label origProc_; - - //- Local particle id - label id_; - - //- Cumulative particle count used for particle id - static label PARTICLE_COUNT; - - - // Private member functions - - //- Write properties - particle count - static void writeProperties(const Cloud& cloud); - - //- Read properties - particle count - static void readProperties(const Cloud& cloud); - - -public: - - // Constructors - - //- Construct from cloud - ParticleTrackingData(const Cloud& cloud); - - //- Construct copy - ParticleTrackingData(const ParticleTrackingData& ptd); - - //- Construct from Istream and mesh - ParticleTrackingData - ( - const Cloud& cloud, - Istream& is, - bool readFields - ); - - - //- Destructor - ~ParticleTrackingData(); - - - // Member functions - - // Access - - //- Return const access to the cloud - inline const Cloud& cloud() const; - - //- Return const access to the originating processor id - inline label origProc() const; - - //- Return const access to the local particle id - inline label id() const; - - - // I-O - - //- Read fields - static void readFields(Cloud& c); - - //- Write fields - static void writeFields(const Cloud& c); - - - // Ostream Operator - - friend Ostream& operator<< - ( - Ostream&, - const ParticleTrackingData& - ); -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "ParticleTrackingDataI.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#ifdef NoRepository -# include "ParticleTrackingData.C" -#endif - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/lagrangian/basic/ParticleTrackingData/ParticleTrackingDataI.H b/src/lagrangian/basic/ParticleTrackingData/ParticleTrackingDataI.H deleted file mode 100644 index da195d5627..0000000000 --- a/src/lagrangian/basic/ParticleTrackingData/ParticleTrackingDataI.H +++ /dev/null @@ -1,49 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the - Free Software Foundation; either version 2 of the License, or (at your - option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM; if not, write to the Free Software Foundation, - Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - -\*---------------------------------------------------------------------------*/ - -template -inline const Foam::Cloud& -Foam::ParticleTrackingData::cloud() const -{ - return cloud_; -} - - -template -inline Foam::label Foam::ParticleTrackingData::origProc() const -{ - return origProc_; -} - - -template -inline Foam::label Foam::ParticleTrackingData::id() const -{ - return id_; -} - - -// ************************************************************************* // diff --git a/src/lagrangian/basic/ParticleTrackingData/ParticleTrackingDataIO.C b/src/lagrangian/basic/ParticleTrackingData/ParticleTrackingDataIO.C deleted file mode 100644 index e575426eea..0000000000 --- a/src/lagrangian/basic/ParticleTrackingData/ParticleTrackingDataIO.C +++ /dev/null @@ -1,233 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the - Free Software Foundation; either version 2 of the License, or (at your - option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM; if not, write to the Free Software Foundation, - Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - -\*---------------------------------------------------------------------------*/ - -#include "ParticleTrackingData.H" - -// * * * * * * * * * * * Private Member Functions * * * * * * * * * * * * * // - -template -void Foam::ParticleTrackingData::readProperties -( - const Cloud& cloud -) -{ - IOobject propsDictHeader - ( - "particleTrackingProperties", - cloud.db().time().timeName(), - "uniform/Lagrangian"/cloud.name(), - cloud.db(), - IOobject::MUST_READ, - IOobject::NO_WRITE, - false - ); - - if (propsDictHeader.headerOk()) - { - const IOdictionary propsDict(propsDictHeader); - - word procName("processor" + name(Pstream::myProcNo())); - if (propsDict.found(procName)) - { - propsDict.subDict(procName).lookup("particleCount") >> - PARTICLE_COUNT; - } - } -} - - -template -void Foam::ParticleTrackingData::writeProperties -( - const Cloud& cloud -) -{ - if (cloud.db().time().outputTime()) - { - IOdictionary propsDict - ( - IOobject - ( - "particleTrackingProperties", - cloud.db().time().timeName(), - "uniform/Lagrangian"/cloud.name(), - cloud.db(), - IOobject::NO_READ, - IOobject::NO_WRITE, - false - ) - ); - - word procName("processor" + name(Pstream::myProcNo())); - propsDict.add(procName, dictionary()); - propsDict.subDict(procName).add("particleCount", PARTICLE_COUNT); - - propsDict.regIOobject::write(); - } -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -template -Foam::ParticleTrackingData::ParticleTrackingData -( - const Cloud& cloud, - Istream& is, - bool readFields -) -: - cloud_(cloud), - origProc_(-1), - id_(-1) -{ - if (readFields) - { - if (is.format() == IOstream::ASCII) - { - is >> origProc_ >> id_; - } - else - { - is.read - ( - reinterpret_cast(&origProc_), - sizeof(origProc_) + sizeof(id_) - ); - } - } - - // Check state of Istream - is.check - ( - "ParticleTrackingData::ParticleTrackingData" - "(" - "Istream&, " - "bool" - ")" - ); -} - - -template -void Foam::ParticleTrackingData::readFields -( - Cloud& c -) -{ - if (!c.size()) - { - return; - } - - readProperties(c); - - IOField