OpenFOAM-CalculiX Coupling and olaFlow

Hello everyone,

Please, can I use olaFlow for generating waves with OpenFOAM-CalculiX coupling?
I’m using Ubuntu 20.04, OpenFOAM v2112, CalculiX v2.19, and preCICE v2.4.0.

Maybe @Stan could help here, as he has already mentioned olaFlow a few times:

Thank you so much for your reply.

Yes, of course. preCICE is a very helpful and flexible tool, so you just need to add the appropriate settings related to wave generation.

1 Like

I just try to do it but I can’t, can you help me please?

while the 3D running I had the following errors can someone help ?

blockMesh meshing...
Preparing 0 folder...
Setting the fields...
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2112                                  |
|   \\  /    A nd           | Website:                      |
|    \\/     M anipulation  |                                                 |
Build  : _6e1fca0e-20220610 OPENFOAM=2112 patch=220610 version=2112
Arch   : "LSB;label=32;scalar=64"
Exec   : olaFlow
Date   : Mar 21 2023
Time   : 12:07:31
Host   : fatiha-ghouini
PID    : 40381
I/O    : uncollated
Case   : /home/fatiha/preCICE/tutorials/flap-dans-un-canal-a-houle_IFS_3D/fluid
nProcs : 1
trapFpe: Floating point exception trapping enabled (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 5, maxFileModificationPolls 20)
allowSystemOperations : Allowing user-supplied system call operations

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

Create mesh for time = 0

Selecting dynamicFvMesh dynamicMotionSolverFvMesh
Selecting motion solver: displacementLaplacian
Applying solid body motion to entire mesh
Selecting motion diffusion: quadratic
Selecting motion diffusion: inverseDistance
Selecting patchDistMethod meshWave

PIMPLE: no residual control data found. Calculations will employ 3 corrector loops

Reading field porosityIndex

Porosity NOT activated

Reading field p_rgh

Reading field U

Reading/calculating face flux field phi

Reading transportProperties

Selecting incompressible transport model Newtonian
Selecting incompressible transport model Newtonian
Selecting turbulence model type laminar
Selecting laminar stress model Stokes

Reading g

Reading hRef
Calculating field g.h

No MRF models present

No finite volume options present
GAMGPCG:  Solving for pcorr, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 0, global = 0, cumulative = 0
Constructing face velocity Uf

Courant Number mean: 0 max: 0

Starting time loop

---[preciceAdapter] Loaded the OpenFOAM-preCICE adapter - v1.1.0.
---[preciceAdapter] Reading preciceDict...
---[precice]  This is preCICE version 2.4.0
---[precice]  Revision info: no-info [Git failed/Not a repository]
---[precice]  Build type: Release (without debug log)
---[precice]  Configuring preCICE with configuration "../precice-config.xml"
---[precice]  I am participant "Fluid"
---[precice]  Setting up primary communication to coupling partner/s
---[precice]  Primary ranks are connected
---[precice]  Setting up preliminary secondary communication to coupling partner/s
---[precice]  Prepare partition for mesh Fluid-Mesh
---[precice]  Receive global mesh Solid-Mesh
---[precice]  Setting up secondary communication to coupling partner/s
---[precice]  Secondary ranks are connected
---[precice]  iteration: 1 of 10, time-window: 1, time: 0 of 5, time-window-size: 0.01, max-timestep-length: 0.01, ongoing: yes, time-window-complete: no, write-iteration-checkpoint 
---[precice]  Compute "write" mapping from mesh "Fluid-Mesh" to mesh "Solid-Mesh".
---[precice]  Using tree-based preallocation for matrix C
---[precice]  Using tree-based preallocation for matrix A
---[precice]  Using rescaling. Solver converged after 52 of 10000 iterations due to sufficient relative convergence. Last residual norm: 2.33807e-09, limits: relative 8e-09 (rtol 1e-09), absolute 1e-50, divergence 8e+30(dtol 1e+30)
---[precice]  Mapping "Force" conservative from "Fluid-Mesh" (ID 0) to "Solid-Mesh" (ID 1) for dimension 0 with polynomial set to separate
---[precice]  Mapping "Force" conservative from "Fluid-Mesh" (ID 0) to "Solid-Mesh" (ID 1) for dimension 1 with polynomial set to separate
---[precice]  Mapping "Force" conservative from "Fluid-Mesh" (ID 0) to "Solid-Mesh" (ID 1) for dimension 2 with polynomial set to separate
---[precice]  initializeData is skipped since no data has to be initialized.
---[preciceAdapter] preCICE was configured and initialized
---[preciceAdapter] Setting the solver's endTime to infinity to prevent early exits. Only preCICE will control the simulation's endTime. Any functionObject's end() method will be triggered by the adapter. You may disable this behavior in the adapter's configuration.
Courant Number mean: 0 max: 0
Interface Courant Number mean: 0 max: 0
deltaT = 0.01
Time = 0.01

PIMPLE: iteration 1
smoothSolver:  Solving for cellDisplacementx, Initial residual = 0, Final residual = 0, No Iterations 2
smoothSolver:  Solving for cellDisplacementz, Initial residual = 0, Final residual = 0, No Iterations 2
Velocity BC on patch inlet
Solving Stokes III parameters...
Relaxation factor: 1
[0]PETSC ERROR: ------------------------------------------------------------------------
[0]PETSC ERROR: Caught signal number 8 FPE: Floating Point Exception,probably divide by zero
[0]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger
[0]PETSC ERROR: or see
[0]PETSC ERROR: or try on GNU/linux and Apple Mac OS X to find memory corruption errors
[0]PETSC ERROR: configure using --with-debugging=yes, recompile, link, and run 
[0]PETSC ERROR: to get more information on the crash.
[0]PETSC ERROR: User provided function() line 0 in  unknown file  
MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD
with errorcode 59.

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
Looking for any time directories without results (e.g. stray functionObjectProperties files, see openfoam-adapter issue #26 on GitHub)...

The present information is too limitied to figure out the possible problem. Maybe you need to upload more settings of your case for others to help you, for example, your configuration file, and settings for solid and fluid parts.

Does the uncoupled fluid simulation run normally? I am wondering why the residuals and the Courant number are perfect zeros.