TutorialVersion 10.2.9
Run a qualified DWSIM tank-level transient
Configure a Water-valve-tank dynamic flowsheet, monitor liquid level, and run a 10-minute transient through MCP.
1. Build the steady-state skeleton
The qualified case uses Water with Steam Tables (IAPWS-IF97): Inlet → V1 → T1 → V2 → Outlet. V1 and V2 are Valve unit operations and T1 is a Tank.
text
Inlet → V1 → S1 → T1 → S2 → V2 → Outlet2. Configure the pressure-flow network
- Inlet dynamics_spec = flow.
- Outlet dynamics_spec = pressure.
- V1: Kv_Liquid, Kv(max)=100, opening=50%, linear opening characteristic.
- T1: volume=2 m³, available liquid height=2 m, initialize using inlet stream.
- V2: Kv_Liquid, Kv(max)=400, opening=50%, linear opening characteristic.
Use dwsim_dynamics_properties before setting or monitoring a property; property ids are engine ids and should not be guessed.
3. Solve once before dynamics
text
dwsim_flowsheet_check(flowsheet_id=...)
→ dwsim_solve_run(flowsheet_id=..., timeout_s=30)The qualified model passed the flowsheet check with zero blockers and solved with zero solver errors before dynamic mode was enabled.
4. Create the dynamic schedule
text
dwsim_dynamics_setup(
flowsheet_id=...,
schedule="level-transient",
step_s=5,
duration_s=600,
method="ExplicitEuler"
)text
dwsim_dynamics_monitor(
flowsheet_id=...,
action="set",
variables=["T1.Liquid Level", "V1.PROP_VA_5", "V2.PROP_VA_5"]
)5. Save and attach an initial state
text
dwsim_dynamics_state(action="save", name="baseline", flowsheet_id=...)
dwsim_dynamics_state(action="attach", name="baseline", schedule="level-transient", flowsheet_id=...)A stored initial state makes repeated schedules comparable.
6. Check and run
text
dwsim_dynamics_check(flowsheet_id=..., schedule="level-transient")
→ dwsim_dynamics_run(flowsheet_id=..., schedule="level-transient", wait=true)| Qualified result | Observed value |
|---|---|
| Dynamic check | ready; 0 blockers; 0 warnings |
| Integration | 121 recorded steps; ~605 simulated s |
| Wall clock | ≈2.97 s on the qualification host |
| T1 liquid level | 0.0010 m → 0.6028 m |
| V1/V2 opening | 50% throughout |
Note
The liquid level was still moving at the end of this 10-minute run. This case qualifies the dynamic execution path; it is not a claim that the tank reached steady state.