Floating point exception while using parallel-explicit coupling scheme for two different interfaces

@dibyendu Not sure what the issue is, but I am trying to bring some relevant information to the surface. Maybe the issue becomes apparent to someone else.

This is how your preCICE configuration currently looks like, visualized:

Acceleration configuration:

      <max-iterations value="40" />
      <relative-convergence-measure limit="1.0e-5" data="Temperature" mesh="Fluid-lowerSolid-Mesh" />
      <relative-convergence-measure limit="1.0e-5" data="Heat-Flux" mesh="lowerSolid-Mesh" />
      <relative-convergence-measure data="Heat-Flux" mesh="Fluid-upperSolid-Mesh" limit="1e-5" />
      <relative-convergence-measure
        data="Temperature"
        mesh="upperSolid-Mesh"
        limit="1e-5" />
      <acceleration:IQN-ILS>
        <data mesh="Fluid-lowerSolid-Mesh" name="Temperature" />
        <data mesh="lowerSolid-Mesh" name="Heat-Flux" />
        <data name="Temperature" mesh="upperSolid-Mesh" />
        <data name="Heat-Flux" mesh="Fluid-upperSolid-Mesh" />
        <initial-relaxation value="0.01" />
        <max-used-iterations value="50" />
        <time-windows-reused value="8" />
        <filter type="QR2" limit="1e-3" />
      </acceleration:IQN-ILS>

Looking at the fluid-openfoam/precice-Fluid-iterations.log:

TimeWindow  TotalIterations  Iterations  Convergence  QNColumns  DeletedQNColumns  DroppedQNColumns  
     1      11      11       1      10       0       0  
     2      42      31       1      20      20       0  
     3      43       1       1      20      20       0  
     4      44       1       1      20      20       0  
     5      45       1       1      20      20       0  
     6      46       1       1      20      20       0  
...
  5194    5234       1       1      20      20       0  
  5195    5235       1       1      20      20       0  

I think it is suspicious that after the second time window, it always takes one iteration. It also seems like every time window is converging.

Looking at the convergence log:

TimeWindow  Iteration  ResRel(Temperature)  ResRel(Heat-Flux)  ResRel(Heat-Flux)  ResRel(Temperature)  
     1       1              inf   1.00000000e+00              inf              inf  
     1       2   1.00000000e+00   9.90000000e-01   1.00000000e+00              inf  
     1       3   4.65484637e-01   6.39474296e-02   4.65484637e-01   1.00000000e+00  
     1       4   8.36829374e-02   6.16634129e-05   5.91097005e-02   6.54257136e-04  
     1       5   6.94841058e-02   1.71483305e-03   4.90230842e-02   4.82989472e-03  
     1       6   2.62703431e-03   8.67889403e-05   4.08458512e-03   2.01203375e-04  
     1       7   7.88433309e-05   9.14203344e-04   1.31189746e-04   1.91521046e-04  
     1       8   1.84460302e-04   1.60743230e-05   2.59511491e-04   8.70440890e-06  
     1       9   2.26766342e-05   5.85727836e-05   2.69340868e-05   1.24876849e-05  
     1      10   1.16792474e-05   7.12866156e-07   1.39805558e-05   1.34874121e-07  

@dibyendu @uekerman Do you see something I don’t see?
My gut feeling tells me something is wrong with the acceleration (which data is accelerated on which mesh) or the convergence measures.

By the way, I am still a bit confused: you define upperSolid-Fluid-lowerSolid, but at the same time you write above:

You could also look into the partitioned heat conduction tutorials: Partitioned heat conduction | preCICE - The Coupling Library

By the way (again): is this case related to Configuring a Solid-Solid-Fluid CHT case in OpenFOAM?