Hi @marambh17,
Welcome to the forum as well!
First of all: as you might already have noticed, FEniCS (now often referred to as “legacy FEniCS”) is being replaced by FEniCSx. Similarly, we are now doing minimal maintenance of the legacy FEniCS adapter, and focusing our efforts on the FEniCSx adapter. For details on that, @NiklasVin and @IshaanDesai are the experts.
I assume you already have solvers for the individual domains. This should be doable in FEniCSx.
You are looking into volume coupling.
- Similarly to the FEniCS adapter, the FEniCSx adapter can generally do volume coupling. There is a tutorial in this direction.
- The CalculiX adapter cannot readily do volume coupling at the moment, although there is ongoing work in this direction (currently in lower priority).
We don’t have any examples on this right now, and I am not sure at the moment if we had any user present anything like this before with CalculiX.
However, the (only described) LS-DYNA adapter was developed for this context, for example:
As explained above. Overall, the coupling should be possible, but you would need to write some additional code.
The specific combination of solvers should not matter. I don’t have any examples on top of my head, but maybe someone else has.
One-way coupling (as an alternative of two-way) is always supported. The workflow you describe is supported by the library. For the adapters, see above.
There is documentation on each of these features, but I would recommend starting from the simplest options (one-way explicit coupling, nearest-neighbor data mapping). The meshes can be arbitrary, but of course it would be good to start from coarse meshes, until you get the technicalities working.
Looking forward to see how this might evolve!