We used open source data set of trees from the city of Frankfurt ( Baumkataster Frankfurt am Main) as well as an open dataset from New York City ( NYC Open Data). These datasets only include the public trees, which causes the blind spots in the private areas. This problem is solved by allowing users to add new tree data to the application's database.
The wind data is collected from OpenWeatherMap by an API request every 5 minutes and then it is inserted into the database over time. The important wind data parameters from OpenWeatherMap are the following parameters.
- [wind.speed] Wind speed. Unit: meter/sec
- [wind.deg] Wind direction, Unit: degrees (meteorological)
The historical wind data is based on a statistical analysis of historical hourly weather reports and model reconstructions from January 1, 1980 to December 31, 2016 taken from the open source online website (Weatherspark.com [May 2017]).
Tree Blooming data
Another important base information for this project is the blooming behavior of trees taken from from Allergopharma. Around the major blooming season, the chance of blooming is even higher and in the middle of the season, the tree will definitely bloom. For pollen dispersal calculation purpose, this data can be expressed as the floating numbers from 0 to 1 where the 1 indicates the highest possibility of blooming.
Pollen Dispersal AnalysisIn order to display the dispersal of pollen effectively, the ellipse is created at the tree location with following parameters:
- Ellipse size: related to time of the year that the size will be bigger in the high pollen season and smaller in the non-pollen season.
- Ellipse position: related to the tree location.
- Ellipse direction: related to the wind direction.
- Ellipse color: related to the tree type.
- Ellipse opacity: related to pollen density.
In total, three ellipses will be generated at each tree location. Firstly, the ellipse center position (xe1, ye1 in case of the small ellipse), semi-major and semi-minor axis (a1, b1 in case of the small ellipse) have to be computed by the table below.
|Ellipse size||Compute distance l||Semi-major axis “a”||Semi-minor axis “b”|
|Small ellipse||l1 = (100) * (Fs)||a1 = (200) * (Fs)||b1 = (100) * (Fs)|
|Medium ellipse||l2 = (150) * (Fs)||a2 = (300) * (Fs)||b2 = (150) * (Fs)|
|Medium ellipse||l3 = (250) * (Fs)||a3 = (500) * (Fs)||b3 = (250) * (Fs)|
For example, in case of the peak blooming season, the small, medium and big ellipse will have the far most distance from the tree location equal to 300, 450 and 750 meters respectively as shown in the following table.
|The longest distance from the ellispe-center||Calculation Example|
|small ellipse||l1+a1 = [100 * 1] + [200*1] = 300|
|medium ellipse||l2+a2 = [150 * 1] + [300*1] = 450|
|big ellipse||l3+a3 = [250 * 1] + [500*1] = 750|
Application ServerTo deliver a fast and multiple user access a node.js server technology is implemented as the heart of the systems. It is in use as the application server and brings all components together. The system is controlled through famous node packages like express.js , require.js and pg-promise.
Client SideThe client site and the corresponding visualization consists of a combination of the following three technologies.
Web Feature ServiceFor the source of real-time wind data, the API of OpenWeatherMap is used. Through that API all 5 minutes, the wind data will be updated and used for new analysis and calculation of the pollen distribution zones.
Routing with Google Map APIThe Google Maps API is selected to used as a routing engine. It gives accurate results. It is easier to develop the routing function to the NASA World Wind with Google API. However, in this application, the call to Google Maps API is used under free license and limited requests per day/month. So that, later on, we develop the routing using the PG-Routing opensource routing tool on our server side.
Smart Routing with PG-RoutingThe application offers routing functionalities based on the open source routing – engine “PGRouting”. It contains two routing modes.
Related ResearchesFrom many pieces of research, the atmospheric parameters such as turbulence, wind velocity, and direction play a very important role in determining the dispersal of a pollen grain. Since the wind is the vector by which the pollen is transported, one would think the most influential parameter would be the horizontal wind velocity (Di Giovanni & Kevan, 1991). However, there have been a very limited number of studies done to try and quantify the correlation between distance traveled and horizontal wind velocity and those who have focused on this topic have come up with varying results.
Pollen Dispersal from tilted Gaussian plume models
Gaussian plume models are most commonly used in air-pollution studies, to predict particle concentrations in terms of distance from a ground-level point source. Many research and study use this model to apply for pollen grain as well.
This approach deals with light particles with a terminal velocity of zero, and ground level emission. Adding release height and gravitational effects (for “heavy” particles) brought about the next generation of Gaussian plume models, known as the tilted Gaussian plume (Okubo & Levin, 1989):
where p(x1) is the probability density function of locating a seed or pollen grain at a distance, x1, on the ground with respect to a point source at a given height, xr. Vt is the terminal velocity of the grain, are the time and depth-averaged horizontal wind velocity, σ is the mean eddy diffusivity (for a boundary rather than canopy layer flow) and is described as 2Ax1/, where A is the diffusion coefficient given by k(u*)(x*)/2 . Where u* is the frictional velocity, xr is the release height, and k is the von Kármán constant, regularly used for describing the logarithmic velocity profile of a turbulent fluid flow near a boundary layer. (Gail MacInnis, 2012)