Skip to content

Interface elements

Michiel den Haan edited this page Oct 5, 2018 · 2 revisions

The interface of ETLocal is available in the interface_elements folder. It's roughly split up into 'main sections' (like: 'general', 'households' etc.) and sub-sections (for example: 'households_energy_demand').

Basics

Every file is in YAML format and looks like this:

key: households_energy_demand
groups:
  - items:
      households_final_demand_electricity_demand:
        unit: 'TJ'
      households_final_demand_network_gas_demand:
        unit: 'TJ'
      households_final_demand_steam_hot_water_demand:
        unit: 'TJ'
      households_final_demand_wood_pellets_demand:
        unit: 'TJ'
      households_final_demand_crude_oil_demand:
        unit: 'TJ'
      households_final_demand_coal_demand:        
        unit: 'TJ'

The key is a name of the menu item. The groups tag allows you to define an array of items. This renders as:

Headers

Within the groups tag you're also allowed to set header-tags:

groups:
  - header: local_production
    items:
      households_solar_pv_solar_radiation_demand:
        unit: TJ
      households_final_demand_solar_thermal_demand:
        unit: TJ

  - header: heat_network_supply
    items:
      households_collective_chp_network_gas_demand:
        unit: TJ
      households_collective_chp_wood_pellets_demand:
        unit: TJ
      households_collective_chp_biogas_demand:
        unit: TJ
      households_collective_geothermal_demand:
        unit: TJ

This allows you to add a header between two series of items.

Items

Items are either direct 'sparse graph' keys (i.e. the value users fill in for this key are mapped one-to-one to a node/edge in the ETM graph) or they are not.

A direct one-to-one sparse graph key directly relates to a Node or an Edge in Atlas in combination with an attribute. All one-to-one interface elements are named like so: <node/edge name>_attribute. For example, the interface element named households_final_demand_network_gas_demand directly sets the demand of the node households_final_demand_network_gas.

The other option is to define a custom item key. By convention, custom keys start with input_. Custom keys can be used if directly setting a node/edge value is not intuitive for users. Take for example the node energy_power_supercritical_coal_production. In the ETM graph the demand of this node equals the primary demand of the coal power plant, i.e. how much coal goes into the plant. The user is unlikely to know this, but may know how much electricity is produced by the power plant. So rather than adding a key named energy_power_supercritical_coal_production_demand to the ETLocal front-end (which would directly set the primary demand of the coal power plant) we create a custom key called input_energy_power_supercritical_coal_production.

In this input field the user can specify how much electricity the coal power plant produces. We can then use a sparse graph query to convert this user input to the appropriate node demand. In this case we can do so by dividing the user input (i.e. the total electricity production) by the electricity output efficiency of the energy_power_supercritical_coal_production node. This will give us the nodes' primary demand.

Clone this wiki locally