Calculation of Urban Morphology Parameterisations for London for use with the ADMS-Urban Dispersion Model

Two algorithms have been developed to parameterise the urban morphology of a large urban area, for use with the ADMS-Urban dispersion model. One algorithm calculates parameterisations of the urban canopy, as gridded values of average building height; average street canyon width; ratio of building plan area to grid cell area; and for a user-specified set of wind direction sectors, the ratio of the frontal area of the buildings to grid cell area. The second algorithm calculates parameterisations of the street canyon for individual streets for both sides of the street: canyon height, width, and length. The input data for both algorithms are detailed vector datasets of building and road geometry. The algorithms have been implemented as ArcPy Python tools within ArcGIS. Results are presented for London, calculated for the project Coupled Urban and Regional processes: Effects on AIR quality (CUREAIR). These results used building and road geometry from Ordnance Survey MasterMap Topography.


Introduction
In urban areas, high traffic flows and congestion lead to large pollutant emissions.The resultant concentrations depend on the morphology of the urban area; wind speeds at ground level reduce where there are densely packed buildings and street canyons, resulting in increased concentrations.Further, the urban fabric alters the local climate so that the temperature gradient is rarely stable.Within street canyons, there may be channelling of the flow and a recirculation region driven by the component of the above-canopy flow perpendicular to the street; for street canyons with high aspect ratios, flow velocities may reduce significantly near the ground.
The atmospheric dispersion model ADMS-Urban contains modules to improve the model's predictions of concentrations in urban areas (CERC 2016;Hood 2014).The urban canopy module calculates a spatially varying flow field due to variations in building density and geometry at neighbourhood scales.The advanced street canyon module allows for detailed calculation of the effects of a wide range of individual street canyon geometries on the dispersion of pollution from road sources.These modules require input data characterising the urban morphology of the study domain.
The urban canopy module in ADMS-Urban requires a raster dataset containing gridded values of the average building height, the average street canyon width (ĝ), the ratio of the plan area of buildings to grid cell area (λ P ) and, for a user-specified set of wind direction sectors, the ratio of the frontal area of buildings to grid cell area (λ F ). Grid cell dimensions are set so that these parameters are able to represent the features of distinct urban neighbourhoods (typically 500 m to 2 km).
The advanced street canyon module in ADMS-Urban requires values of the following parameters for each road, for each side of the road centreline: building height, distance from road centreline to canyon wall and length of road with adjacent buildings.This paper presents algorithms to derive these parameterisations from vector datasets of building and road geometry.These algorithms have been implemented as software tools and are now included as part of the ADMS-Urban modelling suite.

Data
The algorithms presented in this paper require vector datasets of building and road geometry.The building dataset must contain features for individual buildings, with polygons for their horizontal footprint and attributes for the height of the building.The road geometry dataset should contain features for individual roads and streets, with poly-line vector geometry for the road centreline and attributes for the road width (kerbside to kerbside).Such datasets are widely available for modern cities.
Practical complications can arise from building datasets which may contain multiple features for individual buildings.For example there may be one dataset for building podia and a separate dataset for the accompanying main buildings.This building configuration is found on some skyscrapers such as Lever House in New York which has a wide, single-story podium at the base and a narrower, multiple-story tower above (Figure 1).

Figure 1: Lever House in New York
Another possible source of practical challenges arises from generalisation: the simplification of the representation of geographical data to produce a map at a certain scale.To be readable at a smaller scale, some objects are removed; others are enlarged, aggregated and displaced one to another, and all objects are simplified (Shekar and Xiong, 2008).Complications can arise if the building dataset has been generalised to a different scale than the road dataset; the relative positions and distances between roads and buildings might not be accurate and in extreme cases road features might intersect building features.
The results for London presented in this paper make use of building and road datasets from the Ordnance Survey MasterMap (Ordnance Survey 2014).The building dataset is the MasterMap Topography Layer and the road dataset is the Integrated Transport Network Layer.The building and road datasets have been generalised to the same scale so there were no issues in using these data.The road dataset is the same one used for the London Atmospheric Emissions Inventory 2010 (Greater London Authority 2013).The Building Height Attribute is an alpha release and is supplied as a separate comma-separated-variable format file which had to be joined to the building data in the Topography Layer.There are several height fields in the data (Figure 2).We used the field RelH2, relative height from ground level to base of the roof (m).

Urban Canopy Algorithm
The algorithm presented here draws on the work by Stephen Evans of UCL (Evans, 2009), who developed methods to calculate urban canopy parameterisations for the LUCID project; the development of a Local Urban Climate Model and its Application to the Intelligent Development of Cities.
The input data for the algorithm are shown in Table 1.The output grid extent (minimum and maximum x-and y-coordinates) and cell size (m) The output data produced by the algorithm are shown in Table 2.These parameters are calculated as raster data, with separate values for each cell in the rectangular output grid, describing the urban canopy in the neighbourhood of the grid cell.Average building height within the grid cell Lambda P λPa measure of building coverage at ground level Lambda F ΛFa measure of building frontage for particular wind directions The road width calculation proceeds as follows.For each cell, all of the road features in the Road Layer which intersect the cell are identified and clipped to only include sections within the cell.The average or neighbourhood-scale road width for the cell is calculated as the average value of the widths of all road features within that cell, weighted by the length of each road feature.
λ P is calculated as follows.For each cell, all of the building features in the Buildings Layer which intersect the cell are identified and clipped to only include sections within the cell.The value λ P is calculated as the ratio of the horizontal area in the cell taken up by building features to the total area of the grid cell.
λ F is calculated as follows.For each cell, all of the building features in the Buildings Layer which intersect the cell are identified and clipped to only include sections within the cell.The calculations are performed for each of the wind directions provided by the user.The vertical area for each building, for each direction, is calculated from the product of the cross-wind area of the building (see Figure 3) and its height.λ F is the ratio of the sum of these vertical areas divided by the total horizontal area of the grid cell.The input dataset may contain two or more buildings or buildings of varying height in the same location.This data might represent a building comprised of a podium and a main building element as shown in Figure 1.The algorithm treats these cases by apportioning the height and length of each part of the building(s) into multiple segments.If one building feature completely contains a higher building, the tool assumes the overlapping feature represents part of one continuous building and that the actual height above ground level at each point is the maximum height (not the sum).The approach is illustrated in Figure 4.

Figure 4: Illustration of the approach taken with varying building height
Adjoining (touching) buildings are counted separately for , not merged.The algorithm does not treat internal building faces; it only takes into account the widest points of a building perpendicular to the wind direction.The tool does not support buildings data in which multiple buildings overlap without one building completely containing another.
The value of is then determined from the sum of the building vertical areas, divided by the total area of the cell, giving the ratio of the cross-wind vertical area to cell size.

Street Canyon Algorithm
The input data for the algorithm are shown in Table 3.The output data produced by the algorithm are shown in Table 4.These parameters are calculated for each individual road feature in the input data.Width from road centreline to the street canyon for each side of the road (m) Canyon length Length of the road which is considered as a street canyon for each side of the road (m) These output data are illustrated in Figure 5.The algorithm first identifies all buildings that may affect the road.It starts by finding all buildings within the tolerances defined by the user.The building distance tolerance settings define a region beyond the base building.Any buildings, or building parts, in this region will be included in the canyon height calculations.
The Building distance tolerance is a combination of a proportion of the minimum distance (from the road centreline to the nearest building) and a constant distance.The Building distance tolerance (proportion) defines the proportion used.For example, a proportion of 0.5 would include buildings that are within half the minimum distance beyond the nearest building.The Building distance tolerance (metres) defines the constant component of the distance tolerance.For example, a setting of 2 would include buildings that are within 2 metres beyond the nearest building.These tolerances are illustrated in Figure 6.

Figure 6: Illustration of the building distance tolerance settings
The left and right side calculations are carried out independently.For each road segment and each side of the road, the algorithm:  Finds a suitable base building close to the road on that side.If the Target minimum proportion of road with buildings is set to 0.0, the base building will be the nearest building to the road.For other values of Target minimum proportion of road with buildings, the selected base building may be further away in order to achieve better coverage.It selects the nearest building likely to satisfy the target minimum proportion, or if no building is likely to satisfy that proportion, it chooses the building likely to give the highest coverage.
 Calculates a buffer distance: where, x is the minimum distance from the base building to the road centreline, f is Building distance tolerance (proportion), and b is Building distance tolerance (metres).
 Locates all building faces within the buffer distance, perpendicular to the road centreline. Stores the height and length of each building face as projected onto the road centreline, as illustrated in Figure 7.When two or more buildings or buildings of varying height are found in the same location, the height and length of each part of the building(s) is apportioned into multiple segments.The approach is illustrated in Figure 4 above.
Buildings that touch or cross the road centreline are ignored for the relevant road segment.
The output parameterisations from the algorithm, as shown in Figure 5, are calculated from the projected extent of the buildings that are deemed to affect the road, for each road feature and side of the road, based on the user-defined tolerances.The start of the canyon is defined as the distance from the first road vertex to the first building within the buffer calculated from the building distance tolerances.The length of the canyon is determined from that start point to the last building within the buffer around the road, such that it includes gaps.The canyon width and maximum, minimum and average height are only calculated for sections of the road considered to be within a canyon (where a building occurs within the buffer region).There is no double-counting: if a portion of the road is affected by multiple buildings, the width to the nearest point of the nearest building is used.The length of buildings in a canyon is calculated as the length of buildings within the canyon length, excluding gaps between buildings.

Implementation of both Algorithms as ArcPy Python Tools in ArcGIS
Both the algorithms have been implemented as user-friendly tools using the ArcPy Python package which enables geographic data analysis to be automated with Python in the ESRI ArcGIS platform (ESRI, 2016).The use of ArcPy simplified the implementation since (1) it was possible to take advantage of geoprocessing tools such as clipping a set of features to a polygon and (2) it was straightforward to create a user-friendly user interface for the tools.Figure 8 shows the user interface for the urban canopy tool.The urban canopy and street canyon tools have been used to calculate parameterisations for London.
The input road and building vector datasets were taken from OS MasterMap as described above.The study region was Greater London, covering an area of approximately 60km x 50 km which contains over 4 million buildings.The previous study (Hood et al., 2014) used a study area of 10 km x 15 km in central London.
The urban canopy grid resolution is 1 km and the wind direction sectors are 0

Figure 2 :
Figure 2: Height fields in the OS MasterMap Building Height Attribute dataset

Figure 3 :
Figure 3: An example of cross-wind area (blue) for a building (white) that is not aligned to the wind directionFigure taken from Evans 2009

Figure 5 :
Figure 5: Illustration of the output parameters from the street canyon tool for a particular street, showing the left hand side of the streetThe algorithm treats each road in turn in the input road dataset.

Figure 7 :
Figure 7: Example tolerance distance for the right hand side of a road feature

Figure 8 :
Figure 8: the user interface for the urban canopy ArcPy tool building tolerance proportion was 0.3 and the distance was 14 m.The coordinate precision was rounded to the nearest metre, the target minimum proportion of roads with buildings was 0.4 and the maximum distance to the nearest building was 50 m.The results were as follows.The average building height across the study region was 5.5 m.The street canyon tool indicated that 65,136 of the 72,894 roads in the study are street canyons; with average canyon height of 9 m and width of 19 m.Around 19 % of the canyons are fully asymmetric, with a canyon wall on only one side.Figures 9 and 10 show the average building height and canyon width over the study area.

Figure 9 :Figure 10 :
Figure 9: Urban canopy results showing average building height in each 1 km 2 grid cell

Table 1 :
Input Data for the Urban Canopy Algorithm Shapefile(s) containing additional building layers each with building height (m).These additional layers contain additional features such as building podia.Lambda F Directions Wind direction sectors in degrees (°) for the λF calculation Output grid extent and cell size

Table 2 :
Output Data from the Urban Canopy Algorithm

Table 3 :
Input data for the street canyon algorithm

Table 4 :
Output data from the street canyon algorithm: street canyon propertiesOutput data Notes Canyon heightMinimum, maximum and mean canyon height are calculated for each side of the road (m) Canyon width