Performance issues with the Just-In-Time mapping

Consider the use case below, where a ship hull is navigating within a large domain.

This simulation is done by coupling two solvers, A and B, with preCICE. Solver A considers the detailed flow dynamics in the near field and the ship motion of the hull. Its mesh (MeshA) is dynamically moving together with the hull. Solver B, on the other hand, considers the waves propagation in the far field, and its mesh (MeshB) is static. The coupling is achieved by mapping the data to and from the overlapping zone, as shown in the picture. I have the following three questions regarding the data mapping in this scenario:

  1. In my implementation, SolverA always initiates the Just-In-Time mapping as MeshA is dynamic and MeshB is static (if my understanding is correct, a JIT mapping should always be done by the participant with the dynamic mesh). In the example below,var2 is written to MeshB in a conservative manner. This is ok for a variable like pressure or force, but what if var2 is velocity?
  <participant name="SolverA">
    <receive-mesh name="MeshB" from="SolverB" api-access="true" />
    <read-data name="var1" mesh="MeshB" />
    <write-data name="var2" mesh="MeshB" />
    <mapping:nearest-neighbor direction="read" from="MeshB" constraint="consistent" />
    <mapping:nearest-neighbor direction="write" to="MeshB" constraint="conservative" />
  </participant>
  1. setMeshAccessRegion() must be called during the initialization stage for the JIT mapping. For the time been, a large bound box (yellow box in the picture) containing the entire course of the hull navigation is used. This has caused the simulation extremly slow but it is expected, considering the fact that this is a volume-coupling with a large access region. My second question is that, in this particular use case, is there any chance I can improve the performance? In my earlier implementations without preCICE, a similar function to setMeshAccessRegion() is called every timestep from a participant with moving to-mesh, and the data structures for a B-Spline interpolation is re-constructured on the from-mesh. This way I can keep the Access Region as small as possible and the actual overhead of this reconstruction is very minor . Not sure for RBF though.

  2. My third question is that, in the case where both the participants rely on dynamic meshes, how to perform the mapping?

Thanks in advance.