I’m attempting to simulate blood flow through a flexible carotid artery. This is essentially the elastic-tube-3d tutorial, but with a bifurcation in the tube and prescribed flow waveforms at the inlet. Admittedly, I have not done anything to initialize the flow (initial velocity = [0, 0, 0] everywhere). I also haven’t played much with the material properties or the arteries constitutive equation. For now, it’s just a linear elastic material with a density close to the fluid density. I realize this sets up a precarious coupling scenario, and I need to explore mapping methods, coupling schemes, and acceleration methods more. For now, I’m using nearest neighbor mapping and parallel implicit coupling with Aitken acceleration. All of this, given my non-initialized flow and current time step size is leading to what I’m interpreting as a diverging solution at the first time step.
It seems pretty clear that Calculix is not converging, and is attempting to shorten the time step (inducing sub-cycling) in order to converge (solid.log (39.4 KB))
It also seems pretty clear that OpenFOAM (pimpleFoam) is also not converging, but not trying to modify the time step. This is consistent with pimpleFoam behavior even if adjustTimeStep is on – the first time step is never adjusted. (fluid.log (794.9 KB))
I’ll certainly accept any advice on how to drive toward convergence, generally, but the real interest here is that the simulation never shuts down. There is no overall divergence error that shuts down preCICE or either of the individual solvers. It appears that OpenFOAM has reached another failed attempt to converge within 50 pimpleFoam outer iterations and is waiting for updated information from the Calculix solver via preCICE. However, Calculix gets stuck in its 4th iteration and never passes any data. I left this sim running for 12+ hours and it remained in this state. Am I just missing something within Calculix to get it to report a divergent sim and shutdown? I’m assuming this would then trigger a preCICE/OpenFOAM shutdown. If Calculix never sends anything, is there an overall timeout parameter I can set within preCICE to shutdown if data is never passed?
Any advice is much appreciated.