CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Community Contributions > OpenFOAM CC Toolkits for Fluid-Structure Interaction

[FSI] Having trouble installing FSI_4.0 on foam-extend 4.1 and Ubuntu 16.04

Register Blogs Community New Posts Updated Threads Search

Like Tree8Likes
  • 2 Post By Daniel_Khazaei
  • 1 Post By Daniel_Khazaei
  • 2 Post By Aliiiii
  • 2 Post By MrcYoung
  • 1 Post By bigphil

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   December 14, 2018, 18:15
Default Having trouble installing FSI_4.0 on foam-extend 4.1 and Ubuntu 16.04
  #1
New Member
 
Ali
Join Date: Jun 2018
Posts: 5
Rep Power: 8
Aliiiii is on a distinguished road
Hi all,

I successfully installed foam-extend 4.1 but I got errors when I try to install FSI 4.0 and I get the following errors:

Code:
lidSolvers/solidModels/constitutiveModel/plasticityStressReturnMethods/kirchhoffMises/kirchhoffMises.C:1675:36: error: ‘const class Foam::processorPolyPatch’ has no member named ‘owner’
                     if (!procPatch.owner())
                                    ^
make: *** [Make/linux64GccDPOpt/kirchhoffMises.o] Error 1
make: *** Waiting for unfinished jobs....
+ wmake solvers/fsiFoam
Making dependency list for source file fsiFoam.C
/usr/bin/ld: cannot find -lfluidSolidInteraction
collect2: error: ld returned 1 exit status
make: *** [/home/ali1/foam/ali1-4.1/applications/bin/linux64GccDPOpt/fsiFoam] Error 1
+ wmake solvers/ampFsiFoam
Making dependency list for source file ampFsiFoam.C
/usr/bin/ld: cannot find -lfluidSolidInteraction
collect2: error: ld returned 1 exit status
make: *** [/home/ali1/foam/ali1-4.1/applications/bin/linux64GccDPOpt/ampFsiFoam] Error 1
+ wmake solvers/weakFsiFoam
Making dependency list for source file weakFsiFoam.C
/usr/bin/ld: cannot find -lfluidSolidInteraction
collect2: error: ld returned 1 exit status
make: *** [/home/ali1/foam/ali1-4.1/applications/bin/linux64GccDPOpt/weakFsiFoam] Error 1
+ wmake solvers/fluidFoam
Making dependency list for source file fluidFoam.C
/usr/bin/ld: cannot find -lfluidSolidInteraction
collect2: error: ld returned 1 exit status
make: *** [/home/ali1/foam/ali1-4.1/applications/bin/linux64GccDPOpt/fluidFoam] Error 1
+ wmake solvers/solidFoam
Making dependency list for source file solidFoam.C
/usr/bin/ld: cannot find -lfluidSolidInteraction
collect2: error: ld returned 1 exit status
make: *** [/home/ali1/foam/ali1-4.1/applications/bin/linux64GccDPOpt/solidFoam] Error 1
+ wmake solvers/thermalSolidFoam
Making dependency list for source file thermalSolidFoam.C
/usr/bin/ld: cannot find -lfluidSolidInteraction
collect2: error: ld returned 1 exit status
make: *** [/home/ali1/foam/ali1-4.1/applications/bin/linux64GccDPOpt/thermalSolidFoam] Error 1
+ wmake libso utilities/functionObjects/pointHistory
Making dependency list for source file pointHistory.C
In file included from /home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/token.H:49:0,
                 from /home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/runTimeSelectionTables.H:38,
                 from /home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:43,
                 from pointHistory.H:41,
                 from pointHistory.C:29:
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H: In instantiation of ‘static Foam::autoPtr<Foam::functionObject> Foam::functionObject::adddictionaryConstructorToTable<functionObjectType>::New(const Foam::word&, const Foam::Time&, const Foam::dictionary&) [with functionObjectType = Foam::pointHistory]’:
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:87:9:   required from ‘Foam::functionObject::adddictionaryConstructorToTable<functionObjectType>::adddictionaryConstructorToTable(const Foam::word&) [with functionObjectType = Foam::pointHistory]’
pointHistory.C:45:5:   required from here
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/runTimeSelectionTables.H:73:66: error: invalid new-expression of abstract class type ‘Foam::pointHistory’
             return autoPtr< baseType >(new baseType##Type parList);           \
                                                                  ^
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:87:9: note: in expansion of macro ‘declareRunTimeSelectionTable’
         declareRunTimeSelectionTable
         ^
In file included from pointHistory.C:29:0:
pointHistory.H:55:7: note:   because the following virtual functions are pure within ‘Foam::pointHistory’:
 class pointHistory
       ^
In file included from pointHistory.H:41:0,
                 from pointHistory.C:29:
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:156:22: note:     virtual bool Foam::functionObject::execute(bool)
         virtual bool execute(const bool forceWrite) = 0;
                      ^
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:172:22: note:     virtual void Foam::functionObject::updateMesh(const Foam::mapPolyMesh&)
         virtual void updateMesh(const mapPolyMesh& mpm) = 0;
                      ^
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:175:22: note:     virtual void Foam::functionObject::movePoints(const pointField&)
         virtual void movePoints(const pointField& points) = 0;
                      ^
make: *** [Make/linux64GccDPOpt/pointHistory.o] Error 1
+ wmake libso utilities/functionObjects/patchAvgTractionHistory
Making dependency list for source file patchAvgTractionHistory.C
In file included from /home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/token.H:49:0,
                 from /home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/runTimeSelectionTables.H:38,
                 from /home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:43,
                 from patchAvgTractionHistory.H:41,
                 from patchAvgTractionHistory.C:29:
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H: In instantiation of ‘static Foam::autoPtr<Foam::functionObject> Foam::functionObject::adddictionaryConstructorToTable<functionObjectType>::New(const Foam::word&, const Foam::Time&, const Foam::dictionary&) [with functionObjectType = Foam::patchAvgTractionHistory]’:
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:87:9:   required from ‘Foam::functionObject::adddictionaryConstructorToTable<functionObjectType>::adddictionaryConstructorToTable(const Foam::word&) [with functionObjectType = Foam::patchAvgTractionHistory]’
patchAvgTractionHistory.C:42:5:   required from here
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/runTimeSelectionTables.H:73:66: error: invalid new-expression of abstract class type ‘Foam::patchAvgTractionHistory’
             return autoPtr< baseType >(new baseType##Type parList);           \
                                                                  ^
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:87:9: note: in expansion of macro ‘declareRunTimeSelectionTable’
         declareRunTimeSelectionTable
         ^
In file included from patchAvgTractionHistory.C:29:0:
patchAvgTractionHistory.H:55:7: note:   because the following virtual functions are pure within ‘Foam::patchAvgTractionHistory’:
 class patchAvgTractionHistory
       ^
In file included from patchAvgTractionHistory.H:41:0,
                 from patchAvgTractionHistory.C:29:
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:156:22: note:     virtual bool Foam::functionObject::execute(bool)
         virtual bool execute(const bool forceWrite) = 0;
                      ^
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:172:22: note:     virtual void Foam::functionObject::updateMesh(const Foam::mapPolyMesh&)
         virtual void updateMesh(const mapPolyMesh& mpm) = 0;
                      ^
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:175:22: note:     virtual void Foam::functionObject::movePoints(const pointField&)
         virtual void movePoints(const pointField& points) = 0;
                      ^
make: *** [Make/linux64GccDPOpt/patchAvgTractionHistory.o] Error 1
+ wmake libso utilities/functionObjects/centrifugalBodyForce
Making dependency list for source file centrifugalBodyForce.C
In file included from centrifugalBodyForce.C:29:0:
centrifugalBodyForce.H:71:9: error: ‘dimensionedVector’ does not name a type
         dimensionedVector angularVelocity_;
         ^
centrifugalBodyForce.C: In member function ‘bool Foam::centrifugalBodyForce::setBodyForce()’:
centrifugalBodyForce.C:67:19: error: ‘angularVelocity_’ was not declared in this scope
     bodyForce = -(angularVelocity_^(angularVelocity_^mesh.C()));
                   ^
centrifugalBodyForce.C: In constructor ‘Foam::centrifugalBodyForce::centrifugalBodyForce(const Foam::word&, const Foam::Time&, const Foam::dictionary&)’:
centrifugalBodyForce.C:85:5: error: class ‘Foam::centrifugalBodyForce’ does not have any field named ‘angularVelocity_’
     angularVelocity_(dict.lookup("angularVelocity"))
     ^
In file included from /home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/token.H:49:0,
                 from /home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/runTimeSelectionTables.H:38,
                 from /home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:43,
                 from centrifugalBodyForce.H:41,
                 from centrifugalBodyForce.C:29:
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H: In instantiation of ‘static Foam::autoPtr<Foam::functionObject> Foam::functionObject::adddictionaryConstructorToTable<functionObjectType>::New(const Foam::word&, const Foam::Time&, const Foam::dictionary&) [with functionObjectType = Foam::centrifugalBodyForce]’:
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:87:9:   required from ‘Foam::functionObject::adddictionaryConstructorToTable<functionObjectType>::adddictionaryConstructorToTable(const Foam::word&) [with functionObjectType = Foam::centrifugalBodyForce]’
centrifugalBodyForce.C:45:5:   required from here
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/runTimeSelectionTables.H:73:66: error: invalid new-expression of abstract class type ‘Foam::centrifugalBodyForce’
             return autoPtr< baseType >(new baseType##Type parList);           \
                                                                  ^
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:87:9: note: in expansion of macro ‘declareRunTimeSelectionTable’
         declareRunTimeSelectionTable
         ^
In file included from centrifugalBodyForce.C:29:0:
centrifugalBodyForce.H:55:7: note:   because the following virtual functions are pure within ‘Foam::centrifugalBodyForce’:
 class centrifugalBodyForce
       ^
In file included from centrifugalBodyForce.H:41:0,
                 from centrifugalBodyForce.C:29:
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:156:22: note:     virtual bool Foam::functionObject::execute(bool)
         virtual bool execute(const bool forceWrite) = 0;
                      ^
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:172:22: note:     virtual void Foam::functionObject::updateMesh(const Foam::mapPolyMesh&)
         virtual void updateMesh(const mapPolyMesh& mpm) = 0;
                      ^
/home/ali1/foam/foam-extend-4.1/src/foam/lnInclude/functionObject.H:175:22: note:     virtual void Foam::functionObject::movePoints(const pointField&)
         virtual void movePoints(const pointField& points) = 0;
                      ^
make: *** [Make/linux64GccDPOpt/centrifugalBodyForce.o] Error 1
Does anyone know how to resolve this? Does foam-extend 4.1 support FSI 4.0?

Thanks,
Ali

Last edited by wyldckat; December 16, 2018 at 15:48. Reason: Added [CODE][/CODE] markers
Aliiiii is offline   Reply With Quote

Old   December 14, 2018, 20:50
Default
  #2
Senior Member
 
Daniel
Join Date: Mar 2013
Location: Noshahr, Iran
Posts: 348
Rep Power: 21
Daniel_Khazaei will become famous soon enough
in foam-extend 4.1, the owner() function has been renamed to master()!
so, change owner() to master() anywhere that compiler complains by saying "has no member..."

regarding function objects not getting compiled, new changes in foam-extend 4.1 require you to define "updateMesh(const mapPolyMesh&)" and "movePoints(const pointField&)" in every class derived from functionObject class as they are pure virtual methods. Also the definition of "execute()" has changed to "execute(const bool forceWrite)". I have modified pointHistory.H as an example for you:

1) centrifugalBodyForce.H
2) patchAvgTractionHistory.H
3) pointHistory.H

Code:
class pointHistory
:
    public functionObject
{
    // Private data

        //- Name
        const word name_;

        //- Reference to main object registry
        const Time& time_;

        //- Region name
        word regionName_;

        //- History point ID
        label historyPointID_;

        //- History point
        vector refHistoryPoint_;

        //- Write velocity
        bool writeVelocity_;

        //- Processor of history point
        label processor_;

        //- Forces/moment file ptr
        autoPtr<OFstream> historyFilePtr_;

    // Private Member Functions

        //- Write data
        bool writeData();

        //- Disallow default bitwise copy construct
        pointHistory
        (
            const pointHistory&
        );

        //- Disallow default bitwise assignment
        void operator=(const pointHistory&);


public:

    //- Runtime type information
    TypeName("pointHistory");


    // Constructors

        //- Construct from components
        pointHistory
        (
            const word& name,
            const Time&,
            const dictionary&
        );


    // Member Functions

        //- start is called at the start of the time-loop
        virtual bool start();

        //- execute is called at each ++ or += of the time-loop
        virtual bool execute(const bool forceWrite);

        //- Read and set the function object if its data has changed
        virtual bool read(const dictionary& dict);

    //- Update for changes of mesh
        virtual void updateMesh(const mapPolyMesh&)
        {}

        //- Update for mesh point-motion
        virtual void movePoints(const pointField&)
        {}
};
regarding "virtual bool execute(const bool forceWrite)", also change the method definition in .C file of each functionObjects.

Regards,
D. Khazaei
saatt and Aliiiii like this.

Last edited by Daniel_Khazaei; December 16, 2018 at 03:48.
Daniel_Khazaei is offline   Reply With Quote

Old   December 15, 2018, 17:56
Default
  #3
New Member
 
Ali
Join Date: Jun 2018
Posts: 5
Rep Power: 8
Aliiiii is on a distinguished road
Quote:
Originally Posted by Daniel_Khazaei View Post
in foam-extend 4.1, the owner() function has been renamed to master()!
so, changed owner() to master() anywhere that compiler complains by saying "has no member..."

regarding function objects not getting compiled, new changes in foam-extend 4.1 require you to define "updateMesh(const mapPolyMesh&)" and "movePoints(const pointField&)" in every class derived from functionObject class as they are pure virtual methods. Also the definition of "execute()" has changed to "execute(const bool forceWrite)". I have modified pointHistory.H as an example for you:

1) centrifugalBodyForce.H
2) patchAvgTractionHistory.H
3) pointHistory.H

Code:
class pointHistory
:
    public functionObject
{
    // Private data

        //- Name
        const word name_;

        //- Reference to main object registry
        const Time& time_;

        //- Region name
        word regionName_;

        //- History point ID
        label historyPointID_;

        //- History point
        vector refHistoryPoint_;

        //- Write velocity
        bool writeVelocity_;

        //- Processor of history point
        label processor_;

        //- Forces/moment file ptr
        autoPtr<OFstream> historyFilePtr_;

    // Private Member Functions

        //- Write data
        bool writeData();

        //- Disallow default bitwise copy construct
        pointHistory
        (
            const pointHistory&
        );

        //- Disallow default bitwise assignment
        void operator=(const pointHistory&);


public:

    //- Runtime type information
    TypeName("pointHistory");


    // Constructors

        //- Construct from components
        pointHistory
        (
            const word& name,
            const Time&,
            const dictionary&
        );


    // Member Functions

        //- start is called at the start of the time-loop
        virtual bool start();

        //- execute is called at each ++ or += of the time-loop
        virtual bool execute(const bool forceWrite);

        //- Read and set the function object if its data has changed
        virtual bool read(const dictionary& dict);

    //- Update for changes of mesh
        virtual void updateMesh(const mapPolyMesh&)
        {}

        //- Update for mesh point-motion
        virtual void movePoints(const pointField&)
        {}
};
regarding "virtual bool execute(const bool forceWrite)", also change the method definition in .C file of each functionObjects.

Regards,
D. Khazaei
Dear Daniel,

Thanks very much for your response. It fixed most of the errors that I was encountering during the installation.
I also had to change neighbour() to slave() to fix some other errors.

The error that I get now is:

In file included from centrifugalBodyForce.C:29:0:
centrifugalBodyForce.H:71:9: error: ‘dimensionedVector’ does not name a type
dimensionedVector angularVelocity_;
^
centrifugalBodyForce.C: In member function ‘bool Foam::centrifugalBodyForce::setBodyForce()’:
centrifugalBodyForce.C:67:19: error: ‘angularVelocity_’ was not declared in this scope
bodyForce = -(angularVelocity_^(angularVelocity_^mesh.C()));
^
centrifugalBodyForce.C: In constructor ‘Foam::centrifugalBodyForce::centrifugalBodyForce( const Foam::word&, const Foam::Time&, const Foam::dictionary&)’:
centrifugalBodyForce.C:85:5: error: class ‘Foam::centrifugalBodyForce’ does not have any field named ‘angularVelocity_’
angularVelocity_(dict.lookup("angularVelocity"))
^
centrifugalBodyForce.dep:858: recipe for target 'Make/linux64GccDPOpt/centrifugalBodyForce.o' failed
make: *** [Make/linux64GccDPOpt/centrifugalBodyForce.o] Error 1

I'm not quite sure if I need to forward declare the class or this is caused by something else. I wanted to ask you if you have any idea about this.

Kind regards,
Ali
Aliiiii is offline   Reply With Quote

Old   December 15, 2018, 19:03
Default
  #4
Senior Member
 
Daniel
Join Date: Mar 2013
Location: Noshahr, Iran
Posts: 348
Rep Power: 21
Daniel_Khazaei will become famous soon enough
I'm not sure whether slave() in foam-extend-4.1 has the same definition as neighbor() in foam-extend-4.0, because I haven't checked the definition yet!

But you can use the following which I'm sure has the same meaning as neighbour(), for example if the processor patch name is "procPatch", then use:
Code:
!procPatch.master()
Although I think slave() should do the same, but check the definition to avoid any unexpected problem!


for the last error, adding "dimensionedVector.H" header file to the centrifugalBodyForce.H should make the class aware of the dimensionedVector type it is using to define angularVelocity_ variable! check if this fix the error as I'm still using foam-extend-4.0 and I can't test it.
Aliiiii likes this.

Last edited by Daniel_Khazaei; December 16, 2018 at 03:49.
Daniel_Khazaei is offline   Reply With Quote

Old   December 16, 2018, 15:47
Default
  #5
New Member
 
Ali
Join Date: Jun 2018
Posts: 5
Rep Power: 8
Aliiiii is on a distinguished road
Dear Daniel,

Just wanted to let you know that the changes that you suggested worked and I finally was able to install Foam FSI 4.0 on foam-extend 4.0:

For future reference, here is the summary of the changes that are needed to be done for other friends who might face the same issues:

1- As Daniel mentioned, you need to change the definition of "execute()" to "execute(const bool forceWrite)" in the following files:
1) centrifugalBodyForce.H
2) patchAvgTractionHistory.H
3) pointHistory.H

2- You also need to add these definitions to the member functions of every class deriving from functionObject class (Check the example provided by Daniel in reply to my original post)
//- Update for changes of mesh
virtual void updateMesh(const mapPolyMesh&)
{}

//- Update for mesh point-motion
virtual void movePoints(const pointField&)
{}

So just add this to:

1) centrifugalBodyForce.H
2) patchAvgTractionHistory.H
3) pointHistory.H

3- You would also need to change the definition of "execute()" to "execute(const bool forceWrite)" in the corresponding *.C files (centrifugalBodyForce.C, patchAvgTractionHistory.C and pointHistory.C)

4- ./Allwclean and ./Allwmake and you'll get errors saying that:
solidSolvers/solidModels/constitutiveModel/plasticityStressReturnMethods/kirchhoffMises/kirchhoffMises.C:1675:36: error: ‘const class FoamrocessorPolyPatch’ has no member named ‘owner’

change "owner()" to "master()" in kirchhoffMises.C (only in the lines that you get the error!)

4- ./Allwclean and ./Allwmake and you will probably get a similar error saying that

‘const class FoamrocessorPolyPatch’ has no member named ‘neighbour’
change "neighbour()" to "slave()" in ULLSMaterialInterface.C wherever it complains about this error!

5- Add "dimensionedVector.H" header file to the "centrifugalBodyForce.H"

./Allwclean and ./Allwmake and you should be good to go!

Also when running tutorials, you might wanna check this post as well (to resolve the errors):

https://www.cfd-online.com/Forums/op...tutorials.html
Daniel_Khazaei and saatt like this.
Aliiiii is offline   Reply With Quote

Old   December 20, 2018, 13:16
Default
  #6
New Member
 
behzad
Join Date: Dec 2010
Posts: 15
Rep Power: 16
arionfard is on a distinguished road
Quote:
Originally Posted by Aliiiii View Post
Dear Daniel,

Just wanted to let you know that the changes that you suggested worked and I finally was able to install Foam FSI 4.0 on foam-extend 4.0:

For future reference, here is the summary of the changes that are needed to be done for other friends who might face the same issues:

1- As Daniel mentioned, you need to change the definition of "execute()" to "execute(const bool forceWrite)" in the following files:
1) centrifugalBodyForce.H
2) patchAvgTractionHistory.H
3) pointHistory.H

2- You also need to add these definitions to the member functions of every class deriving from functionObject class (Check the example provided by Daniel in reply to my original post)
//- Update for changes of mesh
virtual void updateMesh(const mapPolyMesh&)
{}

//- Update for mesh point-motion
virtual void movePoints(const pointField&)
{}

So just add this to:

1) centrifugalBodyForce.H
2) patchAvgTractionHistory.H
3) pointHistory.H

3- You would also need to change the definition of "execute()" to "execute(const bool forceWrite)" in the corresponding *.C files (centrifugalBodyForce.C, patchAvgTractionHistory.C and pointHistory.C)

4- ./Allwclean and ./Allwmake and you'll get errors saying that:
solidSolvers/solidModels/constitutiveModel/plasticityStressReturnMethods/kirchhoffMises/kirchhoffMises.C:1675:36: error: ‘const class FoamrocessorPolyPatch’ has no member named ‘owner’

change "owner()" to "master()" in kirchhoffMises.C (only in the lines that you get the error!)

4- ./Allwclean and ./Allwmake and you will probably get a similar error saying that

‘const class FoamrocessorPolyPatch’ has no member named ‘neighbour’
change "neighbour()" to "slave()" in ULLSMaterialInterface.C wherever it complains about this error!

5- Add "dimensionedVector.H" header file to the "centrifugalBodyForce.H"

./Allwclean and ./Allwmake and you should be good to go!

Also when running tutorials, you might wanna check this post as well (to resolve the errors):

https://www.cfd-online.com/Forums/op...tutorials.html

Still doesn't work. I get the following error:


fluidSolvers/finiteVolume/RBFMeshMotionSolver/RBFMeshMotionSolver.C: In member function ‘virtual void Foam::RBFMeshMotionSolver::solve()’:
fluidSolvers/finiteVolume/RBFMeshMotionSolver/RBFMeshMotionSolver.C:297:5: error: ‘vector’ is not a member of ‘std’
std::vector<unsigned int> movingControlPointLabelsVector;


I dont even know why there is an instruction for installing different versions! non of them works!
arionfard is offline   Reply With Quote

Old   February 7, 2019, 13:59
Default
  #7
New Member
 
CHAITHANYA SUGGALA
Join Date: Dec 2015
Location: Nagpur,India
Posts: 4
Blog Entries: 1
Rep Power: 11
suggalachaitu is on a distinguished road
Quote:
Originally Posted by arionfard View Post
Still doesn't work. I get the following error:


fluidSolvers/finiteVolume/RBFMeshMotionSolver/RBFMeshMotionSolver.C: In member function ‘virtual void Foam::RBFMeshMotionSolver::solve()’:
fluidSolvers/finiteVolume/RBFMeshMotionSolver/RBFMeshMotionSolver.C:297:5: error: ‘vector’ is not a member of ‘std’
std::vector<unsigned int> movingControlPointLabelsVector;


I dont even know why there is an instruction for installing different versions! non of them works!
Dear arionfard
did you solve those errors?
Please reply
suggalachaitu is offline   Reply With Quote

Old   March 12, 2019, 19:09
Default
  #8
New Member
 
RJ
Join Date: Mar 2019
Posts: 2
Rep Power: 0
felipe.lannes is on a distinguished road
Quote:
Originally Posted by arionfard View Post
Still doesn't work. I get the following error:


fluidSolvers/finiteVolume/RBFMeshMotionSolver/RBFMeshMotionSolver.C: In member function ‘virtual void Foam::RBFMeshMotionSolver::solve()’:
fluidSolvers/finiteVolume/RBFMeshMotionSolver/RBFMeshMotionSolver.C:297:5: error: ‘vector’ is not a member of ‘std’
std::vector<unsigned int> movingControlPointLabelsVector;


I dont even know why there is an instruction for installing different versions! non of them works!
Arionfard, i had experienced the same issue. Did you fix it?
felipe.lannes is offline   Reply With Quote

Old   June 3, 2019, 06:51
Default
  #9
New Member
 
YangHongtao
Join Date: Jan 2018
Posts: 1
Rep Power: 0
MrcYoung is on a distinguished road
Quote:
Originally Posted by felipe.lannes View Post
Arionfard, i had experienced the same issue. Did you fix it?
Maybe you need to add a header file (#include <vector>) to fluidSolvers/finiteVolume/RBFMeshMotionSolver/RBFMeshMotionSolver.C.
And re-Allmake all the source files.

The problem will be fixed.
lumping and Richal Sun like this.
MrcYoung is offline   Reply With Quote

Old   August 8, 2019, 07:00
Default
  #10
Super Moderator
 
bigphil's Avatar
 
Philip Cardiff
Join Date: Mar 2009
Location: Dublin, Ireland
Posts: 1,097
Rep Power: 34
bigphil will become famous soon enoughbigphil will become famous soon enough
Hi all,

Another solution is to use solids4foam (PM me for access) which compiles with foam-extend-4.0 and foam-extend-4.1.

Philip
Aliiiii likes this.
bigphil is offline   Reply With Quote

Old   May 26, 2022, 05:53
Default
  #11
New Member
 
李室庆
Join Date: May 2022
Posts: 2
Rep Power: 0
Scott Lee is on a distinguished road
Quote:
Originally Posted by Aliiiii View Post
Dear Daniel,

Just wanted to let you know that the changes that you suggested worked and I finally was able to install Foam FSI 4.0 on foam-extend 4.0:

For future reference, here is the summary of the changes that are needed to be done for other friends who might face the same issues:

1- As Daniel mentioned, you need to change the definition of "execute()" to "execute(const bool forceWrite)" in the following files:
1) centrifugalBodyForce.H
2) patchAvgTractionHistory.H
3) pointHistory.H

2- You also need to add these definitions to the member functions of every class deriving from functionObject class (Check the example provided by Daniel in reply to my original post)
//- Update for changes of mesh
virtual void updateMesh(const mapPolyMesh&)
{}

//- Update for mesh point-motion
virtual void movePoints(const pointField&)
{}

So just add this to:

1) centrifugalBodyForce.H
2) patchAvgTractionHistory.H
3) pointHistory.H

3- You would also need to change the definition of "execute()" to "execute(const bool forceWrite)" in the corresponding *.C files (centrifugalBodyForce.C, patchAvgTractionHistory.C and pointHistory.C)

4- ./Allwclean and ./Allwmake and you'll get errors saying that:
solidSolvers/solidModels/constitutiveModel/plasticityStressReturnMethods/kirchhoffMises/kirchhoffMises.C:1675:36: error: ‘const class FoamrocessorPolyPatch’ has no member named ‘owner’

change "owner()" to "master()" in kirchhoffMises.C (only in the lines that you get the error!)

4- ./Allwclean and ./Allwmake and you will probably get a similar error saying that

‘const class FoamrocessorPolyPatch’ has no member named ‘neighbour’
change "neighbour()" to "slave()" in ULLSMaterialInterface.C wherever it complains about this error!

5- Add "dimensionedVector.H" header file to the "centrifugalBodyForce.H"

./Allwclean and ./Allwmake and you should be good to go!

Also when running tutorials, you might wanna check this post as well (to resolve the errors):

https://www.cfd-online.com/Forums/op...tutorials.html
Dear Aliiiii:
I have followed your reminder to step 3 and the error in step 4 has not occured. However, there are 3 other errors, as shown in log.txt. (the file is in my next reply) Do you konw how to fix this?
Please reply!
Scott Lee is offline   Reply With Quote

Old   May 26, 2022, 06:00
Default
  #12
New Member
 
李室庆
Join Date: May 2022
Posts: 2
Rep Power: 0
Scott Lee is on a distinguished road
Quote:
Originally Posted by Aliiiii View Post
Dear Daniel,

Just wanted to let you know that the changes that you suggested worked and I finally was able to install Foam FSI 4.0 on foam-extend 4.0:

For future reference, here is the summary of the changes that are needed to be done for other friends who might face the same issues:

1- As Daniel mentioned, you need to change the definition of "execute()" to "execute(const bool forceWrite)" in the following files:
1) centrifugalBodyForce.H
2) patchAvgTractionHistory.H
3) pointHistory.H

2- You also need to add these definitions to the member functions of every class deriving from functionObject class (Check the example provided by Daniel in reply to my original post)
//- Update for changes of mesh
virtual void updateMesh(const mapPolyMesh&)
{}

//- Update for mesh point-motion
virtual void movePoints(const pointField&)
{}

So just add this to:

1) centrifugalBodyForce.H
2) patchAvgTractionHistory.H
3) pointHistory.H

3- You would also need to change the definition of "execute()" to "execute(const bool forceWrite)" in the corresponding *.C files (centrifugalBodyForce.C, patchAvgTractionHistory.C and pointHistory.C)

4- ./Allwclean and ./Allwmake and you'll get errors saying that:
solidSolvers/solidModels/constitutiveModel/plasticityStressReturnMethods/kirchhoffMises/kirchhoffMises.C:1675:36: error: ‘const class FoamrocessorPolyPatch’ has no member named ‘owner’

change "owner()" to "master()" in kirchhoffMises.C (only in the lines that you get the error!)

4- ./Allwclean and ./Allwmake and you will probably get a similar error saying that

‘const class FoamrocessorPolyPatch’ has no member named ‘neighbour’
change "neighbour()" to "slave()" in ULLSMaterialInterface.C wherever it complains about this error!

5- Add "dimensionedVector.H" header file to the "centrifugalBodyForce.H"

./Allwclean and ./Allwmake and you should be good to go!

Also when running tutorials, you might wanna check this post as well (to resolve the errors):

https://www.cfd-online.com/Forums/op...tutorials.html
Here is my log file.
Attached Files
File Type: txt log.txt (8.0 KB, 5 views)
Scott Lee is offline   Reply With Quote

Reply

Tags
compilation error, foam extend 4.1, fsi installation problem


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
[OpenFOAM.org] I have trouble installing openfoam 5.0 on ubuntu 16.04 haydii OpenFOAM Installation 5 December 27, 2018 11:56
[waves2Foam] Difficulties installing with OpenFOAM 4.1 on Ubuntu 16.04 Ben UWIHANGANYE OpenFOAM Community Contributions 4 May 4, 2018 06:14
[foam-extend.org] Foam Extend 3.2 in ubuntu 16.04 LTS JMosiezny OpenFOAM Installation 15 December 9, 2017 09:20
[foam-extend.org] error installing foam extend 1.6 in ubuntu 12.04 christos OpenFOAM Installation 1 May 9, 2016 18:20
[swak4Foam] Basic Error when installing swak4foam with foam extend 3.0 mnobrega OpenFOAM Community Contributions 6 April 1, 2014 02:47


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