Error message in coupling Fluent and EDEM on Linux

Mahdi_22303
Mahdi_22303 Altair Community Member
edited July 2023 in Community Q&A

Hi everyone, 

I have tried coupling EDEM 2022.2 and Fluent 2023.13 on Windows, and it could be done without problem. 

I need to couple these two on Linux as well. I am using the files for coupling got from this link on the knowledge base

https://community.altair.com/community?sys_kb_id=d384c1c0db2ae910cfd5f6a4e29619a3&id=kb_article_view&sysparm_rank=3&sysparm_tsqueryId=238ab52997f3e950e3b0361e6253afb8

 

When I am checking for the files compiled, it seems they are all there and compilation has been successful. However, I am getting this error when I am clicking on "Connect to EDEM" in Fluent. I am using GUI version of both Fluent and EDEM on Red Hat Linux enterprise version 8.6 on a virtual machine. I have the same problem on our HPC. For HPC, I am using GUI of both Fluent and EDEM through an interactive virtual desktop.

Initialising EDEM-Fluent Coupling. Please wait...
/ansys_inc/v231/fluent/fluent23.1.0/lnamd64/3d_host/fluent.23.1.0: symbol lookup error: lib_edem_coupling/lnamd64/3d_host/libudf.so: undefined symbol: ADAPTOR_init_connectEDEMCoupling_Address
 The fluent process could not be started.

 

Why is this happening? Are the coupling files for Linux are suitable for EDEM 2022.2 and Fluent 2023.1? 

Thank you!

Mahdi.

 

Answers

  • Stephen Cole
    Stephen Cole
    Altair Employee
    edited July 2023

    Hi Mahdi,


    This looks to be related to the environment variables, it looks like the paths to the coupling files (installed with EDEM) can't be found.

    Are you running the headless version?  There is a readme.linux file which outlines the setup of the environment variables, its best to check these have been set and that the paths are all correct:

    In the directory where this README.Linux file is, 

    run either:
        source ./tools/set_edem_env_vars.sh
        source ./tools/set_fluent_env_vars.sh
    or
        source ./tools/set_edem_env_vars.csh
        source ./tools/set_fluent_env_vars.csh

    depending on which type of shell you are using.

     

    Regards

    Stephen

     

     

  • Mahdi_22303
    Mahdi_22303 Altair Community Member
    edited July 2023

    Hi Mahdi,


    This looks to be related to the environment variables, it looks like the paths to the coupling files (installed with EDEM) can't be found.

    Are you running the headless version?  There is a readme.linux file which outlines the setup of the environment variables, its best to check these have been set and that the paths are all correct:

    In the directory where this README.Linux file is, 

    run either:
        source ./tools/set_edem_env_vars.sh
        source ./tools/set_fluent_env_vars.sh
    or
        source ./tools/set_edem_env_vars.csh
        source ./tools/set_fluent_env_vars.csh

    depending on which type of shell you are using.

     

    Regards

    Stephen

     

     

    Hi Stephen,

    Thank you for your reply and comments. 

    I have followed all steps in the ReadMe Linux file. I also checked that the .so files and libudf files were created in their respective folders. 

    Does Linux version of compilation have the same structure as Windows version? It it possible that the Linux version have different compatibility between version of EDEM and Fluent? While on Windows compilation application I could see tabs for Fluent 23.1 and EDEM 2022.2, these versions are not among those suggested in the Linux terminal (attached figure)

    Thank you.

    Mahdi.

  • Mahdi_22303
    Mahdi_22303 Altair Community Member
    edited July 2023

    Hi Stephen,

    Thank you for your reply and comments. 

    I have followed all steps in the ReadMe Linux file. I also checked that the .so files and libudf files were created in their respective folders. 

    Does Linux version of compilation have the same structure as Windows version? It it possible that the Linux version have different compatibility between version of EDEM and Fluent? While on Windows compilation application I could see tabs for Fluent 23.1 and EDEM 2022.2, these versions are not among those suggested in the Linux terminal (attached figure)

    Thank you.

    Mahdi.

    Hi Stephen,

    As an update, I used both Fluent 2021R2 and EDEM 2021.2 for coupling with the same coupling files, but the error is still there. I double checked the path to both EDEM and Fluent, and it was correct.

    Can it be something related to using of a Linux on virtual machine? 

    Thanks.

  • Stephen Cole
    Stephen Cole
    Altair Employee
    edited July 2023

    Hi Stephen,

    As an update, I used both Fluent 2021R2 and EDEM 2021.2 for coupling with the same coupling files, but the error is still there. I double checked the path to both EDEM and Fluent, and it was correct.

    Can it be something related to using of a Linux on virtual machine? 

    Thanks.

    Hi Mahdi,

    Are you launching fluent from the terminal where the environment variables were set?  The script only adds the variables to that session, not globally.  If it is still giving the same errors it would be related to not finding the files installed.

     

    Regards

    Stephen

  • Mahdi_22303
    Mahdi_22303 Altair Community Member
    edited July 2023

    Hi Mahdi,

    Are you launching fluent from the terminal where the environment variables were set?  The script only adds the variables to that session, not globally.  If it is still giving the same errors it would be related to not finding the files installed.

     

    Regards

    Stephen

    Hi Stephen,

    Sorry I had not seen this message of yours. Yes I start from the same termina where environments are set. I am doing the following steps from compilation to run.

    1- I set the environemnts in the same folder where "edem_coupling_build_headless" is 

    source ./tools/set_edem_env_vars.sh

    /opt/Altair2021.2/altair/EDEM2021.2


    source ./tools/set_fluent_env_vars.sh

    /ansys_inc/v212/fluent

    echo $FLUENT_INC

    /ansys_inc/v212/fluent

    echo $EDEM_LIBRARY_PATH

    /opt/Altair2021.2/altair/EDEM2021.2/lib

     

    2-  cd tools/

     export PYTHONPATH=${PYTHONPATH}:$(pwd)

     echo $PYTHONPATH

     /home/.../edem_coupling_build_headless/tools

    3- 

     cd edem_cfd_adaptor_build and running SCons:

        AdaptorInterface.os    CCellAndThreadData.os   CParticleData.os
    CAdaptorQuaternion.os  CFluentParticleData.os

    4- cd lib_edem_coupling and run scons

    ./lnamd64/3d_host/libudf.so
    ./lnamd64/3d_node/libudf.so
    ./lnamd64/3ddp_host/libudf.so
    ./lnamd64/3ddp_node/libudf.so

     

    5. Copy the lib_edem_coupling, load_edem_coupling.jou, set_edem_env_vars.sh, set_fluent_env_vars.sh to the working directory of problem

    6- in the working directory

    source set_edem_env_vars.sh, 

    source set_fluent_env_vars.sh

    echo $FLUENT_INC
    /ansys_inc/v212/fluent


    echo $EDEM_LIBRARY_PATH
    /opt/Altair2021.2/altair/EDEM2021.2/lib

     

    7. Start coupling server in EDEM, Read journal file, connect to EDEM

    Initialising EDEM-Fluent Coupling. Please wait...
    /ansys_inc/v212/fluent/fluent21.2.0/lnamd64/3ddp_host/fluent.21.2.0: symbol lookup error: lib_edem_coupling/lnamd64/3ddp_host/libudf.so: undefined symbol: ADAPTOR_init_connectEDEMCoupling_Address
     The fluent process could not be started.
     
    One question about starting Fluent from the same terminal where environments are set. When I set the environment of Fluent as

    /ansys_inc/v212/fluent

    echo $FLUENT_INC

    /ansys_inc/v212/fluent

     

    then when you type "fluent" to run the application, it does not start. I have added the path of fluent and EDEM bin folders to bashrc too:

    export PATH="/ansys_inc/v212/fluent/bin:$PATH"

    export PATH="/opt/Altair2021.2/altair/EDEM2021.2/bin:$PATH"

    export PATH="/opt/Altair2021.2/altair/EDEM2021.2/lib:$PATH"

    Does this bring any conflict you think? Because, if only I set the environment as only "/ansys_inc/v212/fluent" I should change directory to fluent path in the same terminal to run it. 

     

    Thank you,

    Mahdi.

     

  • Mahdi_22303
    Mahdi_22303 Altair Community Member
    edited July 2023

    Hi Stephen,

    Sorry I had not seen this message of yours. Yes I start from the same termina where environments are set. I am doing the following steps from compilation to run.

    1- I set the environemnts in the same folder where "edem_coupling_build_headless" is 

    source ./tools/set_edem_env_vars.sh

    /opt/Altair2021.2/altair/EDEM2021.2


    source ./tools/set_fluent_env_vars.sh

    /ansys_inc/v212/fluent

    echo $FLUENT_INC

    /ansys_inc/v212/fluent

    echo $EDEM_LIBRARY_PATH

    /opt/Altair2021.2/altair/EDEM2021.2/lib

     

    2-  cd tools/

     export PYTHONPATH=${PYTHONPATH}:$(pwd)

     echo $PYTHONPATH

     /home/.../edem_coupling_build_headless/tools

    3- 

     cd edem_cfd_adaptor_build and running SCons:

        AdaptorInterface.os    CCellAndThreadData.os   CParticleData.os
    CAdaptorQuaternion.os  CFluentParticleData.os

    4- cd lib_edem_coupling and run scons

    ./lnamd64/3d_host/libudf.so
    ./lnamd64/3d_node/libudf.so
    ./lnamd64/3ddp_host/libudf.so
    ./lnamd64/3ddp_node/libudf.so

     

    5. Copy the lib_edem_coupling, load_edem_coupling.jou, set_edem_env_vars.sh, set_fluent_env_vars.sh to the working directory of problem

    6- in the working directory

    source set_edem_env_vars.sh, 

    source set_fluent_env_vars.sh

    echo $FLUENT_INC
    /ansys_inc/v212/fluent


    echo $EDEM_LIBRARY_PATH
    /opt/Altair2021.2/altair/EDEM2021.2/lib

     

    7. Start coupling server in EDEM, Read journal file, connect to EDEM

    Initialising EDEM-Fluent Coupling. Please wait...
    /ansys_inc/v212/fluent/fluent21.2.0/lnamd64/3ddp_host/fluent.21.2.0: symbol lookup error: lib_edem_coupling/lnamd64/3ddp_host/libudf.so: undefined symbol: ADAPTOR_init_connectEDEMCoupling_Address
     The fluent process could not be started.
     
    One question about starting Fluent from the same terminal where environments are set. When I set the environment of Fluent as

    /ansys_inc/v212/fluent

    echo $FLUENT_INC

    /ansys_inc/v212/fluent

     

    then when you type "fluent" to run the application, it does not start. I have added the path of fluent and EDEM bin folders to bashrc too:

    export PATH="/ansys_inc/v212/fluent/bin:$PATH"

    export PATH="/opt/Altair2021.2/altair/EDEM2021.2/bin:$PATH"

    export PATH="/opt/Altair2021.2/altair/EDEM2021.2/lib:$PATH"

    Does this bring any conflict you think? Because, if only I set the environment as only "/ansys_inc/v212/fluent" I should change directory to fluent path in the same terminal to run it. 

     

    Thank you,

    Mahdi.

     

    I removed the permanent path from bashrc, and set the environments once for running the problem for both Fluent and EDEM. I started them from the same terminal, but the error persists. 

    And finally, can the Linux version be a problem too? I am using Red Hat Version 8.6. 

    Thank you.