Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #include "fvcSnGrad.H"
00027 #include <finiteVolume/fvMesh.H>
00028 #include <finiteVolume/snGradScheme.H>
00029
00030
00031
00032 namespace Foam
00033 {
00034
00035
00036
00037 namespace fvc
00038 {
00039
00040
00041
00042 template<class Type>
00043 tmp<GeometricField<Type, fvsPatchField, surfaceMesh> >
00044 snGrad
00045 (
00046 const GeometricField<Type, fvPatchField, volMesh>& vf,
00047 const word& name
00048 )
00049 {
00050 return fv::snGradScheme<Type>::New
00051 (
00052 vf.mesh(),
00053 vf.mesh().snGradScheme(name)
00054 )().snGrad(vf);
00055 }
00056
00057
00058 template<class Type>
00059 tmp<GeometricField<Type, fvsPatchField, surfaceMesh> >
00060 snGrad
00061 (
00062 const tmp<GeometricField<Type, fvPatchField, volMesh> >& tvf,
00063 const word& name
00064 )
00065 {
00066 tmp<GeometricField<Type, fvsPatchField, surfaceMesh> > SnGrad
00067 (
00068 fvc::snGrad(tvf(), name)
00069 );
00070 tvf.clear();
00071 return SnGrad;
00072 }
00073
00074
00075 template<class Type>
00076 tmp<GeometricField<Type, fvsPatchField, surfaceMesh> >
00077 snGrad
00078 (
00079 const GeometricField<Type, fvPatchField, volMesh>& vf
00080 )
00081 {
00082 return fvc::snGrad(vf, "snGrad(" + vf.name() + ')');
00083 }
00084
00085
00086 template<class Type>
00087 tmp<GeometricField<Type, fvsPatchField, surfaceMesh> >
00088 snGrad
00089 (
00090 const tmp<GeometricField<Type, fvPatchField, volMesh> >& tvf
00091 )
00092 {
00093 tmp<GeometricField<Type, fvsPatchField, surfaceMesh> > SnGrad
00094 (
00095 fvc::snGrad(tvf())
00096 );
00097 tvf.clear();
00098 return SnGrad;
00099 }
00100
00101
00102
00103
00104 }
00105
00106
00107
00108 }
00109
00110