Fognatura_bianca_0_9_3 released!
Ultimo aggiornamento del programma per il dimensionamento di una rete bianca con una migliore e più realistica schematizzazione della rete e finalmente piena compatibilità Linux. Ho aggiunto un livello ulteriore di ramificazione, permettendo di ridurre quasi a zero la scomposizione e l'analisi per parti del sistema. Inoltre il file di input iniziale viene automaticamente salvato per una successiva analisi o modifica.
La cartella compressa contiene:
- il codice sorgente fognatura_bianca.bas (si può compilare con FreeBASIC o con qualsiasi altro compatibile con QBasic);
- gli eseguibili (testati in Windows XP e Ubuntu 10.10);
- i due file indispensabili per il funzionamento, condotto_circolare.dat (tabella adimensionale per tubazioni circolari) e input_rete.dat (i dati idrologici e geometrici della rete);
- i file di esempio presenti nell'articolo.
Ed è liberamente scaricabile da qui: Fognatura_bianca_0_9_3.zip.
(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.
Questa nuova versione corregge molte limitazioni e difetti, ora è possibile dimensionare con un solo file di input, reti costituite da più tratti esterni, tutte però confluenti in un tratto principale che andrà chiaramente a scaricare la portata raccolta verso valle. Per una maggiore comprensione mostro uno schema di rete costituito da 15 tronchi che può essere trattato dal programma:
Nel disegno si vede anche come stabilire il tipo di tratto scegliendo tra esterno, interno e principale e l'ordine con cui devono essere definiti nel file di input. Ovviamente si parte dai tratti a monte, il primo sempre esterno ed il o i successivo/i interno/i confluenti nella linea principale che può avere anche successive linee entranti seguendo la numerazione crescente rappresentata nell'immagine. L'idea che sta alla base del dimensionamento e quindi di un corretto file di input è comunque quella di far confluire la corretta portata dai tratti di monte a quello finale di restituzione. Per ramificazioni più articolate si deve ricorrerre al solito trucchetto di suddivisione e ricomposizione spiegato nell'articolo precedente.
Altra novità di rilievo è la piena compatibilità Linux, l'ho compilato e testato con Ubuntu 10.10 e l'unica dipendenza che ho dovuto soddisfare è stata l'installazione dele librerie ncurses-dev e ovviamente del pacchetto FreeBASIC. Entrambi comunque si trovano nei repository ufficiali.
Infine ho anche aggiunto il salvataggio automatico del file di input con l'aggiunta di un suffisso analogo a quello creato per la relazione finale dei calcoli. Ciò permette di avere una copia di backup per tutte le reti dimensionate, con la possibilità di successive elaborazioni o variazioni dei dati di input, basta togliere il suffisso e darlo in pasto al programma!
Esempio
Utilizzerò la stessa rete dell'articolo Fognatura bianca con velocità assegnata che qui riporto:
|
Per prima cosa si modifica il file input_rete.dat che in questo caso sarà:
"|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|" 5 "|numero di tronchi da dimensionare|" "|descrizione dei singoli tronchi|" "A_" "|etichetta a monte tra virgolette|" 2900 "|superficie in m^2|" 50 "|lunghezza del tratto in m|" 0.4 "|coefficiente di deflusso|" 0 "|tratto esterno [0], interno [1], o principale [2]|" "B_" "|etichetta a monte tra virgolette|" 2000 "|superficie in m^2|" 25 "|lunghezza del tratto in m|" 0.5 "|coefficiente di deflusso|" 0 "|tratto esterno [0], interno [1], o principale [2]|" "B1" "|etichetta a monte tra virgolette|" 3000 "|superficie in m^2|" 45 "|lunghezza del tratto in m|" 0.50 "|coefficiente di deflusso|" 1 "|tratto esterno [0], interno [1], o principale [2]|" "C_" "|etichetta a monte tra virgolette|" 2000 "|superficie in m^2|" 25 "|lunghezza del tratto in m|" 0.60 "|coefficiente di deflusso|" 2 "|tratto esterno [0], interno [1], o principale [2]|" "C1" "|etichetta a monte tra virgolette|" 4500 "|superficie in m^2|" 60 "|lunghezza del tratto in m|" 0.60 "|coefficiente di deflusso|" 2 "|tratto esterno [0], interno [1], o principale [2]|"
Si lancia l'eseguibile: fognatura_bianca.exe (in Windows, meglio da "Prompt dei Comandi" all'interno della directory con il programma) o fognatura_bianca (in Linux, meglio dal "Terminale" sempre dalla directory con il programma) presenti nella cartella o si può ricompilare il sorgente (con il comando "fbc fognatura_bianca.bas") ed i passaggi a video sono sempre gli stessi visibili nell'articolo citato, così come la scelta della variabile di riferimento (velocità di 1 m/s).
Una volta concluso il dimensionamento, il programma restituirà il file di backup input_rete_da_A__a_C1.dat della rete e la relazione di calcolo sia a video sia in un file di testo tratto_da_A__a_C1.txt. Riporto la tabella riassuntiva che è molto simile a quella fornita nella dispensa del prof. Salandin Calcolo_Condotte.pdf da cui ho preso la rete per l'esempio:
___________________________________________________________________________ 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_ 50.00 2900.00 0.300 0.45 1.000 30.62 0.00617 4.233 B_ 25.00 2000.00 0.300 0.48 1.000 33.79 0.00582 4.172 B1 45.00 5000.00 0.400 0.59 1.000 76.87 0.00337 3.639 C_ 25.00 9900.00 0.500 0.69 1.000 143.96 0.00228 3.302 C1 60.00 14400.00 0.600 0.71 1.000 213.88 0.00177 3.097
Aggiungi un commento