Software per il calcolo di una rete bianca
Pubblico un programma open source che una volta letti i dati idrologici e geometrici della rete, calcola per ciascun tratto il diametro più adatto e le caratteristiche idrauliche. Per svolgere i calcoli usa il metodo dell'invaso e può dimensionare in funzione di velocità, sforzo tangenziale o pendenza. Rilascia un file di testo con tutte le operazioni svolte, utile per una successiva relazione o rielaborazione.
Scritto per una vecchia calcolatrice programmabile (come raccontato qui) e poi sistemato o più realisticamente rattoppato, per renderlo usabile su un qualsiasi personal computer, è ora pronto per la diffusione su internet. Ho scelto di licenziarlo in GPLv3 perché mi piace l'idea che ognuno possa contribuire a migliorarlo/riscriverlo e adattarlo alle proprie esigenze senza la dittatura delle royalty.
Il codice sorgente
Originariamente era scritto in un linguaggi BASIC-compatibile per la Sharp PC-E500S, poi l'ho adattato al quickbasic e compilato usando FreeBASIC. In tutti questi passaggi le righe di codice sono quadruplicate, forzando al limite dell'inverosimile l'uso dell'istruzione GOTO e di costrutti poco eleganti a livello informatico. Ho provato ultimamente ad aggiungere alcuni commenti ma la lettura logica dell'algoritmo diventa sempre più ardua e ho desistito!
Ecco l'archivio zip con il programma per il download: Fognatura_bianca_0_9_2.zip
Per verificare se sono disponibili nuove versioni consiglio di consultare questo link. (10/10/2012) Inizia la conversione di fognatura bianca in applicazione web, per vedere come funzionerà e lo stato di avanzamento di questo progetto, consulta Fognatura bianca applicazione web: concept.
Limitazioni
- L'eseguibile fognatura_bianca.exe deve avere nella stessa cartella:
- condotto_circolare.dat, ovvero la tabella adimensionale per le tubazioni a sezione circolare;
- input_rete.dat, i dati geometrici e idrologici della rete inseriti come più sotto riportato.
- La geometria della rete può prevedere più rami esterni costituiti però da un solo tronco e confluenti ad un unico nodo che poi può proseguire con molteplici rami esclusivamente interni (per sopperire a ciò si può suddividere la rete in parti che soddisfano alla limitazione imposta dal programma, dimensionarli e poi congiungere il tutto in una nuova rete semplificata per completare il calcolo di quella restante più a valle).
- Se si dovessero riscontrare eccessivi problemi di convergenza (per esempio nel dimensionamento di reti per piccole lottizzazioni) è possibile impostare nel file input_rete.dat un valore differente di tolleranza e di volume di invaso (variabile da 30 a 50 m3/ha).
- Il binario compilato in Linux non riesce ad interpretare correttamente il file di input, rendendo di fatto il programma inutilizzabile. L'unico modo di farlo funzionare è con Wine.
- Le tubazioni devono essere a sezione circolare, anche perché la tabella allegata riporta valori espressamente calcolati per quest'ultime. In linea teorica si potrebbero usare anche tabelle dimensionali per altre sezioni, ma si dovrebbe modificare il programma.
Sviluppi futuri
Tempo permettendo mi piacerebbe:
- pulire, ottimizzare il codice e correggere le limitazioni attuali;
- dotarlo di una comoda interfaccia grafica;
- introdurre un modulo per il disegno automatico dei profili longitudinali in DXF (operazione noiosissima da fare a mano);
- rendere la localizzazione in altre lingue più facile.
In poche parole FANTASCIENZA!
Esempio di utilizzo
Uso i dati riportati in questo articolo che qui ripropongo brevemente:
Tronco | Superficie | Lunghezza | Φ | Diametro | Pendenza |
- | ha | m | - | m | - |
AB | 0,45 | 60 | 0,35 | ? | 0,00322 |
BC | 0,65 | 70 | 0,40 | ? | 0,00274 |
Il file input_rete.dat viene così adeguato (in verde le parti da modificare):
"|dati di input della rete|" "|sulla sinitra i valori sulla destra la descrizione|" 75 "|KS di Gauckler-Strickler in m^(1/3)/s|" 51.40 "|a dell'equazione pluviometrica [mm ora^-n]|" 0.375 "|n dell'equazione pluviometrica [-]|" 1 "|1 se deve essere amplificata per 4/3 o mettere 0|" 40 "|VO in m^3/ha|" 0.005 "|tolleranza|" 2 "|numero di tronchi da dimensionare|" "|descrizione dei singoli tronchi|" "A" "|etichetta a monte tra virgolette|" 4500 "|superficie in m^2|" 60 "|lunghezza del tratto in m|" 0.35 "|coefficiente di deflusso|" 0 "|tratto interno allo rete [1] o esterno [0]|" "B" "|etichetta a monte tra virgolette|" 6500 "|superficie in m^2|" 70 "|lunghezza del tratto in m|" 0.40 "|coefficiente di deflusso|" 1 "|tratto interno allo rete [1] o esterno [0]|"
Si esegue il programma fognatura_bianca.exe e questi sono i passaggi più significativi restituiti a video:
File di output finale: tratto_da_A_a_B.txt
*************************************************************************** * PROGRAMMA PER IL CALCOLO DEI DIAMETRI DI UNA FOGNATURA BIANCA * * CON IL METODO DELL'INVASO * *************************************************************************** (Version 0.9.2) Software open source by Nicola Rainiero, rilasciato sotto licenza GPLv3 \\---> rainnic.altervista.org <---// ___________________________________________________________________________ LA RETE E' definita in input_rete.dat Volume d'invaso iniziale v0 = 40 m^3/ha Equazione pluviometrica assegnata a = 51.4 mm ora^-n n = 0.375 n' = 0.5 Coefficiente di Gauckler-Strickler KS = 75 m^(1/3)/s Numero di tronchi da dimensionare N = 2 Tolleranza per i controlli MIN = 0.005 ___________________________________________________________________________ DATI DEI TRONCHI Etichetta Superficie Lunghezza PHI INT/EXT - ha m - 1/0 A 0.45 60 0.35 0 B 0.65 70 0.4 1 _______________ Tratto da A L S aff. S tot. PHI tot. Kc m ha ha - - 60 0.45 0.45 0.35 3661 Tronco dimensionato fissando la pendenza assoluta a 0.00322 Q A RH^2/3 VO U Q D ---------- --------- y/D V_OP KS i^1/2 D^8/3 m^3/ha l/s,ha l/s m m^8/3 - - mc 40.00 91.53 41.19 0.250 0.0097 0.390 0.80 1000.000 40.00 91.53 41.19 0.300 0.0097 0.240 0.80 1000.000 46.60 78.57 35.36 0.300 0.0083 0.206 0.66 2.969 45.79 79.96 35.98 0.300 0.0085 0.210 0.59 2.604 45.90 79.76 35.89 0.300 0.0084 0.209 0.60 2.657 Per il tratto da A: D y/D v Q i TAU m - m/s l/s - N/m^2 0.300 0.60 0.880 35.89 0.003220 2.7 _______________ Tratto da B L S aff. S tot. PHI tot. Kc m ha ha - - 70 0.65 1.1 0.3795455 4305 Tronco dimensionato fissando la pendenza assoluta a 0.00274 Q A RH^2/3 VO U Q D ---------- --------- y/D V_OP KS i^1/2 D^8/3 m^3/ha l/s,ha l/s m m^8/3 - - mc 42.42 101.51 111.66 0.400 0.0284 0.327 0.80 1000.000 49.80 86.45 95.10 0.400 0.0242 0.279 0.87 8.124 48.76 88.30 97.13 0.400 0.0247 0.285 0.74 6.979 48.85 88.14 96.95 0.400 0.0247 0.284 0.75 7.077 Per il tratto da B: D y/D v Q i TAU m - m/s l/s - N/m^2 0.400 0.75 1.090 96.95 0.002740 3.3 ___________________________________________________________________________ Tabella riepilogativa Tratto da L ST D y/D v Q i TAU - m m^2 m - m/s l/s - N/m^2 A 60.00 4500.00 0.300 0.60 0.880 35.89 0.00322 2.652 B 70.00 11000.00 0.400 0.75 1.090 96.95 0.00274 3.251 <<Per reti da ricomporre>> La lunghezza totale della linea e' [m] 130.00 La superficie totale della linea e' [m^2] 11000.00
Fonti:
- Per la teoria, le formule e la verifica dei risultati mi sono basato sul libro:
Luigi Da Deppo, Claudio Datei, Fognature, Padova, Cortina, 2002
e sulla dispensa on-line del prof. Salandin: Calcolo_condotte.pdf - Per le tabelle ho consultato il sito: Oppo - il sito dell'impiantistica idraulica.
Commenti
verifica ramo impianto acque bianche
ciao Nicola, sono un collega della provincia di Roma. mi sono imbattuto in questa pagina molto interessante con molti sw messi gentilmente a disposizione.
sono un tecnico ingegnere nominato CTP per una causa legata ad infiltrazioni dovuti al possibile sottodimensionamento dell'impianto esistente delle acque meteoriche sulla pubblica strada.
Volevo sapere se con il tuo sw è possibile fare una prima verifica dell'impianto esistente conoscendo diametro dei tubi del ramo unico (D=40-50 cm) e la superficie dell'invaso 47000 mq.
garzie
ing. roberto vari
RE: verifica ramo impianto acque bianche
Ciao Roberto, direi di si se l'impianto esistente non è troppo ramificato e adatti i coefficienti pluviometrici alla situazione meteorologica della zona.
Aggiungi un commento