<?xml version="1.0" encoding="UTF-8" ?>
<precice-configuration>
  <log>
    <sink
      filter="%Severity% > debug and %Rank% = 0"
      format="---[precice] %ColorizedSeverity% %Message%"
      enabled="true" />
  </log>

  <solver-interface dimensions="2">
    <data:scalar name="boundary-data" />

    <mesh name="dealii-mesh">
      <use-data name="boundary-data" />
    </mesh>

    <mesh name="boundary-mesh">
      <use-data name="boundary-data" />
    </mesh>

    <participant name="laplace-solver">
      <use-mesh name="dealii-mesh" provide="yes" />
      <use-mesh name="boundary-mesh" from="boundary-participant" />
      <read-data name="boundary-data" mesh="dealii-mesh" />
      <mapping:rbf-thin-plate-splines
        direction="read"
        from="boundary-mesh"
        to="dealii-mesh"
        constraint="consistent"
        use-qr-decomposition="true"
        x-dead="true" />
    </participant>

    <participant name="boundary-participant">
      <use-mesh name="boundary-mesh" provide="yes" />
      <write-data name="boundary-data" mesh="boundary-mesh" />
    </participant>

    <m2n:sockets from="laplace-solver" to="boundary-participant" />

    <coupling-scheme:serial-explicit>
      <time-window-size value="0.1" />
      <max-time value="1" />
      <participants first="boundary-participant" second="laplace-solver" />
      <exchange
        data="boundary-data"
        mesh="boundary-mesh"
        from="boundary-participant"
        to="laplace-solver" />
    </coupling-scheme:serial-explicit>
  </solver-interface>
</precice-configuration>
