HI:
now, I have fluent and abaqus case, fluent case is steady, abaqus case is static analysis, not steay, my question is if I will do coupling with fluent and abaqus, how to set xml file.
Hi @hikey,
I am not sure I understand what you want to do exactly. Could you please elaborate on the model of your problem?
Generally, steady-state simulations are set up as usual with preCICE. You mainly need to set your coupling time window to the number of iterations after which you want to couple.
<mesh name="Fluid-Mesh-nodes">
<use-data name="NPosition"/>
<use-data name="RelWallForceVertex"/>
</mesh>
<mesh name="Fluid-Mesh-faces">
<use-data name="RelWallForce"/>
</mesh>
<mesh name="Solid-Mesh">
<use-data name="NPosition" />
<use-data name="RelWallForceVertex" />
</mesh>
<participant name="Fluid">
<use-mesh name="Fluid-Mesh-nodes" provide="yes"/>
<use-mesh name="Fluid-Mesh-faces" provide="yes"/>
<use-mesh name="Solid-Mesh" from="abaqus"/>
<write-data name="RelWallForce" mesh="Fluid-Mesh-faces"/>
<write-data name="RelWallForceVertex" mesh="Fluid-Mesh-nodes"/>
<read-data name="NPosition" mesh="Fluid-Mesh-nodes"/>
<mapping:nearest-projection
direction="write"
from="Fluid-Mesh-nodes"
to="Solid-Mesh"
constraint="conservative"/>
<mapping:nearest-projection
direction="read"
from="Solid-Mesh"
to="Fluid-Mesh-nodes"
constraint="consistent"/>
</participant>
<participant name="abaqus">
<use-mesh name="Solid-Mesh" provide="yes"/>
<write-data name="NPosition" mesh="Solid-Mesh"/>
<read-data name="RelWallForceVertex" mesh="Solid-Mesh"/>
</participant>
<m2n:sockets from="Fluid" to="abaqus" exchange-directory=".." />
<coupling-scheme:parallel-explicit>
<time-window-size value="1" />
<max-time value="100" />
<participants first="abaqus" second="Fluid" />
<exchange data="RelWallForceVertex" mesh="Solid-Mesh" from="Fluid" to="abaqus" />
<exchange data="NPosition" mesh="Solid-Mesh" from="abaqus" to="Fluid" />
</coupling-scheme:parallel-explicit>
I do’nt sure it’s right , can you check it ?
and have another mistake as follow:
code :
if (precicec_isReadDataAvailable())
{
precicec_readBlockVectorData(displID, dynamic_thread_node_size[thread_index], node_indices, readData.data());
}
when run coupling , precicec_isReadDataAvailable() ======0, i don’t konw why?
and I have found antother mistake is:
I run fluent adapter first , and fluent adapter waiting, then I run abaqus adapter second, but fluent adapter run alone without coupling with abaqus, why? no connection?
What do the log files state?
Does maybe Fluent fail to load preCICE, but still goes on?
Important: remove any precice-run/
directory before running again.