Python-DWSIM Interface Developer

Job ID: 39524834

Budget: $30 – $250 USD

You will own the bi-directional interface between our Python core and DWSIM (and other open-source simulators). That means:
Input generation: From Python data structures → JSON configuration files that launch DWSIM cases.
Simulation control: Programmatically start, pause, and query simulations via COM or pythonnet, capturing results in real time.
Output ingestion: Parse DWSIM results back into Python (JSON, DataFrames) for downstream analysis.
Sensitivity analysis: Automate batch simulations across key parameter ranges, generate tornado charts and response surfaces.
Cross-platform support: Ensure scripts run reliably on macOS, Windows, and Linux.
You’ll deliver a “human-like” integration: the code will import components, assign unit operations, link streams, run cases, extract performance metrics—all without manual GUI clicks.

Key Responsibilities
Design & implement a JSON-based schema for simulation input (unit operations, streams, properties) consumable by DWSIM or any CAPE-OPEN-compliant tool.

Develop a Python wrapper that:
Launches DWSIM in batch or headless mode.
Reads/writes simulation files and captures logs.
Exposes a simple API

Build sensitivity modules to:
Vary feed compositions, temperatures, pressures, and equipment design specs.
Collect results and summarize in tabular and JSON format

Ensure cross-OS compatibility, using pythonnet, subprocess, or direct COM where needed, and fallback strategies if dependencies differ.

Document the end-to-end workflow, including example configs, installation steps, and troubleshooting tips