CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM

How to implement reconCentral in Openfoam1812

Register Blogs Community New Posts Updated Threads Search

Like Tree1Likes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   June 22, 2020, 05:10
Default How to implement reconCentral in Openfoam1812
  #1
Member
 
Join Date: Dec 2018
Posts: 75
Rep Power: 7
hbulus is on a distinguished road
I tried to implement a limitedscheme reconCentral from foam extend 4.0 (foam40/src/finiteVolume/interpolation/surfaceInterpolation/limitedScheme) to openFoam v1812. But when i tried to compile the code i get this error :
Code:
Making dependency list for source file reconCentral.C
g++ -std=c++11 -m64 -DOPENFOAM=1812 -Dlinux64 -DWM_ARCH_OPTION=64 -DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -Wno-unknown-pragmas -O3  -DNoRepository -ftemplate-depth-100 -I/opt/apps/OpenFOAM/OpenFOAM-v1812/src/finiteVolume/lnInclude -I/opt/apps/OpenFOAM/OpenFOAM-v1812/src/meshTools/lnInclude -IlnInclude -I. -I/opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude -I/opt/apps/OpenFOAM/OpenFOAM-v1812/src/OSspecific/POSIX/lnInclude   -fPIC -c reconCentral.C -o Make/linux64GccDPInt32Opt/reconCentral.o
reconCentral.C: In member function âvirtual Foam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh> > Foam::reconCentral<Type>::interpolate(const Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh>&) constâ:
reconCentral.C:97:15: error: âunallocLabelListâ does not name a type
         const unallocLabelList& pOwner = p.faceCells();
               ^
In file included from /opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude/UList.H:51:0,
                 from /opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude/List.H:43,
                 from /opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude/wordList.H:48,
                 from /opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude/Enum.H:40,
                 from /opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude/IOobject.H:79,
                 from /opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude/regIOobject.H:41,
                 from /opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude/GeometricField.H:42,
                 from /opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude/GeometricScalarField.H:38,
                 from /opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude/GeometricFields.H:34,
                 from /opt/apps/OpenFOAM/OpenFOAM-v1812/src/finiteVolume/lnInclude/volFields.H:37,
                 from reconCentral.C:25:
reconCentral.C:114:20: error: âpOwnerâ was not declared in this scope
             forAll(pOwner, facei)
                    ^
/opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude/stdFoam.H:285:30: note: in definition of macro âforAllâ
     for (Foam::label i=0; i<(list).size(); ++i)
                              ^
reconCentral.C:143:20: error: âpOwnerâ was not declared in this scope
             forAll(pOwner, facei)
                    ^
/opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude/stdFoam.H:285:30: note: in definition of macro âforAllâ
     for (Foam::label i=0; i<(list).size(); ++i)
                              ^
reconCentral.C: In instantiation of âFoam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh> > Foam::reconCentral<Type>::interpolate(const Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh>&) const [with Type = Foam::Vector<double>]â:
reconCentral.C:200:1:   required from here
reconCentral.C:58:64: error: invalid initialization of reference of type âFoam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>&â from expression of type âconst Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>â
     GeometricField<Type, fvsPatchField, surfaceMesh>& sf = tsf();
                                                                ^
reconCentral.C:74:42: error: invalid initialization of reference of type âFoam::Field<Foam::Vector<double> >&â from expression of type âconst Internal {aka const Foam::DimensionedField<Foam::Vector<double>, Foam::surfaceMesh>}â
     Field<Type>& sfIn = sf.internalField();
                                          ^
reconCentral.C:89:33: error: no type named âGeometricBoundaryFieldâ in âclass Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>â
         GeometricBoundaryField& bSf = sf.boundaryField();
                                 ^
reconCentral.C:89:33: error: no type named âGeometricBoundaryFieldâ in âclass Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>â
reconCentral.C:89:33: error: no type named âGeometricBoundaryFieldâ in âclass Foam::GeometricField<Foam::Vector<double>, Foam::fvsPatchField, Foam::surfaceMesh>â
reconCentral.C: In instantiation of âFoam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh> > Foam::reconCentral<Type>::interpolate(const Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh>&) const [with Type = double]â:
reconCentral.C:200:1:   required from here
reconCentral.C:58:64: error: invalid initialization of reference of type âFoam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh>&â from expression of type âconst Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh>â
     GeometricField<Type, fvsPatchField, surfaceMesh>& sf = tsf();
                                                                ^
reconCentral.C:74:42: error: invalid initialization of reference of type âFoam::Field<double>&â from expression of type âconst Internal {aka const Foam::DimensionedField<double, Foam::surfaceMesh>}â
     Field<Type>& sfIn = sf.internalField();
                                          ^
reconCentral.C:89:33: error: no type named âGeometricBoundaryFieldâ in âclass Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh>â
         GeometricBoundaryField& bSf = sf.boundaryField();
                                 ^
reconCentral.C:89:33: error: no type named âGeometricBoundaryFieldâ in âclass Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh>â
reconCentral.C:89:33: error: no type named âGeometricBoundaryFieldâ in âclass Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh>â
make: *** [Make/linux64GccDPInt32Opt/reconCentral.o] Error 1
I know how to imply an own solver, but an utility scheme i dont know. Any help will be very helpful.

Thanks for every response !
hbulus is offline   Reply With Quote

Old   June 22, 2020, 07:18
Default
  #2
Senior Member
 
Join Date: Dec 2019
Location: Cologne, Germany
Posts: 369
Rep Power: 8
geth03 is on a distinguished road
read the error code:

reconCentral.C:97:15: error: âunallocLabelListâ does not name a type
const unallocLabelList& pOwner = p.faceCells();

obviously, openfoam v1812 doesn't recognize unallocLabelList.

replace it with labelUList&.
geth03 is offline   Reply With Quote

Old   June 22, 2020, 10:31
Default
  #3
Member
 
Join Date: Dec 2018
Posts: 75
Rep Power: 7
hbulus is on a distinguished road
Thanks for your response, i fixed some of the wrong parts, thanks to you!
But now, i got the error at the below. Since i dont know c++, i cant figure out. Could you help me with this too ?
Error message :
Code:
wmakeLnInclude: linking include files to ./lnInclude
Making dependency list for source file reconCentral.C
g++ -std=c++11 -m64 -DOPENFOAM=1812 -Dlinux64 -DWM_ARCH_OPTION=64 -DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -Wno-unknown-pragmas -O3  -DNoRepository -ftemplate-depth-100 -I/opt/apps/OpenFOAM/OpenFOAM-v1812/src/finiteVolume/lnInclude -I/opt/apps/OpenFOAM/OpenFOAM-v1812/src/meshTools/lnInclude -IlnInclude -I. -I/opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude -I/opt/apps/OpenFOAM/OpenFOAM-v1812/src/OSspecific/POSIX/lnInclude   -fPIC -c reconCentral.C -o Make/linux64GccDPInt32Opt/reconCentral.o
In file included from reconCentral.C:25:0:
reconCentral.H:149:73: error: expected â;â at end of member declaration
         interpolate(const GeometricField<Type, fvPatchField, volMesh>&) const
                                                                         ^
reconCentral.C:36:1: error: prototype for âFoam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh> > Foam::reconCentral<Type>::interpolate(const Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh>&)â does not match any in class âFoam::reconCentral<Type>â
 Foam::reconCentral<Type>::interpolate
 ^
In file included from reconCentral.C:25:0:
reconCentral.H:149:9: error: candidate is: virtual Foam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh> > Foam::reconCentral<Type>::interpolate(const Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh>&) const
         interpolate(const GeometricField<Type, fvPatchField, volMesh>&) const
         ^
make: *** [Make/linux64GccDPInt32Opt/reconCentral.o] Error 1
the related part in .H

Code:
// Member Functions

        //- Return the face-interpolate of the given cell field
        //  with explicit correction
        virtual tmp<GeometricField<Type, fvsPatchField, surfaceMesh>>
        interpolate(const GeometricField<Type, fvPatchField, volMesh>&) const

        //- Return true if this scheme uses an explicit correction
        virtual bool corrected() const
        {
            return true;
        }

        //- Return the explicit correction to the face-interpolate
        virtual tmp<GeometricField<Type, fvsPatchField, surfaceMesh>>
        correction
        (
            const GeometricField<Type, fvPatchField, volMesh>& vf
        ) const;
};
the related part in .C

Code:
template<class Type>
Foam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh>>
Foam::reconCentral<Type>::interpolate
hbulus is offline   Reply With Quote

Old   June 23, 2020, 06:24
Default
  #4
Senior Member
 
Join Date: Dec 2019
Location: Cologne, Germany
Posts: 369
Rep Power: 8
geth03 is on a distinguished road
related part in .H:
Code:
// Member Functions

        //- Return the face-interpolate of the given cell field
        //  with explicit correction
        virtual tmp<GeometricField<Type, fvsPatchField, surfaceMesh>>
        interpolate(const GeometricField<Type, fvPatchField, volMesh>&) const;

        //- Return true if this scheme uses an explicit correction
        virtual bool corrected() const
        {
            return true;
        }

        //- Return the explicit correction to the face-interpolate
        virtual tmp<GeometricField<Type, fvsPatchField, surfaceMesh>>
        correction
        (
            const GeometricField<Type, fvPatchField, volMesh>& vf
        ) const;
};
there is a ";"-sign missing after const for your first template function.
please check the code above.
geth03 is offline   Reply With Quote

Old   June 24, 2020, 04:19
Default
  #5
Member
 
Join Date: Dec 2018
Posts: 75
Rep Power: 7
hbulus is on a distinguished road
Quote:
Originally Posted by geth03 View Post
related part in .H:
Code:
// Member Functions

        //- Return the face-interpolate of the given cell field
        //  with explicit correction
        virtual tmp<GeometricField<Type, fvsPatchField, surfaceMesh>>
        interpolate(const GeometricField<Type, fvPatchField, volMesh>&) const;

        //- Return true if this scheme uses an explicit correction
        virtual bool corrected() const
        {
            return true;
        }

        //- Return the explicit correction to the face-interpolate
        virtual tmp<GeometricField<Type, fvsPatchField, surfaceMesh>>
        correction
        (
            const GeometricField<Type, fvPatchField, volMesh>& vf
        ) const;
};
there is a ";"-sign missing after const for your first template function.
please check the code above.
Thanks for your quick response, i added ";" sign of course
What i was trying to say , Do you see anything that makes no sense in C++ because it is still not compiled. I attached the .C and .H files if you might check.
Attached Files
File Type: c reconCentral.C (6.4 KB, 3 views)
File Type: h reconCentral.H (5.0 KB, 2 views)
hbulus is offline   Reply With Quote

Old   June 24, 2020, 05:44
Default
  #6
Senior Member
 
Join Date: Dec 2019
Location: Cologne, Germany
Posts: 369
Rep Power: 8
geth03 is on a distinguished road
i can't really judge if everything is ok, bc openFOAM is a really large library and i don't know each class and function.

when i try to modify something in OF, i usually try to fix every error code output in the terminal. it can be really time consuming.
in your case, you try to implement something from OF extend to OF v1812. as you already posted earlier, there was a class in the extend version which was named differently in v1812. so it would be wise if you would follow each error output and fix everything step by step instead of looking at each code line.

why does it not compile? is there any error-message?
what is the terminal output?
geth03 is offline   Reply With Quote

Old   June 24, 2020, 07:19
Default
  #7
Member
 
Join Date: Dec 2018
Posts: 75
Rep Power: 7
hbulus is on a distinguished road
Quote:
Originally Posted by geth03 View Post
i can't really judge if everything is ok, bc openFOAM is a really large library and i don't know each class and function.

when i try to modify something in OF, i usually try to fix every error code output in the terminal. it can be really time consuming.
in your case, you try to implement something from OF extend to OF v1812. as you already posted earlier, there was a class in the extend version which was named differently in v1812. so it would be wise if you would follow each error output and fix everything step by step instead of looking at each code line.

why does it not compile? is there any error-message?
what is the terminal output?
Yeap you are right. Some classes have been changed, it is not easy to know every of them. Maybe Prof Jasak the only person who knows.

Here is what the terminal gave :
Code:
wmakeLnInclude: linking include files to ./lnInclude
Making dependency list for source file reconCentral.C
g++ -std=c++11 -m64 -DOPENFOAM=1812 -Dlinux64 -DWM_ARCH_OPTION=64 -DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -Wno-unknown-pragmas -O3  -DNoRepository -ftemplate-depth-100 -I/opt/apps/OpenFOAM/OpenFOAM-v1812/src/finiteVolume/lnInclude -I/opt/apps/OpenFOAM/OpenFOAM-v1812/src/meshTools/lnInclude -IlnInclude -I. -I/opt/apps/OpenFOAM/OpenFOAM-v1812/src/OpenFOAM/lnInclude -I/opt/apps/OpenFOAM/OpenFOAM-v1812/src/OSspecific/POSIX/lnInclude   -fPIC -c reconCentral.C -o Make/linux64GccDPInt32Opt/reconCentral.o
reconCentral.C:36:1: error: prototype for âFoam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh> > Foam::reconCentral<Type>::interpolate(const Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh>&)â does not match any in class âFoam::reconCentral<Type>â
 Foam::reconCentral<Type>::interpolate
 ^
In file included from reconCentral.C:25:0:
reconCentral.H:150:9: error: candidate is: virtual Foam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh> > Foam::reconCentral<Type>::interpolate(const Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh>&) const
         interpolate(const GeometricField<Type, fvPatchField, volMesh>&) const;
         ^
make: *** [Make/linux64GccDPInt32Opt/reconCentral.o] Error 1
hbulus is offline   Reply With Quote

Old   June 25, 2020, 04:02
Default
  #8
Senior Member
 
Join Date: Dec 2019
Location: Cologne, Germany
Posts: 369
Rep Power: 8
geth03 is on a distinguished road
your .H-file lines 149-150:
Code:
virtual tmp<GeometricField<Type, fvsPatchField, surfaceMesh>>
interpolate(const GeometricField<Type, fvPatchField, volMesh>&) const;
your .C-file lines 34-42:
Code:
template<class Type>
Foam::tmp<Foam::reconCentral<Type>>
//Foam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh>>
Foam::reconCentral<Type>::New

(
    const GeometricField<Type, fvPatchField, surfaceMesh>&,
    const GeometricField<Type, fvPatchField, volMesh>& vf
)
in your .C-file you define something different than you declare in your .H-file.

the correct substitution should be:
Code:
template<class Type>
Foam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh> >
Foam::reconCentral<Type>::interpolate
(
    const GeometricField<Type, fvPatchField, volMesh>& vf
) const
there is a mismatch, you don't define in your .C-file what you declared in your .H-file. If you want to implement the function you declared in your .H-file, you need to define it properly and accordingly.
geth03 is offline   Reply With Quote

Old   June 25, 2020, 09:17
Default
  #9
Member
 
Join Date: Dec 2018
Posts: 75
Rep Power: 7
hbulus is on a distinguished road
Quote:
Originally Posted by geth03 View Post
your .H-file lines 149-150:
Code:
virtual tmp<GeometricField<Type, fvsPatchField, surfaceMesh>>
interpolate(const GeometricField<Type, fvPatchField, volMesh>&) const;
your .C-file lines 34-42:
Code:
template<class Type>
Foam::tmp<Foam::reconCentral<Type>>
//Foam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh>>
Foam::reconCentral<Type>::New

(
    const GeometricField<Type, fvPatchField, surfaceMesh>&,
    const GeometricField<Type, fvPatchField, volMesh>& vf
)
in your .C-file you define something different than you declare in your .H-file.

the correct substitution should be:
Code:
template<class Type>
Foam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh> >
Foam::reconCentral<Type>::interpolate
(
    const GeometricField<Type, fvPatchField, volMesh>& vf
) const
there is a mismatch, you don't define in your .C-file what you declared in your .H-file. If you want to implement the function you declared in your .H-file, you need to define it properly and accordingly.
I fixed the .C code later, but i uploaded the wrong one here. The output that i gave in my previos post, was gotten in form of the code as you said. You can try though. Sorry for misleading
hbulus is offline   Reply With Quote

Old   June 26, 2020, 06:33
Default
  #10
Senior Member
 
Join Date: Dec 2019
Location: Cologne, Germany
Posts: 369
Rep Power: 8
geth03 is on a distinguished road
can you please upload your correct .H and .C files.
geth03 is offline   Reply With Quote

Old   June 29, 2020, 03:35
Default
  #11
Member
 
Join Date: Dec 2018
Posts: 75
Rep Power: 7
hbulus is on a distinguished road
Quote:
Originally Posted by geth03 View Post
can you please upload your correct .H and .C files.
Sorry for late return. Here it goes, thanks a lot.
Attached Files
File Type: h reconCentral.H (5.0 KB, 3 views)
File Type: c reconCentral.C (6.5 KB, 5 views)
hbulus is offline   Reply With Quote

Old   July 1, 2020, 04:51
Default
  #12
Member
 
Join Date: Dec 2018
Posts: 75
Rep Power: 7
hbulus is on a distinguished road
Does this question really hard that much
hbulus is offline   Reply With Quote

Old   July 1, 2020, 10:23
Default
  #13
Senior Member
 
Join Date: Dec 2019
Location: Cologne, Germany
Posts: 369
Rep Power: 8
geth03 is on a distinguished road
i checked also the original source code and don't really know what the problem is. the code looks fine to me.
geth03 is offline   Reply With Quote

Old   July 2, 2020, 09:30
Default
  #14
Member
 
Join Date: Dec 2018
Posts: 75
Rep Power: 7
hbulus is on a distinguished road
Thanks for your all effort. I gave you repetition point as return .
I really stucked with this problem. Is there anyone who can help?

Thanks for every response!
hbulus is offline   Reply With Quote

Old   July 2, 2020, 09:52
Default
  #15
Senior Member
 
Join Date: Dec 2019
Location: Cologne, Germany
Posts: 369
Rep Power: 8
geth03 is on a distinguished road
ok, lets try one more time

your .C-File from line 34 onwards:

Code:
template<class Type>
Foam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh>>
Foam::reconCentral<Type>::interpolate
//Foam::tmp<Foam::reconCentral<Type>>
//Foam::reconCentral<Type>::New
(
  //  const GeometricField<Type, fvPatchField, surfaceMesh>&,
    const GeometricField<Type, fvPatchField, volMesh>& vf
   // const tmp<surfaceScalarField>& tsf,
   // const tmp<surfaceScalarField>& pSf
)  const //adjust this 	 
{
    //code ...
}
geth03 is offline   Reply With Quote

Old   July 3, 2020, 02:33
Default
  #16
Member
 
Join Date: Dec 2018
Posts: 75
Rep Power: 7
hbulus is on a distinguished road
Quote:
Originally Posted by geth03 View Post
ok, lets try one more time

your .C-File from line 34 onwards:

Code:
template<class Type>
Foam::tmp<Foam::GeometricField<Type, Foam::fvsPatchField, Foam::surfaceMesh>>
Foam::reconCentral<Type>::interpolate
//Foam::tmp<Foam::reconCentral<Type>>
//Foam::reconCentral<Type>::New
(
  //  const GeometricField<Type, fvPatchField, surfaceMesh>&,
    const GeometricField<Type, fvPatchField, volMesh>& vf
   // const tmp<surfaceScalarField>& tsf,
   // const tmp<surfaceScalarField>& pSf
)  const //adjust this 	 
{
    //code ...
}
Nope, it didn't work
Were you be succesful with this change ?
hbulus is offline   Reply With Quote

Old   July 3, 2020, 03:32
Default
  #17
Senior Member
 
Join Date: Dec 2019
Location: Cologne, Germany
Posts: 369
Rep Power: 8
geth03 is on a distinguished road
i just checked the code once more and saw that this part was missing
geth03 is offline   Reply With Quote

Old   November 25, 2020, 02:41
Default
  #18
Member
 
Join Date: Dec 2018
Posts: 75
Rep Power: 7
hbulus is on a distinguished road
Is there any code developer for Foam Extend or OpenFoam to help this little but hard problem for me?
hbulus is offline   Reply With Quote

Old   November 25, 2020, 13:25
Default
  #19
Senior Member
 
Join Date: Aug 2015
Posts: 494
Rep Power: 15
clapointe is on a distinguished road
A long time ago I ported the limiter to Openfoam 7. I don't know how this compares to v1812, but it may be closer than foam-extend.

Caelan
Attached Files
File Type: h reconCentral.H (4.7 KB, 11 views)
File Type: c reconCentral.C (6.2 KB, 12 views)
hbulus likes this.
clapointe is offline   Reply With Quote

Old   November 27, 2020, 04:15
Default
  #20
Member
 
Join Date: Dec 2018
Posts: 75
Rep Power: 7
hbulus is on a distinguished road
Thanks a lot, i can make some modification from your codes, then it compiled. I wmake in src/finiteVolume/interpolation/limitedSchemes as reconCentral file with required Make files. However, when i try to run with this fvSchemes, it says Unknown discretisation scheme reconCentral :
ddtSchemes
{
default steadyState;
}

gradSchemes
{
default cellLimited leastSquares 1.0;
}

divSchemes
{
default none;
div(phi,U) Gauss reconCentral cellLimited leastSquares 1.0;
div(phi,k) Gauss vanLeerDC;
div(phi,omega) Gauss vanLeerDC;
div(R) Gauss linear;
div((nuEff*dev(grad(U).T()))) Gauss linear;
}

laplacianSchemes
{
default none;
laplacian(nuEff,U) Gauss linear limited 0.5;
laplacian((1|A(U)),p) Gauss linear limited 0.5;
laplacian(DkEff,k) Gauss linear limited 0.5;
laplacian(DomegaEff,omega) Gauss linear limited 0.5;
laplacian(1,p) Gauss linear corrected;
}

interpolationSchemes
{
default reconCentral phi leastSquares;
interpolate(U) reconCentral phi leastSquares;
}

snGradSchemes
{
default limited 0.5;
}

fluxRequired
{
default no;
p ;
}

Do you have any idea why it gives this error ?

EDIT I solved the problem, you have to add libs("linreconCentral.so") at the bottom of controlDict file because i did not compile at top level of src.

Last edited by hbulus; November 27, 2020 at 07:09.
hbulus is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
How to implement a rigid lid aproximation for a 2d flow? Jaydi_21 Main CFD Forum 0 August 1, 2018 14:40
Implement swirl as "internal" BC with calculated u_axial lentschi CFX 6 November 2, 2011 05:58
Problems to implement a coordinate change mateusps OpenFOAM 3 September 22, 2011 14:20
How to implement implicit TVD limiter? Kmlin Main CFD Forum 3 March 28, 2010 09:52
how to implement this kind of equation keishawillstone OpenFOAM Running, Solving & CFD 2 August 11, 2009 07:01


All times are GMT -4. The time now is 01:26.