Issue when running the tutorial for ASTE

Hi,

I am following the tutorial to setup ASTE as I need to investigate the difference between the mapping methods available in preCICE for my master thesis. I use the meshes from the tutorial (ASTE (artificial solver testing environment) wind turbine blade tutorial | preCICE - The Coupling Library).

I ran the following command to generate the data:

precice-aste-evaluate --mesh meshes/0.01.vtk --function franke3d --data "dummyDataA"
precice-aste-evaluate --mesh meshes/0.03.vtk --function franke3d --data "dummyDataB"

The precice-config.xml looks like this:

<?xml version="1.0" encoding="UTF-8" ?>

<precice-configuration>
  <log>
    <sink
      filter="%Severity% > debug and %Rank% = 0"
      format=" ---[precice] %ColorizedSeverity% %Message%"
      enabled="true" />
  </log>

  <data:vector name="Forces"/>
  <data:vector name="Displacements"/>

  <mesh name="Fluid_Centers" dimensions="3">
    <use-data name="Forces"/>
  </mesh>
  <mesh name="Fluid_Nodes" dimensions="3">
    <use-data name="Displacements"/>
  </mesh>
  <mesh name="Structure_Nodes" dimensions="3">
    <use-data name="Forces"/>
    <use-data name="Displacements"/>
  </mesh>

  <participant name="A">
    <provide-mesh name="Fluid_Nodes" />
    <provide-mesh name="Fluid_Centers" />
    <receive-mesh name="Structure_Nodes" from="B"/>
    <read-data  name="Displacements"  mesh="Fluid_Nodes"/>
    <write-data name="Forces"         mesh="Fluid_Centers"/>
    <mapping:rbf  direction="write" from="Fluid_Centers" to="Structure_Nodes" constraint="conservative">
      <basis-function:compact-polynomial-c6 support-radius="1.0" />
    </mapping:rbf>
    <mapping:rbf  direction="read" from="Structure_Nodes" to="Fluid_Nodes" constraint="consistent">
      <basis-function:compact-polynomial-c6 support-radius="1.0" />
    </mapping:rbf>
    <watch-integral mesh="Fluid_Centers" name="ForcesIntegralCC" scale-with-connectivity="no"/>
    <export:vtu directory="preCICE_exports" every-n-time-windows="100" every-iteration="false"/>
  </participant>

  <participant name="B">
    <provide-mesh name="Structure_Nodes" />
    <watch-point mesh="Structure_Nodes" name="point1" coordinate="0.6; 0.2; 0." />
    <read-data  name="Forces"         mesh="Structure_Nodes"/>
    <write-data name="Displacements"  mesh="Structure_Nodes"/>
  </participant>

  <m2n:sockets acceptor="A" connector="B" exchange-directory="./" network="ib0"/>

  <coupling-scheme:serial-explicit>
    <participants first="A" second="B"/>
    <time-window-size value="0.001" />
    <max-time-windows value="1000" />
    <max-time value="1"/>
    <exchange data="Forces"        mesh="Structure_Nodes" from="A" to="B" initialize="yes"/>
    <exchange data="Displacements" mesh="Structure_Nodes" from="B" to="A" initialize="yes"/>
  </coupling-scheme:serial-explicit>
</precice-configuration>

I thought that running precice-aste-evaluate would create a .vtu file containing the mesh plus the dummy data. No such a file is created (a .vtk file is created in the folder where the command is ran), but it appears that no mesh is present: If I run the following command to launch participant A (after renaming the generated file by precice-aste-evaluate as 0p01.vtu):

precice-aste-run --mesh 0p01.vtu --data "dummyDataA" -p A

I get the following error:

---[ASTE:A:0] INFO : ASTE Running in mapping test mode
---[preCICE:A:0] INFO : This is preCICE version 3.1.2
 ---[precice]  This is preCICE version 3.1.2
---[preCICE:A:0] INFO : Revision info: no-info [git failed to run]
 ---[precice]  Revision info: no-info [git failed to run]
---[preCICE:A:0] INFO : Build type: Release (without debug log)
 ---[precice]  Build type: Release (without debug log)
---[preCICE:A:0] INFO : Configuring preCICE with configuration "precice-config.xml"
 ---[precice]  Configuring preCICE with configuration "precice-config.xml"
---[preCICE:A:0] INFO : I am participant "A"
 ---[precice]  I am participant "A"
---[ASTE:A:0] ERROR : Unable to handle basename 0p01.vtu no meshes found

I am a bit confused here. Is this happening because I didn’t partition the mesh using the given tool?

Thank you in advance for your help.

The problem here is most likely the command you use to launch precice-aste-run.

Could you try

precice-aste-run --mesh 0p01 --data "dummyDataA" -p A

The --mesh argument is the prefix, not the name. This is due to the fact that decomposed meshes are distributed among various files.

Running precice-aste-run --help:

  --mesh arg                            Mesh prefix (i.e. mesh name without the
                                        format extension such as '.vtk' or 
                                        '.vtu'). Example: solution.vtk has the 
                                        prefix 'solution'. precice-aste-run 
                                        will look for timeseries as well as 
                                        distributed meshes (e.g. from preCICE 
                                        exports) automatically and load them if
                                        required.

Thank you for your answer. I didn’t pay enough attention when reading it.

Edit: I found a working config file at tutorials/aste-turbine/precice-config.xml at master · precice/tutorials · GitHub