|
| 1 | +^{:kindly/hide-code true |
| 2 | + :clay {:title "Oakland Sound Pollution Mapping" |
| 3 | + :quarto {:author :heather-mf |
| 4 | + :draft true |
| 5 | + :type :draft |
| 6 | + :date "2026-02-26" |
| 7 | + :category :gis |
| 8 | + :tags [:gis :sound :visualization :oakland]}}} |
| 9 | + |
| 10 | +(ns gis.oakland-noise |
| 11 | + (:require |
| 12 | + [scicloj.kindly.v4.kind :as kind] |
| 13 | + [scicloj.clay.v2.api :as clay] |
| 14 | + [clj-http.client :as client] |
| 15 | + [cheshire.core :as json])) |
| 16 | + |
| 17 | +;; # Oakland Sound Pollution Mapping |
| 18 | + |
| 19 | +;; ## Overview |
| 20 | +;; Creating an animation/image series mapping approximate sound pollution levels across Oakland, California throughout a 24-hour cycle. |
| 21 | + |
| 22 | +;; ## Data Sources |
| 23 | +;; - **Road & Rail Geometries**: [Overpass QL API](https://wiki.openstreetmap.org/wiki/Overpass_API) |
| 24 | +;; - **Traffic Patterns**: Standard traffic curves for temporal modeling |
| 25 | +;; - will start with basic Standard Diurnal Daily Curves |
| 26 | +;; - Look into []Caltrans PeMS](https://pems.dot.ca.gov/) data for more specific patterns if time allows |
| 27 | +;; - Another source for West Oakland truck traffic for the Port of Oakland: [WEST OAKLAND TRUCK SURVEY REPORT](https://www.baaqmd.gov/~/media/files/planning-and-research/care-program/final-west-oakland-truck-survey-report-dec-2009.pdf) |
| 28 | + |
| 29 | +;; ## Approach |
| 30 | + |
| 31 | +;; ### 1. Data Collection |
| 32 | +;; - Query Overpass QL for Oakland road and rail network geometries |
| 33 | +;; - Categorize road segments by type (highway, arterial, residential, etc.) |
| 34 | +;; - Identify rail lines and stations, freight yards, airports, etc |
| 35 | + |
| 36 | +;; ### 2. Base Decibel Mapping |
| 37 | +;; - Assign base decibel levels to each road segment based on road type |
| 38 | +;; - Factor in rail noise sources |
| 39 | +;; - Reference standards: |
| 40 | +;; - Highway: ~70-80 dB |
| 41 | +;; - Arterial roads: ~60-70 dB |
| 42 | +;; - Residential streets: ~50-60 dB |
| 43 | +;; - Rail: ~80-90 dB (variable) |
| 44 | + |
| 45 | +;; ### 3. Temporal Multiplier |
| 46 | +;; - Apply traffic curves to model hour-by-hour variations |
| 47 | +;; - Peak hours (7-9 AM, 5-7 PM): maximum multiplier |
| 48 | +;; - Midday: moderate levels |
| 49 | +;; - Night hours (11 PM - 5 AM): minimum multiplier |
| 50 | + |
| 51 | +;; ### 4. Sound Propagation Model |
| 52 | +;; Implement Inverse Square Law for line sources: |
| 53 | +;; |
| 54 | +;; ``` |
| 55 | +;; L₂ = L₁ - 10 · log₁₀(d₂/d₁) |
| 56 | +;; ``` |
| 57 | +;; |
| 58 | +;; Where: |
| 59 | +;; - L₂ = sound level at distance d₂ |
| 60 | +;; - L₁ = sound level at distance d₁ |
| 61 | +;; - d₂ = target distance from source |
| 62 | +;; - d₁ = reference distance from source |
| 63 | +;; |
| 64 | +;; This calculates sound attenuation as distance increases from the road/rail source. |
| 65 | + |
| 66 | +;; ### 5. Output |
| 67 | +;; - Generate 24 static images (one per half hour) |
| 68 | +;; - Compile into animation showing sound levels throughout the day |
| 69 | +;; - Color gradient representing decibel ranges |
| 70 | + |
| 71 | +;; ## Technical Challenges |
| 72 | +;; - Efficient spatial queries and indexing |
| 73 | +;; - Handling overlapping sound sources |
| 74 | +;; - Realistic traffic pattern modeling |
| 75 | +;; - Performance optimization for city-wide calculations |
| 76 | + |
| 77 | +;; ## Future Enhancements |
| 78 | + |
| 79 | +;; ## Implementation Status |
| 80 | +;; 🚧 Work in progress |
| 81 | + |
| 82 | +;; --- |
0 commit comments