/*---------------------------------------------------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2016 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::diffusivityModel Description SourceFiles diffusivityModelI.H diffusivityModel.C diffusivityModelIO.C \*---------------------------------------------------------------------------*/ #ifndef diffusivityModel_H #define diffusivityModel_H #include "scalar.H" #include "autoPtr.H" #include "psiReactionThermo.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { // Forward declaration of classes class Electron; class Neutral; class Ion; class Stockmayer; class Coulomb; class N64; class CrossSection; // Forward declaration of friend functions and operators class diffusivityModel; /*---------------------------------------------------------------------------*\ Class diffusivityModel Declaration \*---------------------------------------------------------------------------*/ class diffusivityModel { // Private data //- Reference to thermo object const psiReactionThermo& thermo_; //- Mixture averaged diffusivity fields PtrList D_; //- Mixture averaged viscosity field autoPtr mu_; //- Mixture averaged thermal conductivity field autoPtr k_; //- Electron object autoPtr electron_; //- Ion object list PtrList ions_; //- Neutral object list PtrList neutrals_; //- Coulomb potential list PtrList ecs_; //- Momentum transfer cross section list PtrList ens_; //- Stockmayer potential list PtrList nns_; //- Coulomb potential list PtrList ccs_; //- (n,6,4) potential list PtrList cns_; // Private Member Functions //- Disallow default bitwise copy construct diffusivityModel(const diffusivityModel&); //- Disallow default bitwise assignment void operator=(const diffusivityModel&); //- Disallow default bitwise assignment inline scalar mixAvgD(const label k, const UList& Di, const UList& X, const UList& Y); //- Disallow default bitwise assignment inline void mixAvgDi(UList& Di, const scalarSymmetricSquareMatrix &Dij, const UList& X, const UList& Y); //- Disallow default bitwise assignment inline scalar mixAvgMu(const UList& muI, const UList& X, const UList& W); //- Disallow default bitwise assignment inline scalar mixAvgK(const UList& k, const UList& X); inline void calculateMuD ( UList &muI, scalarSymmetricSquareMatrix &Dij, const scalar rhoi, const scalar Cpi, const scalar pi, const scalar Ti, const scalar WbarI, const scalar rhoQc2i, const scalarField &localY, const scalarField &localX ); public: // Static data members //- Static data staticData // static const dataType staticData; // Constructors //- Construct from mixture diffusivityModel(const psiReactionThermo& thermo); //- Construct from Istream diffusivityModel(Istream&); //- Construct as copy // diffusivityModel(const diffusivityModel&); // Selectors //- Select null constructed // static autoPtr New(); //- Destructor ~diffusivityModel(); // Member Functions //- Correct diffusivities void correct(); // Access // Check // Edit // Write // Member Operators // void operator=(const diffusivityModel&); // Friend Functions // Friend Operators }; // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // } // End namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #include "diffusivityModelI.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #endif // ************************************************************************* //