// WIKI

acmap

Mappatura acustica in browser: rilievi fonometrici e modello di propagazione semplificato per banda di ottava, con termini ISO 9613 e diffrazione Maekawa su edifici OSM.

Pubblicato il Aggiornato il JavaScriptLeafletISO 9613-2MaekawaOpenStreetMapApache-2.0
Codice su GitHub ↗

acmap è uno strumento dimostrativo per acustica ambientale che gira interamente in browser senza backend. Visualizza rilievi fonometrici caricati come CSV e simula la propagazione di sorgenti puntuali per banda di ottava con un modello semplificato: divergenza geometrica, assorbimento atmosferico secondo la ISO 9613-1, un termine di effetto suolo a G-factor e diffrazione Maekawa su edifici reali scaricati live da OpenStreetMap via Overpass API.

Una precisazione dovuta, perché il nome della norma è facile da fraintendere: acmap non implementa il metodo completo della ISO 9613-2. Ne usa alcuni termini — la divergenza, l’assorbimento atmosferico della Parte 1 — mentre lo schermaggio è affidato a Maekawa e non al §7.4 della norma, l’effetto suolo è un modello semplificato broadband, e mancano del tutto riflessioni, diffrazione laterale, diffrazione multipla, topografia, direttività e il trattamento meteorologico previsto dal metodo. La denominazione corretta è quindi modello di propagazione semplificato con termini della famiglia ISO 9613, non «ISO 9613-2 implementata». Questa pagina sintetizza il README e documenta metodo, assunzioni e lettura dei risultati; il riferimento autoritativo del codice resta GitHub.

Origine e valore aggiunto

Il tool nasce dal lavoro di ST-LINE sull’acustica ambientale, parallelamente allo sviluppo del prodotto commerciale SoundPro. acmap è esplicitamente un demo: strumento educativo open source che incarna l’approccio tecnico ST-LINE al calcolo acustico, senza pretendere di sostituire un modello adeguato alla metodologia né il giudizio professionale di chi firma una valutazione.

Il valore aggiunto rispetto ad altri demo acustici online è la trasparenza dei dati: gli edifici scaricati da OSM hanno quasi sempre altezze stimate invece che misurate, e acmap lo dichiara visivamente (bordi tratteggiati, statistiche % stimati, warning sopra soglia 70%). Il limite del dato è dichiarato in pagina, non lasciato dedurre da numeri presentati come certi. Quanto sia quasi sempre lo dice un conto sul dato reale: su una risposta Overpass del centro di Treviso, zero edifici su 1365 portavano un tag di altezza esplicito e solo 8 avevano building:levels.

Cosa fa

Modalità Misura: carica CSV con colonne lat, lon, leq, visualizza i punti etichettati 1..N colorati per livello, heatmap kernel density, isolinee interpolate (IDW — interpolazione cartografica, non un modello di propagazione: fra due punti misurati non c’è alcuna legge fisica che dica che il campo segua l’inverso del quadrato della distanza in pianta), statistiche aggregate. Selezionando una classe DPCM 14/11/1997 (I–VI) i punti si colorano verde (sotto la soglia selezionata) / rosso (sopra) — è un pre-screening numerico, non una verifica di conformità; vedi Come leggere i risultati. Export GeoJSON e CSV con colonna label.

Modalità Previsione: posiziona una sorgente puntuale sulla mappa con un click, scarica automaticamente gli edifici OSM nell’area da Overpass, calcola la propagazione su griglia ricevitori configurabile applicando per banda di ottava (8 bande, 63 Hz – 8 kHz) divergenza geometrica, assorbimento atmosferico (T, RH editabili), effetto suolo con G-factor, diffrazione Maekawa sul primo edificio intercettato.

Spettri sorgente (9 preset): piatto, traffico, ferroviario, industriale, basse frequenze (HVAC), più 4 sorgenti specifiche a bassa frequenza — turbina eolica, trasformatore elettrico, ronzio impianto industriale, chiller HVAC.

Ponderazione A / Z / C: l’output può essere espresso in dB(A) (default normativo), dB con ponderazione piatta (“Z”) o dB(C), che attenua molto meno le basse frequenze. Due cautele terminologiche: il dB(Z) di acmap non è «il livello fisico» in assoluto, è la somma non pesata sulle otto bande da 63 Hz a 8 kHz e ignora tutto ciò che sta fuori; e il dB(C) non è un indicatore di impulsività — in acustica ambientale italiana il carattere impulsivo si determina con la procedura del DM 16/03/1998, non da un L_Ceq. Il selettore in pannello cambia la ponderazione applicata; l’estensione della mappa e le ombre degli edifici NON cambiano con la ponderazione — cambiano solo i colori dei punti, perché la ritenzione dei ricevitori usa il livello fisico lineare.

I grafici a bande di ottava (canvas “Spettro tipico”, tooltip spettrale dei ricevitori) mostrano uno spettro in otto bande d’ottava, non una trasformata: non possono risolvere componenti tonali. Sono sono a doppia serie: barra dello spettro lineare (carattere fisico della sorgente, non pesato) accanto a quella pesata (contributo al Leq nella ponderazione scelta). Il confronto rende esplicito quanto la ponderazione A schiacci le basse frequenze: una turbina eolica appare dominata dai bassi nel lineare e mid-peaked in dB(A).

Metodo di calcolo

Il motore è condiviso con il tool calcolo-barriere (modulo @lib/physics/). In modalità Previsione, per ogni banda di ottava f ∈ {63, 125, 250, 500, 1000, 2000, 4000, 8000} Hz si calcola il livello al ricevitore:

  • Lw(f) = Lw + ΔL_spettro(f) — potenza sonora di banda. Lw va inteso non ponderato: la ponderazione A o C viene applicata dopo, banda per banda, quindi inserire un L_WA come se fosse un L_W significa pesarlo due volte. ΔL_spettro è la forma relativa del preset, e va detto che quelle forme sono stilizzate, non derivate da misure: scegliere «traffico» dà la firma spettrale tipica di una strada, non un modello di emissione stradale. Gli offset sono però normalizzati, cioè la loro somma energetica fa esattamente 0 dB: cambiare preset a parità di Lw cambia la forma dello spettro e non la potenza totale. Fino al 25 agosto 2026 non lo erano, e il totale si discostava dal Lw impostato fino a +1,36 dB.
  • A_div = 20·log₁₀(d) + 11 — divergenza geometrica (irradiazione sferica del singolo puntuale, ISO 9613-2).
  • A_atm(f) = α(f, T, RH)·d — assorbimento atmosferico, coefficiente α ISO 9613-1: cresce con la frequenza (gli acuti si attenuano in fretta).
  • A_gr — effetto suolo a G-factor (G = 0 riflettente … G = 1 assorbente), frequenza-indipendente in questo motore: un termine broadband interpolato fra −3 dB (terreno duro) e una forma di tipo «soft ground», con altezza media presa come (h_s + h_r)/2. Non è l’A_gr per banda del metodo generale della ISO 9613-2, e non è nemmeno l’applicazione del suo metodo semplificato, che è definito per livelli ponderati A, richiede terreno prevalentemente poroso, esclude i toni puri e non ammette valori negativi. Ne segue una conseguenza sugli output: gli spettri e i totali in dB(Z) e dB(C) restano utili per leggere il carattere della sorgente, ma non sono coerenti con un termine di terreno derivato da un metodo A-weighted.
  • A_dif(f) — diffrazione Maekawa sul primo edificio che la linea di vista incontra: D = 10·log₁₀(3 + 20·N), numero di Fresnel N = 2δ/λ, λ = c/f, δ differenza di cammino dell’onda che passa sopra l’edificio, con il risultato troncato fra 0 e 25 dB. Due precisazioni: il codice seleziona il primo ostacolo intercettato (firstBuildingHit), non quello acusticamente dominante — un secondo edificio più alto o più vicino al ricettore potrebbe dare un δ maggiore; e Maekawa non è il metodo di screening del §7.4 della ISO 9613-2, che ha costanti e cap diversi (vedi la wiki sulla diffrazione). Il cap a 25 dB è un limite dell’algoritmo, non un risultato fisico.

Il livello totale è la somma energetica sulle bande con la ponderazione w(f) scelta (A / C / 0 per Z):

acmap usa il metodo Maekawa per la diffrazione (la firma del modulo prevede anche il §7.4 della ISO 9613-2, usato dal tool barriere, che ha anche la diffrazione laterale). La griglia copre il bbox dell’estensione impostata con espansione radiale: i ricevitori oltre il raggio dalla sorgente vengono scartati.

Il bilancio dei termini, in numeri

La formula dice quali termini ci sono; non dice quanto pesano. Un caso concreto, prodotto dal motore dello strumento: sorgente stradale con L_w = 100 dB, ricettore a 200 m, sorgente a 1 m e ricettore a 4 m di altezza, terreno misto (G = 0,5), 20 °C e 70 % di umidità relativa.

I due termini indipendenti dalla frequenza valgono A_div = 57,0 dB e A_gr = 0,67 dB. A 1 kHz l’attenuazione complessiva è 58,7 dB, di cui 57,0 vengono dalla sola divergenza; a 8 kHz è 73,2 dB, perché l’aria ne aggiunge 15,5. Attenzione a non trasformare questi rapporti in percentuali di energia: sono decibel, e togliere 57 dB significa dividere l’intensità per mezzo milione, dopodiché gli altri termini agiscono su quel che resta. Tutto il resto è spettro:

Banda L_w(f) A_atm L_p lineare ponderazione A L_p in dB(A)
63 Hz 85,2 dB 0,02 dB 27,5 dB −26,2 1,3 dB(A)
125 Hz 89,2 dB 0,07 dB 31,4 dB −16,1 15,3 dB(A)
250 Hz 92,2 dB 0,22 dB 34,3 dB −8,6 25,7 dB(A)
500 Hz 93,2 dB 0,56 dB 34,9 dB −3,2 31,7 dB(A)
1000 Hz 94,2 dB 1,00 dB 35,5 dB 0,0 35,5 dB(A)
2000 Hz 92,2 dB 1,81 dB 32,7 dB +1,2 33,9 dB(A)
4000 Hz 88,2 dB 4,62 dB 25,9 dB +1,0 26,9 dB(A)
8000 Hz 83,2 dB 15,53 dB 10,0 dB −1,1 8,9 dB(A)

Somma energetica: 39,2 dB(A), 41,3 dB(Z), 41,2 dB(C).

Due cose si leggono a colpo d’occhio. La prima è che a 200 m l’assorbimento atmosferico è ancora trascurabile sotto i 500 Hz (frazioni di decibel) e già pesante a 8 kHz (15,5 dB). La seconda è che la banda a 63 Hz, che parte da 85,2 dB di potenza, arriva a contribuire 1,3 dB(A): la ponderazione A da sola le toglie 26 dB. In dB(Z) quella stessa banda ne vale 27,5.

Z, A e C sullo stesso punto

Da qui si capisce perché lo strumento offra tre ponderazioni invece di una. A 500 m dalla sorgente, con lo stesso L_w e tre spettri diversi:

Sorgente dB(Z) dB(A) dB(C) C − A
Traffico stradale 32,1 29,3 32,0 2,7 dB
Turbina eolica 33,8 23,1 33,4 10,3 dB
Trasformatore 33,8 23,3 33,4 10,1 dB

La colonna C − A è un indicatore spettrale, non normativo: cresce quando l’energia si sposta in basso, perché la ponderazione C attenua le basse molto meno della A. Va usato per capire dove sta il contenuto della sorgente, non come soglia: né il DPCM 14/11/1997, né il DM 16/03/1998, né la ISO 9613-2 fissano un valore di C − A oltre il quale dichiarare un problema di basse frequenze. E un C − A alto non implica di per sé un disturbo, che dipende anche dal livello assoluto, dalla tonalità, dalla durata, dal rumore residuo e dall’ambiente interno del ricettore. Turbina e trasformatore hanno in dB(Z) un livello più alto del traffico e in dB(A) uno più basso di sei decibel: lo stesso punto, con la stessa fisica, cambia graduatoria a seconda della metrica. È il motivo per cui su una sorgente a bassa frequenza il solo dB(A) può far chiudere l’analisi troppo presto. Con una riserva sul dominio: acmap si ferma a 63 Hz, quindi 31,5 Hz e le bande infrasoniche — spesso decisive proprio per turbine e trasformatori — restano fuori dal modello.

L’effetto suolo ha segno

Un dettaglio che sorprende leggendo i risultati: A_gr può essere negativo, cioè comportarsi da guadagno. Sulla stessa geometria, al variare del G:

G 50 m 100 m 200 m 500 m 1000 m
0 (riflettente) −3,00 −3,00 −3,00 −3,00 −3,00 dB
0,5 (misto) −0,25 +0,40 +0,67 +0,81 +0,86 dB
1 (assorbente) +2,50 +3,80 +4,34 +4,62 +4,71 dB

Nel modello, su terreno perfettamente riflettente il livello risulta 3 dB più alto del campo libero a ogni distanza: è la scelta di trattare la riflessione come un semplice raddoppio di energia. Va letta come una proprietà del modello, non come una legge del terreno duro: nella realtà diretto e riflesso interferiscono, e il risultato dipende da fase, quote di sorgente e ricettore, frequenza e impedenza reale della superficie — il metodo generale della ISO 9613-2 tratta infatti A_gr in modo molto più articolato. Che una superficie d’acqua o un piazzale asfaltato peggiorino la propagazione resta vero come tendenza; i 3 dB esatti sono del modello. E si vede che l’effetto del suolo assorbente cresce con la distanza e satura: fra 500 e 1000 m guadagna nove centesimi di decibel.

Va ricordato però che in questo motore A_gr è indipendente dalla frequenza, mentre l’A_gr della ISO 9613-2 è per banda e ha una forma marcata, con il massimo di attenuazione nelle bande medio-basse. È la semplificazione dichiarata fra le assunzioni: l’ordine di grandezza è giusto, la distribuzione spettrale no.

L’aria come filtro passa-basso

Il termine A_atm merita una sezione a sé, perché è quello che decide il carattere del suono a distanza, non solo il suo livello. Il coefficiente α della ISO 9613-1 vale, a 20 °C e 70 % di umidità:

Banda 63 125 250 500 1000 2000 4000 8000 Hz
α [dB/km] 0,09 0,33 1,12 2,79 4,98 9,04 23,09 77,63

Fra i due estremi dello spettro c’è un fattore 860. Moltiplicato per la distanza:

Distanza 63 Hz 500 Hz 1000 Hz 4000 Hz 8000 Hz
100 m 0,0 0,3 0,5 2,3 7,8 dB
500 m 0,0 1,4 2,5 11,5 38,8 dB
1000 m 0,1 2,8 5,0 23,1 77,6 dB
2000 m 0,2 5,6 10,0 46,2 155,3 dB

A 2 km la banda a 8 kHz ha perso 155 dB per sola aria, mentre quella a 63 Hz ne ha persi due decimi. Centocinquantacinque decibel restano un’attenuazione, non un annullamento — il livello che resta dipende sempre da L_p = L_w − A — ma sono abbastanza perché nella pratica quella banda finisca sotto qualunque rumore di fondo. Una nota sul dominio: le due righe finali della tabella stanno oltre i 1000 m, distanza entro la quale la ISO 9613-2 dichiara una stima di accuratezza; il termine atmosferico si estrapola senza problemi, l’accuratezza complessiva del modello no. È questa la ragione fisica per cui un’autostrada lontana si sente come un rombo e non come un sibilo, e per cui un temporale distante dà un tuono cupo mentre da vicino è uno schianto: l’aria è un filtro passa-basso il cui taglio scende con la distanza.

0,1110100631252505001k2k4k8k20 °C, 30 % UR20 °C, 70 % URbanda d’ottava [Hz]α [dB/km]
Coefficiente di assorbimento atmosferico per banda d'ottava, in dB/km e scala logaritmica, alla stessa temperatura e a due umidità diverse. Fra i due estremi dello spettro ci sono quasi tre ordini di grandezza; l'umidità sposta le bande alte di un fattore due, e alle medie agisce in verso opposto. Valori dal motore dello strumento, coefficienti ISO 9613-1.

C’è poi la dipendenza da temperatura e umidità, che è il motivo per cui lo strumento le chiede invece di fissarle. Alla stessa temperatura di 20 °C:

Condizione 500 Hz 2000 Hz 4000 Hz 8000 Hz
70 % UR 2,79 9,04 23,09 77,63 dB/km
30 % UR 2,51 14,12 48,89 168,35 dB/km

Passare da aria umida ad aria secca più che raddoppia l’assorbimento a 8 kHz — e a 500 Hz lo fa scendere leggermente. La dipendenza non è monotona: il picco di rilassamento molecolare si sposta in frequenza con l’umidità, quindi «aria più umida» non significa «sempre più attenuazione». Sotto i 250 Hz, in ogni caso, la scelta di T e UR non sposta praticamente nulla: a 200 m si parla di centesimi di decibel. La conseguenza pratica è che su una mappa dominata dalle basse frequenze i due parametri si possono lasciare al default senza rimorsi, mentre su una sorgente ad alta frequenza e a distanza di chilometri diventano una scelta di scenario, non un dettaglio.

Assunzioni del modello

  • 8 bande di ottava, 63 Hz – 8 kHz. Non terzi d’ottava.
  • Una sola sorgente puntuale per calcolo, irradiazione sferica, niente direttività.
  • Atmosfera omogenea, T e RH costanti: niente gradienti di temperatura/vento, niente turbolenza, niente rifrazione. Va sottolineato che il metodo della ISO 9613-2 non descrive un’atmosfera generica ma condizioni favorevoli alla propagazione (sottovento o inversione equivalente), con una correzione separata per i livelli medi di lungo periodo: acmap non chiede direzione del vento, climatologia né scenario, quindi il suo risultato è uno scenario semplificato, non un livello ISO sotto condizioni definite.
  • Terreno topograficamente piatto. Nessun DTM o DEM: quote di sorgente, ricettore ed edifici sono riferite a un piano comune. Rilevati, trincee, scarpate e avvallamenti — che cambiano linea di vista, δ, effetto suolo e schermatura — sono invisibili al modello.
  • Distanza orizzontale. Sulla griglia la distanza di propagazione è quella in pianta; sorgente e ricettore entrano con le loro quote nei termini che le richiedono, ma la distanza non è la distanza obliqua. Trascurabile a grande distanza, non a distanza breve o con sorgenti molto elevate.
  • Diffrazione semplificata: Maekawa a schermo singolo sul primo edificio intercettato dalla linea di vista, con cap a 25 dB. Niente multi-diffrazione in cascata, niente diffrazione laterale. Le due mancanze tirano in versi opposti: ignorare il cammino laterale attorno a un edificio alto e stretto sovrastima lo schermaggio, ignorare gli edifici successivi lo sottostima. Non c’è quindi una direzione conservativa garantita dell’errore.
  • Niente riflessioni su facciate o terreno.
  • Effetto suolo frequenza-indipendente — semplificazione rispetto all’Agr per banda dello standard.
  • Altezze edifici da OSM, spesso stimate (vedi Avvertenze).
  • I ricevitori con livello fisico trascurabile (sotto soglia) vengono scartati dalla griglia — indipendentemente dalla ponderazione scelta.

Come leggere i risultati

  • dB(A) vs dB lineare (Z) vs dB(C). Il dB(A) è la metrica normativa, ma comprime molto le basse frequenze (−26 dB a 63 Hz). Per leggere il vero carattere spettrale di una sorgente a bassa frequenza (turbina, trasformatore) usa dB(Z) o guarda la serie lineare nei grafici a doppia serie: in dB(A) anche una sorgente low-freq appare con il picco sui medi.
  • L’estensione della mappa non dipende dalla ponderazione. Cambiando A/Z/C cambiano solo i colori; geometria, ombre e celle restano identiche. È voluto: la ponderazione è una scelta di lettura, non di fisica.
  • Tooltip spettrale. Passando il mouse su un ricevitore si vede lo spettro per banda di ottava in doppia serie (lineare + pesato): mostra quali frequenze dominano davvero al punto.
  • Ombre acustiche. Con edifici nel calcolo, la statistica «ricevitori in ombra» conta i punti in cui un edificio intercetta la linea di vista: è una condizione geometrica, non un’ombra acustica — il suono arriva comunque per diffrazione superiore, laterale e riflessioni. Un’ombra è più marcata sugli acuti che sui bassi (i bassi aggirano l’ostacolo).
  • «Leq medio» = media aritmetica del campione in modalità Misura. È una statistica descrittiva dei valori caricati, non un livello fisico: il L_Aeq è già una grandezza energetica riferita a un tempo, e la media aritmetica di 50 e 70 dB(A) misurati in due luoghi diversi dà 60 dB(A) senza che quel numero descriva un campo. Vale come sintesi del campione; non ha significato normativo.
  • La «% punti sopra soglia» è una statistica del campione cartografico, non un indicatore di conformità: la norma verifica livelli in punti determinati e in condizioni determinate, non frazioni di una griglia.
  • Celle lontane o in ombra profonda appaiono sbiadite o assenti: sotto la soglia del modello.

Come si usa

Modalità Misura (rilievo caricato)

  1. Apri il tool, seleziona Misura nel toggle in alto.
  2. Carica un CSV con tre colonne minime: lat, lon, leq (header opzionale, separatore virgola, righe commento # ignorate). Drag-and-drop o bottone Carica CSV. Se il CSV ha una colonna label/indice come primo campo, viene usata come etichetta dei punti (round-trip con l’export).
  3. I punti compaiono sulla mappa etichettati 1..N (numero inciso nel disco); le statistiche del campione (numero punti, Leq medio = media aritmetica, min·max, % sopra il limite) compaiono nel pannello Statistiche, con sotto-label tecniche.
  4. Seleziona una classe DPCM 14/11/1997 (I–VI): i punti si colorano verde (sotto la soglia selezionata) o rosso (sopra), e un sub-label sotto il menu conferma il confronto attivo. Il confronto è col valore limite assoluto di immissione diurno della Tabella C, e va letto per quello che è: un pre-screening numerico, non una verifica di conformità. Un CSV con la sola colonna leq non dice tempo di riferimento, tempo di osservazione e di misura, rappresentatività, rumore residuo né eventuali componenti correttive, che sono gli elementi che il DM 16/03/1998 richiede; e la Tabella C si riferisce all’immissione dell’insieme delle sorgenti, quindi dentro una fascia di pertinenza stradale o ferroviaria il confronto può essere addirittura quello sbagliato (vedi DPR 142/04).
  5. Opzionale: attiva heatmap kernel-density o isolinee IDW. Toggle tema e lingua in header.
  6. Export: GeoJSON o CSV con colonna label (l’indice 1..N dei punti). Il CSV esportato è ri-importabile mantenendo le etichette.

Modalità Previsione (simulazione propagazione)

  1. Switch a Previsione nel toggle in alto.
  2. Click sulla mappa per posizionare una sorgente puntuale; il tool scarica automaticamente gli edifici OSM in un raggio attorno (Overpass API, ~5 s, con popup di stato).
  3. Imposta i parametri sorgente: Lw (potenza sonora, dB), altezza, spettro (9 preset; il pulsante ⓘ apre il popover con descrizione e mini-grafico).
  4. Scegli la ponderazione A / Z / C.
  5. Imposta i parametri atmosferici (T °C, RH %) e l’effetto suolo (G-factor 0–1).
  6. Imposta la griglia ricevitori (estensione, passo) e l’altezza ricevitori.
  7. Click Calcola: chunked async, non blocca la UI, spinner di progresso.
  8. Risultato: griglia ricevitori colorata + heatmap/isolinee, statistiche aggregate, e — se “Edifici partecipano al calcolo” è attivo — la statistica “ricevitori in ombra acustica” nella barra di stato.

Sezione verticale, cattura ed export grafico

  • Click su un ricevitore della griglia → SVG interattiva con geometria sorgente → edificio → ricevitore, path diretto e diffratto, valori path-difference e attenuazione.
  • Tooltip spettrale al passaggio del mouse sui ricevitori → mini-spettro a doppia serie per banda di ottava (otto bande, non una FFT).
  • Due controlli mappa in alto a destra: 📷 cattura schermata (Screen Capture API → PNG dei pixel realmente disegnati, identico a ciò che si vede a schermo) e 🖨 stampa/PDF (layout dedicato A4 orizzontale: mappa + legenda + footer parametri, una pagina), per relazioni preliminari.

Cosa non fa

Multi-diffrazione (più edifici in cascata), diffrazione laterale (attorno ai bordi), sorgenti multiple/lineari/areali, riflessioni multiple su facciate, meteorologia profilata, CNOSSOS-EU, NMPB-Routes-2008. Tutte le limitazioni sono dichiarate apertamente nel disclaimer del tool e qui sotto.

Avvertenze

  • Tool dimostrativo, non peritale. acmap non è certificato per uso peritale, validazione di limiti normativi, o presentazione in sede giudiziaria. Per quegli usi servono due cose distinte, che non si sostituiscono a vicenda: un modello di calcolo adeguato alla metodologia richiesta — CadnaA, SoundPLAN e NoiseModelling sono esempi diffusi, ma la normativa italiana non istituisce una categoria di «software certificato» né impone un prodotto: il DM 29/11/2000 fissa requisiti funzionali che il modello deve avere — e un tecnico competente in acustica iscritto all’ENTECA, che è la figura professionale responsabile dell’attività. Il software è uno strumento, non un’alternativa al professionista.
  • Sorgente singola. La modalità Previsione gestisce UNA sorgente puntuale per calcolo. Per scenari con barriera acustica + sorgente lineare/areale vedi il tool gemello calcolo-barriere.
  • Diffrazione semplificata. Solo Maekawa singola sull’edificio dominante intercettato; no multi-diffrazione in cascata, no diffrazione laterale, no riflessioni.
  • Effetto suolo semplificato. Modello a G-factor frequenza-indipendente, non l’Agr per banda di ottava del metodo ISO 9613-2 (vedi Metodo di calcolo).
  • La qualità della geometria conta più di quella delle quote. La statistica sulle altezze stimate è utile ma parziale: un edificio assente da OSM, una sagoma sbagliata o una posizione spostata pesano di più di due metri di errore su una quota. E la soglia di avviso al 70 % è un’euristica d’interfaccia, non un criterio di validità: un solo edificio stimato male, se è quello che scherma il ricettore critico, basta a spostare il risultato.
  • Dati OSM. Le altezze edifici da OpenStreetMap sono quasi sempre inferite o assunte. La distinzione utile non è fra «reale» e «stimata»: un tag height significa che in OSM esiste un’altezza dichiarata, non che sia stata misurata, sia aggiornata o abbia precisione nota. La catena di risoluzione, dal dato più autoritativo al più congetturale, è: height → building:height → est_height → numero di piani (building:levels, più roof:levels/roof:height quando ci sono) moltiplicato per un’altezza di piano che dipende dalla tipologia → default per tipologia. Solo il primo gruppo è un’altezza dichiarata in OSM: non significa misurata, aggiornata o di precisione nota, ma è comunque il dato meno congetturale. Un’altezza ricavata dai piani è un’inferenza, e il tool la conta come tale. Il default per tipologia ha sostituito il vecchio valore unico di 9 m, che assegnava la stessa quota a una casa, a un capannone e a una chiesa. Il tool dichiara visivamente quali edifici hanno altezza stimata (bordi tratteggiati), mostra la % stimati nelle statistiche, e sopra il 70% di stimati emette un warning.
  • Niente backend. Il CSV resta nel browser e non viene caricato su alcun server nostro. Non è però vero che nessun dato esca: le query Overpass partono dal tuo browser verso i mirror pubblici OSM (terzi) e portano con sé le coordinate e il bbox dell’area, e i tile della mappa fanno lo stesso.
  • Modello atmosferico semplificato. ISO 9613-1 con T/RH costanti; niente meteorologia profilata.
  • Statistica “Leq medio” = media aritmetica. Coerente con la natura del rilievo caricato (campione di misure); per una media energetica servirebbe un’aggregazione diversa.

Stack tecnico

JavaScript vanilla in single file HTML, librerie vendored localmente (Leaflet 1.9.4, leaflet.heat 0.2.0, papaparse 5.4.1, d3-contour 4.0.2). Motore fisico ISO 9613-2 condiviso con il tool barriere (@lib/physics/). Nessun bundler, nessuna dipendenza CDN runtime nel repo standalone.

Tool collegato

acmap è disponibile anche come tool web eseguibile su /tools/mappa-acustica/, senza dover scaricare nulla. Il repository GitHub serve a chi vuole vedere il codice, contribuire, o forkare per usi propri.

Licenza

Apache-2.0 con patent grant. Authorship Stefano Fante personale, maintained come parte delle attività Open Lab di ST-LINE (STLINE S.r.l.)

Ultimo aggiornamento: · Trovato un errore o un dato superato? Segnalacelo

← Torna all’indice Wiki

Un progetto simile?

Acustica, embedded, strumenti di calcolo: se hai un caso d’uso vicino, parliamone.