/*---------------------------------------------------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2015 OpenFOAM Foundation \\/ 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 3 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, see . Class Foam::InterfaceCompositionPhaseChangePhaseSystem Description Class to provide interfacial heat and mass transfer between a number of phases according to a interface composition model. The interface temperature is calculated such that the net rate at which the heat is transferred to the interface is equal to the latent heat consumed by the mass transfer. SourceFiles InterfaceCompositionPhaseChangePhaseSystem.C \*---------------------------------------------------------------------------*/ #ifndef InterfaceCompositionPhaseChangePhaseSystem_H #define InterfaceCompositionPhaseChangePhaseSystem_H #include "HeatAndMassTransferPhaseSystem.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { class interfaceCompositionModel; /*---------------------------------------------------------------------------*\ Class InterfaceCompositionPhaseChangePhaseSystem Declaration \*---------------------------------------------------------------------------*/ template class InterfaceCompositionPhaseChangePhaseSystem : public HeatAndMassTransferPhaseSystem { protected: // Protected typedefs typedef HashTable < autoPtr, phasePairKey, phasePairKey::hash > interfaceCompositionModelTable; // Protected data // Sub Models //- Interface composition models interfaceCompositionModelTable interfaceCompositionModels_; public: // Constructors //- Construct from fvMesh InterfaceCompositionPhaseChangePhaseSystem(const fvMesh&); //- Destructor virtual ~InterfaceCompositionPhaseChangePhaseSystem(); // Member Functions //- Return the mass transfer matrices virtual autoPtr massTransfer() const; //- Correct the thermodynamics virtual void correctThermo(); //- Read base phaseProperties dictionary virtual bool read(); }; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #ifdef NoRepository # include "InterfaceCompositionPhaseChangePhaseSystem.C" #endif // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #endif // ************************************************************************* //