|
[Sponsors] |
January 29, 2015, 06:35 |
Problem in implementing new sgs model
|
#1 |
New Member
karar
Join Date: Feb 2013
Posts: 13
Rep Power: 13 |
Hi, all:
I want to implement a new SGS model into OF. I tried a lot of time but didn't solve. My model is non-eddyviscosity sgs model.When I modeled the B() as follows Code:
tmp<volSymmTensorField> CinlarStress::B() const { return (c1_*I*filter_(U())/(pow(delta(),3)*sqrt(2*symm(fvc::grad(U()))))*(1+filter_(U())/delta()*sqrt(2*symm(fvc::grad(U()))))); } Code:
/opt/openfoam230/src/OpenFOAM/lnInclude/scalarField.H:105:1: note: candidate expects 2 arguments, 1 provided /opt/openfoam230/src/OpenFOAM/lnInclude/scalarField.H:105:1: note: Foam::tmp<Foam::Field<double> > Foam::sqrt(const Foam::UList<double>&) /opt/openfoam230/src/OpenFOAM/lnInclude/scalarField.H:105:1: note: no known conversion for argument 1 from ‘Foam::tmp<Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> >’ to ‘const Foam::UList<double>&’ /opt/openfoam230/src/OpenFOAM/lnInclude/scalarField.H:105:1: note: Foam::tmp<Foam::Field<double> > Foam::sqrt(const Foam::tmp<Foam::Field<double> >&) /opt/openfoam230/src/OpenFOAM/lnInclude/scalarField.H:105:1: note: no known conversion for argument 1 from ‘Foam::tmp<Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> >’ to ‘const Foam::tmp<Foam::Field<double> >&’ /opt/openfoam230/src/OpenFOAM/lnInclude/dimensionSet.H:355:29: note: Foam::dimensionSet Foam::sqrt(const Foam::dimensionSet&) /opt/openfoam230/src/OpenFOAM/lnInclude/dimensionSet.H:355:29: note: no known conversion for argument 1 from ‘Foam::tmp<Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> >’ to ‘const Foam::dimensionSet&’ /opt/openfoam230/src/OpenFOAM/lnInclude/dimensionedScalar.H:65:19: note: Foam::dimensionedScalar Foam::sqrt(const dimensionedScalar&) /opt/openfoam230/src/OpenFOAM/lnInclude/dimensionedScalar.H:65:19: note: no known conversion for argument 1 from ‘Foam::tmp<Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> >’ to ‘const dimensionedScalar& {aka const Foam::dimensioned<double>&}’ /opt/openfoam230/src/OpenFOAM/lnInclude/DimensionedScalarField.C:636:1: note: template<class GeoMesh> Foam::tmp<Foam::DimensionedField<double, GeoMesh> > Foam::sqrt(const Foam::DimensionedField<double, GeoMesh>&) /opt/openfoam230/src/OpenFOAM/lnInclude/DimensionedScalarField.C:636:1: note: template<class GeoMesh> Foam::tmp<Foam::DimensionedField<double, GeoMesh> > Foam::sqrt(const Foam::tmp<Foam::DimensionedField<double, GeoMesh> >&) /opt/openfoam230/src/OpenFOAM/lnInclude/scalarFieldField.C:107:1: note: template<template<class> class Field> void Foam::sqrt(Foam::FieldField<Field, double>&, const Foam::FieldField<Field, double>&) /opt/openfoam230/src/OpenFOAM/lnInclude/scalarFieldField.C:107:1: note: template<template<class> class Field> Foam::tmp<Foam::FieldField<Field, double> > Foam::sqrt(const Foam::FieldField<Field, double>&) /opt/openfoam230/src/OpenFOAM/lnInclude/scalarFieldField.C:107:1: note: template<template<class> class Field> Foam::tmp<Foam::FieldField<Field, double> > Foam::sqrt(const Foam::tmp<Foam::FieldField<Field, double> >&) /opt/openfoam230/src/OpenFOAM/lnInclude/GeometricScalarField.C:760:1: note: template<template<class> class PatchField, class GeoMesh> Foam::tmp<Foam::GeometricField<double, PatchField, GeoMesh> > Foam::sqrt(const Foam::GeometricField<double, PatchField, GeoMesh>&) /opt/openfoam230/src/OpenFOAM/lnInclude/GeometricScalarField.C:760:1: note: template<template<class> class PatchField, class GeoMesh> Foam::tmp<Foam::GeometricField<double, PatchField, GeoMesh> > Foam::sqrt(const Foam::tmp<Foam::GeometricField<double, PatchField, GeoMesh> >&) /opt/openfoam230/src/OpenFOAM/lnInclude/GeometricScalarField.C:760:1: note: template<template<class> class PatchField, class GeoMesh> void Foam::sqrt(Foam::GeometricField<double, PatchField, GeoMesh>&, const Foam::GeometricField<double, PatchField, GeoMesh>&) CinlarStress/CinlarStress.C:150:129: error: no matching function for call to ‘sqrt(Foam::tmp<Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> >)’ CinlarStress/CinlarStress.C:150:129: note: candidates are: /opt/openfoam230/src/OpenFOAM/lnInclude/Scalar.H:260:1: note: Foam::floatScalar Foam::sqrt(Foam::floatScalar) /opt/openfoam230/src/OpenFOAM/lnInclude/Scalar.H:260:1: note: no known conversion for argument 1 from ‘Foam::tmp<Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> >’ to ‘Foam::floatScalar {aka float}’ /opt/openfoam230/src/OpenFOAM/lnInclude/Scalar.H:260:1: note: Foam::doubleScalar Foam::sqrt(Foam::doubleScalar) /opt/openfoam230/src/OpenFOAM/lnInclude/Scalar.H:260:1: note: no known conversion for argument 1 from ‘Foam::tmp<Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> >’ to ‘Foam::doubleScalar {aka double}’ /opt/openfoam230/src/OpenFOAM/lnInclude/scalarField.H:105:1: note: void Foam::sqrt(Foam::Field<double>&, const Foam::UList<double>&) /opt/openfoam230/src/OpenFOAM/lnInclude/scalarField.H:105:1: note: candidate expects 2 arguments, 1 provided /opt/openfoam230/src/OpenFOAM/lnInclude/scalarField.H:105:1: note: Foam::tmp<Foam::Field<double> > Foam::sqrt(const Foam::UList<double>&) /opt/openfoam230/src/OpenFOAM/lnInclude/scalarField.H:105:1: note: no known conversion for argument 1 from ‘Foam::tmp<Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> >’ to ‘const Foam::UList<double>&’ /opt/openfoam230/src/OpenFOAM/lnInclude/scalarField.H:105:1: note: Foam::tmp<Foam::Field<double> > Foam::sqrt(const Foam::tmp<Foam::Field<double> >&) /opt/openfoam230/src/OpenFOAM/lnInclude/scalarField.H:105:1: note: no known conversion for argument 1 from ‘Foam::tmp<Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> >’ to ‘const Foam::tmp<Foam::Field<double> >&’ /opt/openfoam230/src/OpenFOAM/lnInclude/dimensionSet.H:355:29: note: Foam::dimensionSet Foam::sqrt(const Foam::dimensionSet&) /opt/openfoam230/src/OpenFOAM/lnInclude/dimensionSet.H:355:29: note: no known conversion for argument 1 from ‘Foam::tmp<Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> >’ to ‘const Foam::dimensionSet&’ /opt/openfoam230/src/OpenFOAM/lnInclude/dimensionedScalar.H:65:19: note: Foam::dimensionedScalar Foam::sqrt(const dimensionedScalar&) /opt/openfoam230/src/OpenFOAM/lnInclude/dimensionedScalar.H:65:19: note: no known conversion for argument 1 from ‘Foam::tmp<Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh> >’ to ‘const dimensionedScalar& {aka const Foam::dimensioned<double>&}’ /opt/openfoam230/src/OpenFOAM/lnInclude/DimensionedScalarField.C:636:1: note: template<class GeoMesh> Foam::tmp<Foam::DimensionedField<double, GeoMesh> > Foam::sqrt(const Foam::DimensionedField<double, GeoMesh>&) /opt/openfoam230/src/OpenFOAM/lnInclude/DimensionedScalarField.C:636:1: note: template<class GeoMesh> Foam::tmp<Foam::DimensionedField<double, GeoMesh> > Foam::sqrt(const Foam::tmp<Foam::DimensionedField<double, GeoMesh> >&) /opt/openfoam230/src/OpenFOAM/lnInclude/scalarFieldField.C:107:1: note: template<template<class> class Field> void Foam::sqrt(Foam::FieldField<Field, double>&, const Foam::FieldField<Field, double>&) /opt/openfoam230/src/OpenFOAM/lnInclude/scalarFieldField.C:107:1: note: template<template<class> class Field> Foam::tmp<Foam::FieldField<Field, double> > Foam::sqrt(const Foam::FieldField<Field, double>&) /opt/openfoam230/src/OpenFOAM/lnInclude/scalarFieldField.C:107:1: note: template<template<class> class Field> Foam::tmp<Foam::FieldField<Field, double> > Foam::sqrt(const Foam::tmp<Foam::FieldField<Field, double> >&) /opt/openfoam230/src/OpenFOAM/lnInclude/GeometricScalarField.C:760:1: note: template<template<class> class PatchField, class GeoMesh> Foam::tmp<Foam::GeometricField<double, PatchField, GeoMesh> > Foam::sqrt(const Foam::GeometricField<double, PatchField, GeoMesh>&) /opt/openfoam230/src/OpenFOAM/lnInclude/GeometricScalarField.C:760:1: note: template<template<class> class PatchField, class GeoMesh> Foam::tmp<Foam::GeometricField<double, PatchField, GeoMesh> > Foam::sqrt(const Foam::tmp<Foam::GeometricField<double, PatchField, GeoMesh> >&) /opt/openfoam230/src/OpenFOAM/lnInclude/GeometricScalarField.C:760:1: note: template<template<class> class PatchField, class GeoMesh> void Foam::sqrt(Foam::GeometricField<double, PatchField, GeoMesh>&, const Foam::GeometricField<double, PatchField, GeoMesh>&) CinlarStress/CinlarStress.C:151:1: warning: control reaches end of non-void function [-Wreturn-type] make: *** [Make/linux64GccDPOpt/CinlarStress.o] Error 1 |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Overflow Error in Multiphase Modelling with Two Continuous Fluids | ashtonJ | CFX | 6 | August 11, 2014 15:32 |
Air-lift model with hot gases and water. Time step problem. | PauliusRap | FLOW-3D | 0 | August 4, 2014 05:47 |
Centrifugal pump OpenFOAM, convergence problem, ANSA model | RDD | OpenFOAM Running, Solving & CFD | 0 | July 5, 2014 10:12 |
Turbulence model for mixing problem??? | nileshjrane | Main CFD Forum | 7 | September 14, 2010 05:57 |
Turbulence model for mixing problem | nileshjrane | OpenFOAM Running, Solving & CFD | 1 | September 7, 2010 18:48 |