You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Issues arising from adopting the adapter configuration schema for the Micro Manager #78
The Micro Manager is configured via a JSON file. To further integrate it into the preCICE ecosystem, I attempted to conform the JSON configuration to the adapter configuration schema. Several challenges arose:
The Micro Manager directly accesses the mesh received from the other participants and reads and writes data on it. Since it does not have its own mesh, the notion of an interface is not well-defined. However, having one interface would work.
A majority of the Micro Manager settings related to micro problems, adaptive solution strategies, load balancing, etc., would need to go under solver_settings, although the Micro Manager is not a solver but an orchestration tool. A better name would be tool_settings. Additionally, nested objects would need to be allowed under solver_settings to directly bring all Micro Manager settings under it. Not having nested objects would make the Micro Manager configuration difficult to digest.
The main question that comes to mind is whether it would make sense to have a tool configuration schema rather than conforming tool configurations to the adapter schema. I would like to discuss this before making breaking changes to the Micro Manager configuration.
The Micro Manager directly accesses the mesh received from the other participants and reads and writes data on it. Since it does not have its own mesh, the notion of an interface is not well-defined. However, having one interface would work.
Why would macro_mesh_name not be the one to use? I don't see the requirement to provide the mesh. This is still the mesh from precice-config.xml that the Micro Manager needs to know about.
* A majority of the Micro Manager settings related to micro problems, adaptive solution strategies, load balancing, etc., would need to go under `solver_settings`, although the Micro Manager is not a solver but an orchestration tool. A better name would be `tool_settings`.
This has been discussed in #45, implemented in #48, and I understand you could simply write micro_manager:.
Additionally, nested objects would need to be allowed under solver_settings to directly bring all Micro Manager settings under it. Not having nested objects would make the Micro Manager configuration difficult to digest.
Not sure if this is allowed at the moment, but I don't see in principle any reason not to allow that. @Logende?
Why would macro_mesh_name not be the one to use? I don't see the requirement to provide the mesh. This is still the mesh from precice-config.xml that the Micro Manager needs to know about.
Good point. In that case, having an interface is straightforward.
I understand you could simply write micro_manager:
This would be an appropriate header. To the best of my understanding, nested objects are not allowed at the moment. If they are made permissible, then conforming the Micro Manager configuration to the schema would be straightforward.
Activity
MakisH commentedon Sep 25, 2026
For context:
The basic example given from the documentation:
{ "micro_file_names": ["python/micro.py"], "coupling_params": { "precice_config_file_name": "precice-config.xml", "macro_mesh_name": "Macro-Mesh", "read_data_names": ["Macro-Scalar", "Macro-Vector"], "write_data_names": ["Micro-Scalar", "Micro-Vector"] }, "simulation_params": { "micro_dt": 1.0, "macro_domain_bounds": [0.0, 1.0, 0.0, 1.0, 0.0, 1.0] } }Why would
macro_mesh_namenot be the one to use? I don't see the requirement to provide the mesh. This is still the mesh fromprecice-config.xmlthat the Micro Manager needs to know about.This has been discussed in #45, implemented in #48, and I understand you could simply write
micro_manager:.Not sure if this is allowed at the moment, but I don't see in principle any reason not to allow that. @Logende?
IshaanDesai commentedon Sep 26, 2026
Good point. In that case, having an interface is straightforward.
This would be an appropriate header. To the best of my understanding, nested objects are not allowed at the moment. If they are made permissible, then conforming the Micro Manager configuration to the schema would be straightforward.
IshaanDesai commentedon Oct 1, 2026
Resolved via precice/adapter-schema#3