{% extends "dashboard/base.html" %} {% load static %} {% block title %}Help{% endblock %} {% block content %}
R2H2 is a desktop simulation tool for renewable-to-hydrogen systems. This page covers the key workflows and tips to get the most from the app.
A controller is a Python file with a single control(units, battery, t_out, settings) function. It replaces the built-in dispatch logic and lets you implement custom on/off scheduling or proportional sharing strategies.
On the simulation detail page, open the Controller panel → click New → choose a base file and enter a name (lowercase letters and underscores only, no .py extension). Edit the code directly in the browser. Click Save before running.
Full reference: Dynamic Controller User Guide
If a custom controller takes longer than 30 s for a single hourly call, it is automatically cancelled and the built-in dynamicControl is used as a fallback. A warning is raised in the run log.
Custom controllers must be causal: for output sample k, only input data from indices 0..k and prior internal state may be used. Do not use future samples beyond the current time step when making a decision.
On the Models & Simulations list, use the duplicate icon to copy a simulation including all its component links. Useful for parameter sweeps.
Set a Datum date on the simulation to align result charts to a real calendar timeline rather than elapsed hours.
Use the Duration (days) field to run only the first N days of a wind file, useful for quick parameter checks before running the full year.
Run python manage.py create_main_model to recreate the Main Model simulation and its pre-configured components if they are missing. Use --overwrite to force a full reset.
A running simulation can be cancelled at any time via the Cancel button on the simulation detail page. Partial results are discarded.
| Version | {{ version }} |
| Licence | GNU GPL v3 |
| Authors | Adam Stock, Francesco Superchi, Peter McCallum |
| Institution | Heriot-Watt University |
| Source | github.com/RenewableTools/R2H2_app |
| Django | {{ django_version }} |
| Python | {{ python_version }} |
Pull the latest source code from GitHub. You will need to restart the app after updating.