Is it possible to use precice to couple a commercial software without access to its source code?
For example, say I want to use su2 as a flow solver and couple it with the nonlinear sol400 of msc nastran, would this be even possible with precice architecture?
I did see that there is some work done about adapters to commercial s/w (ansys fluent and lsdyna), but couldn’t quite understand what are the implications of using this sort of s/w…
In some cases, this is possible via hooks for additional, user code (e.g., Fluent UDF files).
In other cases, this is possible via a Python interface. We did that to interact with the DLR TAU in this project.
In extreme cases, you can even write a (very inefficient) script that acts as an intermediary, starting and stopping the closed-source code with modified output and reading the result files. This makes sense in very computationally cheap codes. We did that to interact with CAMRAD II in the same project.
Are you the code maintainer?
Sometimes, even if you have license to see the code, you may not have permission to change it. But if you develop/maintain the code (e.g., in-house codes), you can probably do anything you like.
In that case, the best is to modify the code to call preCICE, e.g., as an optional feature. We generally prefer if solver developers maintain their own adapters, instead of us publishing additional components.
How to proceed
What features does this solver provide you to interact with it?