Note: This is documentation for version 4.11 of Source. For a different version of Source go to the Space Directory.
Page tree
Skip to end of metadata
Go to start of metadata

The following walk through will go through:

  1. How to setup a water user with an Urban Developer Demand
  2. How to hook Urban Developer Template Databases to Dwelling Group within the Urban Developer Demand
  3. How to change the distributions of Occupancy and efficiency of End Use items within the Dwelling Group
  4. How to use the Urban Demand Parameteriser to configure a large number of Urban Demand dwelling numbers and Occupancy rates

Supporting Files:

Start Project: 

End Project: 


1. Load the starting project in Source with the Urban Developer plugin active. 

2. Review all the Urban Developer scenarios and look at the configuration of each node. The following are the major difference between the Scenarios:

  • Apartments: Has no roof, no tank, and no outdoor demand
  • Detached: Has no roof or tank. Has a standard outdoor demand
  • Detached With Tank: Has roof, tank, and standard outdoor demand
  • Semi-Detached: Has no roof or tank. Has a reduced outdoor demand

3. Each of these Scenarios could be configured to run in the following modes:

  • Urban Configuration: Runs the network without any alterations to the behavioural node. End use efficiencies, occupancy, and number of dwellings can be specified.
  • Urban Configuration with Sampling Turned On: Runs the network for specified number of dwellings in the behavioural node. To do this, the node generates houses based on the defined sampling occupancy, and end use efficiency distributions specified in the sampling configuration. 
  • Urban Combination Configuration: Runs the network for each permutation of occupancy and end use efficiency for a single dwelling. This builds out database of dwelling average demands to generate bulk water demands in the Urban Demand of a Water User.   

4. We will be using the Urban Combination Configuration runs for our Urban Scenarios. This will generate average demand database for all the potential combinations of dwellings the Urban Scenario could have. This will mean we would have run information for:

  • Occupancy = 0, Shower = Standard, Hand Tap = Standard, Toilet = Single - All, Washing Machine = Top Loader, Pool = No Pool
  • Occupancy = 1, Shower = Standard, Hand Tap = Standard, Toilet = Single - All, Washing Machine = Top Loader, Pool = No Pool
  • Occupancy = 2, Shower = Standard, Hand Tap = Standard, Toilet = Single - All, Washing Machine = Top Loader, Pool = No Pool
  • .
  • .
  • Occupancy = 6, Shower = Standard, Hand Tap = Standard, Toilet = Single - All, Washing Machine = Top Loader, Pool = No Pool
  • Occupancy = 0, Shower = Efficient, Hand Tap = Standard, Toilet = Single - All, Washing Machine = Top Loader, Pool = No Pool
  • Occupancy = 1, Shower = Efficient, Hand Tap = Standard, Toilet = Single - All, Washing Machine = Top Loader, Pool = No Pool
  • Occupancy = 2, Shower = Efficient, Hand Tap = Standard, Toilet = Single - All, Washing Machine = Top Loader, Pool = No Pool
  • etc

This will result in our database consisting of Occupancies X Showers X Hand Taps X Toilets X Washing Machines X Pools number of runs. Also note that only the Main Supply recorder is turned on for the Behavioural nodes. Each runs size will be determined by the run length and the number of recorders turned on. So to reduce their size we only turn on the recorders which will be used in the City Bulk Water Schematic. 

Run each of the Urban Scenarios, making sure switch to the Urban Combination Configuration. If you need these runs to be quicker, feel free to reduce the run length (remember the run period has to be covered by the rainfall and evap time series data). 

Once complete the results manager (F10 if it does not appear automatically) will show a run with sub-runs like so.

5. Now that we have run the Urban Combination Configurations for each of our templates and generate the average demand lookup databases for our dwelling groups, we can turn our attention to the bulk water system. Open the City Bulk Water Scenario.

6. In this model we have a water supply that is essentially infinite, and water users drawing water from a supply point. There are no restrictions or special considerations in this simple network, its mainly setup to show how the demand could be transferred from Urban Developer Templates into Water Users in a bulk water system. 

The key nodes to review are the Water User nodes, which have Urban Demands configured for them. Take a moment to review the configuration of the UD1 Water User too see the Dwelling Groupings we have selected and how they are setup.

Of note the Water User Demand for UD1 has Four Dwelling groupings which match the Urban Developer Templates we have created earlier. To add a dwelling group lets delete the apartments grouping, and then add a new configuration and name it "Apartments".


7. After renaming the configuration. Choose the "Use Scenario Results" to allow selection of results from an Urban Developer Template Database. Next Select the Apartments for the Selected Urban Scenario. This will then populate the "Selected Run" drop down with the list of runs available in the current Source session.   

8. After choosing the Selected Run, the Available Recorders list will be populated with values that can be taken from the selected runs database. This allows for transferring of any recorders value from the Urban Template Database to the Bulk Water System (e.g. Tank Demand, Alt. Supply 1 Demand). For the moment we have the Main Supply Volume of the Behavioural node which we will take 100% of to contribute to our demand for this Water User. 

9. As a standard as soon as the template is hooked to the Dwelling Group (Configuration), inside the Urban Developer Demand model, all the End Use items and default probabilities are copied over as well. These can be reloaded at anytime for the Dwelling Group by using the "Reload End Uses" button. These probalbities will be used to calculate the demand for the Apartments proportion of the Dwelling Groups demand. For exmaple, if the Occupany distribution looks like the following:

UD1 will have the following distribution of dwelling occupancy: 

  • 10% will have zero occupants
  • 30% will have one occupant
  • 35% will have two occupants
  • 15% will have three occupants
  • 10% will have four occupants
  • No house will have 5 or 6 occupants

Note that this will split houses if required so that the distribution is honoured. If this is not the desired behaviour, number of houses can be used as the probability for each occupancy level. This distribution setup is available for each End Use types as well.  

10. In addition to the default distribution, there is also Time Base Distribution for Occupancy and each End Use Item. These work the same as the default, but allowing the distribution to be changed on a give date. To set one of these up, open the Apartments dwelling group and then select Shower, and then Time Based Distribution. Next right click the tree item and select the Import option. 

11. Now in the file open dialog, locate the folder where the "" was extracted to and find the UD1 folder. 

12. This will then load set of distributions that range from 1900 all the way to 2016. Note the data only needs to include time points for when the distributions change (e.g. Efficient Showers only increase in use after 2000). Also it has been chosen to change the distributions at the beginning of the year. 


This operation can also be performed for UD2 and UD3 Shower Time Based Distributions. 

13. Next will be using the Urban Water User Parameteriser to generate dwelling numbers and occupancy distributions from GIS data.  

Inside the "parameteriser-set" folder (extracted from "") there are years of GIS and statistics data for dwelling numbers and occupancy distributions. The SDZ_SA2_2000 shape file looks like:

The GIS map shown here is the splitting up of supply zones (our water users in the schematic bulk water scenario) by the statistics zones (for example census boundaries). All shapes require three attributes to be defined for them:

  • Area: The size of the shape (e.g. m2) 
  • Statistics Zone ID: An identifier for the zone to pull statistics from. Used to lookup statistics in a CSV. Also used to calculate the total size of statistic zone area, and the calculation to extra a proportion of the statistics for the area.
  • Demand Zone: The identifier for the Water User in the Bulk Water Schematic. 

  The parameteriser will calculate the total area of a statistics zone, and extract proportions of each statistic (in this case occupancy distribution) for the demand zone. For example:

  • shape A is 40m2 and is in urban demand UD1
  • shape B is 50m2 and is in urban demand UD2
  • shape C is 10m2 and is not in any urban demand zone

All these shapes are inside stat zone SZ1. 

Shape A will contribute 40% of SZ1 statistics to UD1, while shape B will contribute 50% of SZ1 statistics to UD2. 10% of the statistics in SZ1 will not be used in this case as they are not covered by the urban demand zone.

The statistics file looks like the following, where the columns are the statistics to import. Each row is a statistics zones entry.

Statistics column heads which are able to be imported are in the format:

  • <%Dwelling Group Name%>_O<%Occupancy Number%>

Therefore a column of "Detached_O3" will be imported into the Detached Dwelling Group and update the proportion of dwellings with three occupants. 

14. To import the data using the parameteriser, while in a Schematic Scenario (City Bulk Water) select Edit | Urban Demand Configuration... menu item. The Urban Demand Plugin Configuration dialog will open and the "Dwellings & Occupancy" tree item will be selected. 

15. Next add a Dwelling & Occupancy Data Store item by clicking the Add button below the table. This will add a Data Store for a given year which can be generated from the shape file and statistics csv. Select edit to open the parameteriser for the Data Store row. 

16. Using the triple dot button, open the file selection dialog to locate the year 2000 shape file from the supplied files. Then select the Demand Zone Field, Area Field, and Statistics Lookup Field from the shape file. Next use the Lookup CSV triple dot button to locate and load the year 2000 statistics CSV file. Make sure to select the correct Statistics Lookup Field column for the CSV as well. Once these are loaded click Generate Data Table from Statistics.

17. The data table will now contain the statistics values for each Urban Demand Zone found in the shape file. The values will be equal to the proportional value of statistics based on the overlapping demand zones area.

Statistics IDAreaDemandZonePercentage Of Statistics Area
Sum Area17569228

The above shows that Statistics Zone 210011228 will contribute proportions of its statistics to UD1, UD2, UD3, UD4, and UD6. The contributions are based on proportion of area those urban zones overlap with the statistics zone. 

18. We can now perform step 15 and 16 for the data held in the 2006 folder. Once generated the Urban Water User Parameteriser will have the following entries. 

19. The datat store can now be applied to the Urban Demand models in the network. At the bottom of the table press the "Apply Data Store to Demand Models". This will load a prompt double checking that altering the data for the Dwelling distributions overtime is what is desired. Click Yes on the dialog.

20. The import process will begin, and a detailed log report will be presented. 

It is recommended that this log is reviewed after each import to make sure any errors, or warnings are understood. For example the import should have reported the following:

  • Warning: Heading [TotalPersons_2001] for DataTable [2000] was not found in some other data tables. It is being ignored.

This warning is saying that TotalPersons_2001 appears in the first data table (year 2000), however was not found in others. This can be a valid stat, as we may not have the statics for subsequent years. The tool currently does not understand missing entries, so will report this state as a warning. 

Another item in the log is:

  • Error: The header [TotalPersons_2001] was not able to be parsed to work out what distribution it was related to. The header was found in the DataTable [2000].

This error is saying that there was a statistics field in the data table which the process did not understand, and as a consequence it ignored it. It is OK to keep fields required for other purposes, however it is not recommended. If this was the misspelling of an important statistic such as Appartment_01, it should be addressed so the import works correctly. 

20. To see the results of the import open the Urban Demand model inside one of the Water Users. 

Note that this process currently only works for the occupancy time base distributions. The process has also interpolated the step change for each, this behaviour can be turned off if desired (the setting resides in the Dwelling and Occupancy - Data Store dialog. 

21. Now run the model and then look for the Water User → UD1 → Demand Model (All) → Urban Demand → Configuration Demands → Apartments → Total Demand recorder in the results manager. It will look something like this:

The Water User → UD1 → Demand Model (All) → Urban Demand → Configuration Demands → Detached With Tank → Total Demand recorder will look something like this:

Then the overall demand for the UD1 zone can be found on the recorder Water User → UD1 → Demand Model (All) → Urban Demand → Total Demand:

  • No labels