Hello,
I am setting up a CHT case with three regions (one fluid, two solids). Region Capsule is between regions PCM and Water and coupled to both of them.
I am using the fluid region as “master-region” and want the coupling time step to be equal to the fluid time step, which is adjusted automatically by OpenFOAM using adjustTimeStep. The solids should adapt to the fluid time step.
Serial-explicit coupling schemes with method=“first-participant” are used:
- first: Water - second: Capsule
- first: Capsule - second: PCM
With adjustTimeStep=on in both solid regions, the simulations do not start if the initial time step of the solid simulations is smaller or larger than the fluid time step. I get the following Error message:
(0) 13:49:10 [impl::SolverInterfaceImpl]:405 in advance: ERROR: advance() cannot be called with a timestep size of 0.
With adjustTimeStep=off in both solid regions, the simulations do not start if a initial time step higher than the fluid time step is set in the solids.
---[precice] ERROR: The timestep length given to preCICE in "advance" 0.003 exceeds the maximum allowed timestep length 0.00032286454805998625 in the remaining of this time window. Did you restrict your timestep length, "dt = min(precice_dt, dt)"? For more information, consult the adapter example in the preCICE documentation.
With adjustTimeStep=off, if the initial time step of the solids is set smaller than the fluid time step, the solid solvers sub-cycle, which is not desirable in my case.
Time = 0.0003
...
---[precice] Time window completed
---[precice] Water: iteration: 1, time-window: 1, time: 0.0003 of 250, time-window-size: 0.000322865, max-timestep-length: 2.28645e-05, ongoing: yes, time-window-complete: no,
PCM: iteration: 1, time-window: 2, time: 0.0003 of 250, max-timestep-length: 250, ongoing: yes, time-window-complete: yes,
...
Warning in the preCICE adapter:
The solver's timestep cannot be larger than the coupling timestep. Adjusting from 0.000300 to 0.000023
...
Time = 0.000322865
...
---[precice] Water: iteration: 1, time-window: 2, time: 0.000322865 of 250, time-window-size: 0.000359798, max-timestep-length: 0.000359798, ongoing: yes, time-window-complete: yes,
PCM: iteration: 1, time-window: 3, time: 0.000322865 of 250, max-timestep-length: 250, ongoing: yes, time-window-complete: yes,
---[preciceAdapter] The solver's timestep is smaller than the coupling timestep. Subcycling...
...
Time = 0.000622865
Do I have to specify something else to disable sub-cycling? How can I set up the coupling in order to get the same time step in all three regions, dictated by the fluid region?
I am using preCICE 2.4.0 and the openfoam-adapter 1.1.0 with OpenFOAM-v2112
Thanks in advance!