OpenFOAM logo
Open Source CFD Toolkit

famLaplacian.H

Go to the documentation of this file.
00001 /*---------------------------------------------------------------------------*\
00002   =========                 |
00003   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
00004    \\    /   O peration     |
00005     \\  /    A nd           | Copyright (C) 1991-2005 OpenCFD Ltd.
00006      \\/     M anipulation  |
00007 -------------------------------------------------------------------------------
00008 License
00009     This file is part of OpenFOAM.
00010 
00011     OpenFOAM is free software; you can redistribute it and/or modify it
00012     under the terms of the GNU General Public License as published by the
00013     Free Software Foundation; either version 2 of the License, or (at your
00014     option) any later version.
00015 
00016     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
00017     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
00018     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
00019     for more details.
00020 
00021     You should have received a copy of the GNU General Public License
00022     along with OpenFOAM; if not, write to the Free Software Foundation,
00023     Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
00024 
00025 Namespace
00026     famLaplacian
00027 
00028 Description
00029     Calculate the matrix for the laplacian of the field.
00030 
00031 SourceFiles
00032     famLaplacian.C
00033 
00034 \*---------------------------------------------------------------------------*/
00035 
00036 #ifndef famLaplacian_H
00037 #define famLaplacian_H
00038 
00039 #include "areaFieldsFwd.H"
00040 #include "edgeFieldsFwd.H"
00041 #include "faMatrix.H"
00042 
00043 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00044 
00045 namespace Foam
00046 {
00047 
00048 /*---------------------------------------------------------------------------*\
00049                      Namespace fam functions Declaration
00050 \*---------------------------------------------------------------------------*/
00051 
00052 namespace fam
00053 {
00054     template<class Type>
00055     tmp<faMatrix<Type> > laplacian
00056     (
00057         GeometricField<Type, faPatchField, areaMesh>&
00058     );
00059 
00060 
00061     template<class Type>
00062     tmp<faMatrix<Type> > laplacian
00063     (
00064         GeometricField<Type, faPatchField, areaMesh>&,
00065         const word&
00066     );
00067 
00068 
00069     template<class Type>
00070     tmp<faMatrix<Type> > laplacian
00071     (
00072         const dimensionedScalar&,
00073         GeometricField<Type, faPatchField, areaMesh>&
00074     );
00075 
00076 
00077     template<class Type>
00078     tmp<faMatrix<Type> > laplacian
00079     (
00080         const dimensionedScalar&,
00081         GeometricField<Type, faPatchField, areaMesh>&,
00082         const word&
00083     );
00084 
00085 
00086     template<class Type>
00087     tmp<faMatrix<Type> > laplacian
00088     (
00089         const areaScalarField&,
00090         GeometricField<Type, faPatchField, areaMesh>&
00091     );
00092 
00093     template<class Type>
00094     tmp<faMatrix<Type> > laplacian
00095     (
00096         const areaScalarField&,
00097         GeometricField<Type, faPatchField, areaMesh>&,
00098         const word&
00099     );
00100 
00101     template<class Type>
00102     tmp<faMatrix<Type> > laplacian
00103     (
00104         const areaScalarField&,
00105         GeometricField<Type, faPatchField, areaMesh>&
00106     );
00107 
00108     template<class Type>
00109     tmp<faMatrix<Type> > laplacian
00110     (
00111         const tmp<areaScalarField>&,
00112         GeometricField<Type, faPatchField, areaMesh>&,
00113         const word&
00114     );
00115     template<class Type>
00116     tmp<faMatrix<Type> > laplacian
00117     (
00118         const tmp<areaScalarField>&,
00119         GeometricField<Type, faPatchField, areaMesh>&,
00120         const word&
00121     );
00122 
00123 
00124     template<class Type>
00125     tmp<faMatrix<Type> > laplacian
00126     (
00127         const edgeScalarField&,
00128         GeometricField<Type, faPatchField, areaMesh>&,
00129         const word&
00130     );
00131 
00132     template<class Type>
00133     tmp<faMatrix<Type> > laplacian
00134     (
00135         const tmp<edgeScalarField>&,
00136         GeometricField<Type, faPatchField, areaMesh>&,
00137         const word&
00138     );
00139 
00140 
00141     template<class Type>
00142     tmp<faMatrix<Type> > laplacian
00143     (
00144         const edgeScalarField&,
00145         GeometricField<Type, faPatchField, areaMesh>&
00146     );
00147 
00148     template<class Type>
00149     tmp<faMatrix<Type> > laplacian
00150     (
00151         const tmp<edgeScalarField>&,
00152         GeometricField<Type, faPatchField, areaMesh>&
00153     );
00154 
00155 
00156     template<class Type>
00157     tmp<faMatrix<Type> > laplacian
00158     (
00159         const areaTensorField&,
00160         GeometricField<Type, faPatchField, areaMesh>&
00161     );
00162 
00163     template<class Type>
00164     tmp<faMatrix<Type> > laplacian
00165     (
00166         const tmp<areaTensorField>&,
00167         GeometricField<Type, faPatchField, areaMesh>&
00168     );
00169 
00170 
00171     template<class Type>
00172     tmp<faMatrix<Type> > laplacian
00173     (
00174         const edgeTensorField&,
00175         GeometricField<Type, faPatchField, areaMesh>&
00176     );
00177 
00178     template<class Type>
00179     tmp<faMatrix<Type> > laplacian
00180     (
00181         const tmp<edgeTensorField>&,
00182         GeometricField<Type, faPatchField, areaMesh>&
00183     );
00184 }
00185 
00186 
00187 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00188 
00189 } // End namespace Foam
00190 
00191 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00192 
00193 #ifdef NoRepository
00194 #   include "famLaplacian.C"
00195 #endif
00196 
00197 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
00198 
00199 #endif
00200 
00201 // ************************************************************************* //
For further information go to www.openfoam.org