Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
description: Guarda una panoramica dell'interfaccia WaterStrategy; segue un riepilogo testuale.
Progetto: cartella che contiene reti correlate, può contenere anche altre cartelle di progetto (sottoprogetti).
-Ogni cartella di progetto mostra la quantità di reti e cartelle di sottoprogetto al suo interno.
Rete: modello.
Nella home page dell'interfaccia, seleziona il progetto «Materiale didattico».
Seleziona la rete Demo 1.
-All'interno della rete, nella parte superiore della pagina, vedrai una barra simile a questa qui sotto.
-Le schede «Home» e «I miei progetti» ti riporteranno alla home page dell'interfaccia.
- «Documentazione e formazione» ti porta ai video tutorial delle interfacce e alla pagina delle istruzioni scritte.
-La scheda «Preferiti» consente di aggiungere segnalibri a progetti, reti e scenari. Offre inoltre la possibilità di accedere a progetti e reti a cui si accede di recente e modificati di recente.
- «Torna a 'Materiale di formazione'» ti riporta alla cartella del progetto Materiale didattico.
-Il pulsante di riproduzione verde esegue un modello.
-Il pulsante chiave consente di accedere a utilità di rete avanzate, come l'importazione o l'esportazione di dati di rete.
-La freccia rivolta verso il basso nel pulsante rettangolare serve per scaricare il modello, viene utilizzato per l'esecuzione offline o l'invio a qualcuno.
-Le tre righe sono «Visualizza dati di rete».
Fai clic su «Visualizza dati di rete».
-In «Dettagli» è possibile modificare il nome della rete.
-A volte è necessario uscire dalla rete per l'aggiornamento.
-In «Ingressi» puoi modificare l'inizio, la fine e il timestep del tuo modello.
-D=giorno, M=mese, Y=anno per il timestep.
Fai clic sull'icona della chiave inglese per andare su «Impostazioni».
Visualizza etichette: visualizza i nomi dei nodi
Direzione del collegamento: mostra la direzione del flusso dei collegamenti
0__Mostra suggerimenti: visualizza le informazioni sul nodo quando ci si passa sopra con il mouse
Nascondi barra laterale: nasconde la barra laterale quando non la si utilizza
0__Categorizza sempre gli attributi per tipo- All'interno di un nodo, raggrupperà gli attributi come scalari, descrittori, ecc.
Clicca sulla «i» per andare a «Informazioni».
-Puoi vedere il tuo «ID di rete» e altre informazioni.
Chiudi la barra laterale e vai alla sezione degli scenari sul lato sinistro della pagina.
-Gli scenari sono variazioni dei dati di input, dell'idrologia, ecc. all'interno di un modello.
-Comune per creare più scenari all'interno di un modello.
Tasto 1 (a sinistra) - Scenario clone
Tasto 2- Modifica scenario
Tasto 3- Elimina scenario
Tasto 4- Aggiorna l'elenco degli scenari
Tasto 5- Scenario dei segnalibri
Tasto 6 (a destra) - Confronta gli scenari
-Per creare un nuovo scenario, clona uno scenario preesistente assegnandogli un nuovo nome, una volta creato modifica i dati di input del modello come desiderato.
Fai clic sul pulsante «Esegui un modello».
-Mantieni lo scenario di base.
-Mantieni tutte le altre impostazioni predefinite.
Fai clic su «Invia».
-Nella sezione «Esecuzioni» sul lato sinistro della pagina vedrai le tue esecuzioni nuove e passate.
-Yellow=Esegui in coda
-Blue=Esecuzione in corso
-Green=Esecuzione riuscita
-Red=Esecuzione non riuscita
Fai clic su «Crea» sotto la sezione «Esegui».
-Fornisce tutti i nodi e i collegamenti necessari per creare un modello.
-Dopo aver inserito un nodo, è necessario inserire i dati.
Fai clic su «Cerca» sotto la sezione «Crea».
-Ciò consente di trovare facilmente nodi e collegamenti in modelli di grandi dimensioni.
Il pulsante bomba nell'angolo in alto a sinistra della mappa consente di espandere il modello per renderlo meno affollato, se necessario.
Map- Mostra il modello
Risorse- Può visualizzare nodi, collegamenti e gruppi
Metrics- Fornisce funzionalità per l'aggregazione degli output del modello
Regole personalizzate - Regole operative personalizzate
Parametri- Aggiungi parametri non inclusi in pywr
Recorder- Aggiungi registratori non inclusi in pywr
Members- Mostra i membri che devono accedere al modello e le autorizzazioni in loro possesso, può anche aggiungere membri in questa scheda e scegliere i permessi di cui dispongono
Analisi - Confronto di nodi e collegamenti all'interno di scenari
Creazione di un nuovo progetto e di una nuova rete
Nella home page dell'interfaccia, fai clic su «Crea progetto» nell'angolo in alto a destra.
Digita il nome del progetto e seleziona «Aggiungi».
Inserisci il tuo nuovo progetto.
Fai clic su «Crea rete» sul lato destro.
Scegli la scheda «Manuale».
Inserisci un nome di rete.
Scegli uno di questi due modelli pywr.
-Gli altri modelli sono per altri sistemi di modellazione come i sistemi di alimentazione.
Scegli «Usa mappa» per visualizzare la mappa del mondo per la costruzione di modelli.
Fai clic su «Invia».
Inserisci la rete creata.
Attiva e ingrandisci un'area lungo il Nilo.
Seleziona il menu a discesa «Build».
Trascina un bacino, un link e due nodi di output nel modello come mostrato di seguito.
-Il secondo nodo di uscita (off-river) verrà utilizzato come nodo di estrazione dell'acqua.
-Notate che il nodo di catchment è a monte e il nodo di uscita è a valle.
(il Nilo scorre verso nord in questa parte e in generale)
Utilizzando la funzione «Collegamenti», collegate i nodi nella direzione del flusso.
-Questa operazione viene eseguita facendo clic prima sul nodo upflow e poi sul nodo downflow.
description: Questa pagina mostra come accedere a WaterStrategy
Per accedere vai a https://hydra.org.uk/login (Hydra è il server sicuro su cui attualmente ospitiamo WaterStrategy)
Inserisci il tuo nome utente e password WaterStrategy
Fai clic su «Accedi»
Se hai dimenticato la password, fai clic sul pulsante 'Password dimenticata'link.
Nota: consenti i cookie quando richiesto.
WaterStrategy non è necessario per eseguire un modello Pyrr; è lì per aiutare a semplificare l'uso dei modelli Pyrr. Se hai un file di input del modello Pywr (sono chiamati file 'JSON') e hai le librerie Python e Pywr richieste installate sul tuo computer, puoi eseguire il tuo modello Pywr senza WaterStrategy (Nota: sono richieste competenze Python). Allo stesso modo, se hai un modello Pywr esistente (un file JSON), puoi importarlo in WaterStrategy.
Questa pagina mostra come esportare modelli da WaterStrategy in un file Pywr JSON e come importare modelli Pywr esistenti (file JSON) in WaterStrategy
Questa sezione utilizza la «rete demo one» fornita al momento della creazione di un account.
Per prima cosa fai clic sul pulsante di download.
Quindi, sceglieremo il nostro formato.
Scegli prima il formato Hydra JSON. Se desideri abilitare le interruzioni di riga, ciò semplifica la lettura del codice o del testo. Se è un file di grandi dimensioni, puoi comprimerlo.
Inviatelo.
Quindi, scarica il formato Pywr JSON.
Quindi, puoi trovare i due file nella cartella in cui hai scelto di salvarli.
Vediamo come importare i file Pywr.
Innanzitutto, fai clic su «Crea progetto» per creare una cartella di progetto nel tuo account Water Strategy.
Assegna un nome al progetto e fai clic su «Aggiungi».
Fai clic sul progetto creato.
Fai clic su «Crea rete».
Seleziona «Hydra JSON».
Fai clic su «Scegli file».
Scegli il file JSON Hydra.
Seleziona il modello.
Fai clic su «Invia».
Quindi, puoi scoprire che la rete è stata importata.
Per importare il file Pywr JSON, puoi seguire questi passaggi.
Fai nuovamente clic su «Crea rete».
Scegli «Pywr JSON».
Fai clic su «Scegli file».
Scegli il file Pywr JSON.
Scegli il modello.
Per la proiezione, puoi scegliere «Nessuno», «Regno Unito» o «Mondo». In questo caso, sceglieremo il «Mondo».
Fai clic su «Invia».
Infine, puoi visualizzare la rete importata qui.
In WaterStrategy, gli utenti hanno la flessibilità di gestire set di dati grandi e complessi in modo più efficiente caricando i dati da file esterni come Parametro Dataframe utilizzando la parola chiave «url», anziché incorporare tutti i dati direttamente nell'interfaccia. I formati di file includono:
CSV
Excel
HDF5
Nota: Tra le opzioni precedenti, i file Excel hanno le prestazioni più lente mentre i file HDF5 hanno le prestazioni migliori e sono preferiti per set di dati di grandi dimensioni.
Per caricare un file in WaterStrategy, vai al tuo progetto e fai clic sulla scheda File. Da lì, fai clic Scegli i file e seleziona il file che desideri caricare e fai clic su .
Questo aggiungerà il file al tuo progetto, rendendolo disponibile per l'uso su tutte le reti all'interno del progetto.
Una volta caricati, i file verranno visualizzati nella File scheda all'interno del progetto. Da lì, puoi visualizzarli, gestirli e condividerli facilmente su tutte le reti del progetto.
description: WaterStrategy aiuta le persone e le organizzazioni a comprendere il loro sistema idrico e a valutare i piani futuri. La documentazione di WaterStrategy ti aiuta a costruire, perfezionare e utilizzare un gemello digitale del tuo sistema idrico. layout: description: visible: true outline: visible: true pagination: visible: true tableOfContents: visible: true title: visible: true
description: Come creare un account gratuito in WaterStrategy
Guarda il video o segui il testo qui sotto. WaterStrategy gli account vengono effettuati su https://hydra.org.uk/register («Hydra» è il nome del nostro server web).
Creazione di un account
Sul WaterStrategy pagina web seleziona «LOGIN» nell'angolo in alto a destra.
Seleziona «Crea un account» nella parte inferiore della pagina web a cui ti porta «Accedi».
Nella pagina di registrazione, inserisci la tua email, nome, cognome, tipo di organizzazione, organizzazione, paese o regione, crea una password, seleziona «Non sono un robot» e seleziona le tre caselle.
Quindi seleziona «Registra».
Ti verrà inviata un'email di conferma per confermare il tuo account. Assicurati di controllare anche la tua cartella spam.
Il tuo account è stato creato.
Accedi
Per accedere, visita https://hydra.org.uk/login oppure usa la pagina web WaterStrategy «Login»
Inserisci la tua email e la password e seleziona nuovamente le tre caselle in basso. Scegli «Ricordami» se lo desideri.
Quindi seleziona «Accedi».
Ti troverai nella home page dell'interfaccia Water Strategy.
description: Come funziona? cosa produce? e come si usa?
Per comprendere le prestazioni di un sistema idrico oggi e valutare gli impatti dei cambiamenti futuri, i pianificatori costruiscono modelli di sistemi di risorse idriche.
I sistemi di risorse idriche possono essere piccoli, come una città e le sue fonti di approvvigionamento idrico, o grandi, come un paese con molti fiumi, infrastrutture idriche e utenti idrici diversi. Che si stia cercando di valutare l'affidabilità delle fonti attuali o di valutare nuovi interventi in condizioni future plausibili, un modello computerizzato di questo tipo aiuta a tracciare l'acqua in tutto il sistema (spazialmente) e nel tempo.
Dati sui flussi idrologici e sul clima, sulla domanda e sull'uso dell'acqua e sulle regole di gestione e allocazione dell'acqua, un modello di sistema idrico produce flussi e volumi d'acqua in ogni luogo e fase temporale modellati. Quando questi risultati vengono aggregati, forniscono un quadro accurato delle prestazioni dei diversi interventi idrici (modifiche alle politiche o alle infrastrutture idriche).
description: Come condividere un progetto o una rete con altri WaterStrategy utenti
Progetti: sono come cartelle che raggruppano sottoprogetti e reti.
Reti: ogni modello con una rete univoca è chiamato «Rete» in WaterStrategy.
Icona persona: indica che hai accesso esclusivamente al progetto o alla rete.
Icona Persone: indica che più persone hanno accesso a un progetto o a una rete.
Creatore: creato il progetto o la rete.
Condiviso direttamente: il progetto o la rete sono stati specificamente condivisi con un utente.
Ereditato da: («Nome progetto»): l'utente ha accesso a questo sottoprogetto o rete grazie alla condivisione di un progetto che lo racchiude.
Per condividere un progetto, accedi al progetto e fai clic sulla scheda membri.
Digita l'email dell'account del destinatario con cui desideri condividere.
Ci sono due autorizzazioni che puoi scegliere di concedere a un destinatario.
Consenti agli utenti di ricondividere? : Consente loro di condividere il progetto e i progetti/reti interni con altri.
Consentire agli utenti di modificare il progetto? : Consente loro di modificare i progetti/le reti all'interno del progetto.
Seleziona «Invita» dopo aver scelto le autorizzazioni.
Di seguito puoi vedere con chi è stato condiviso il progetto, gestire con chi è stato condiviso, visualizzarne le autorizzazioni e vedere come hanno ricevuto l'accesso.
Ci sono autorizzazioni che puoi scegliere di concedere a un destinatario.
Consenti agli utenti di ricondividere? : consente loro di condividere la rete con altri.
Consentire agli utenti di modificare il progetto? : consente loro di modificare la rete.
Clone Network: crea una rete duplicata. Impedisce modifiche alla rete preesistente. Ha le opzioni seguenti se si sceglie «Rete clonata».
Includi i risultati in una nuova rete? : Includi i risultati dell'esecuzione nella rete clonata.
Includi tutti gli scenari? : Includi gli scenari creati nella rete clonata.
Nome rete: crea il nome della rete clonata.
Digita l'email dell'account del destinatario con cui desideri condividere.
Fai clic su «Condividi» dopo aver scelto le autorizzazioni.
Per condividere una rete, fai clic sull'icona di condivisione su una rete.
description: Per creare un «gemello digitale» (un simulatore al computer) del tuo sistema idrico, WaterStrategy usa Pywr («Python Water Resources»).
Pywr è una libreria software in linguaggio Python gratuita e open source che consente di creare modelli di simulazione di alta qualità (dettagliati e accurati) dei sistemi di risorse idriche.
I modelli Pywr vengono eseguiti rapidamente sul tuo computer o, nel caso di WaterStrategy, sul cloud. Possono rappresentare piccoli sistemi di risorse idriche, come l'approvvigionamento idrico di una città, o molto grandi, come bacini fluviali che attraversano diversi paesi con centinaia di utenti idrici e risorse infrastrutturali. Pywr può simulare periodi brevi (ad esempio alcuni mesi) o più lunghi (come 100 anni) in una serie di intervalli di tempo (da giornalieri a mensili).
Ecco un riepilogo del processo di modellazione Pywr:
1. Configura il modello
Innanzitutto sono necessari una mappa spaziale del sistema idrico e i relativi dati idrologici e sulla domanda di acqua. WaterStrategy ti aiuta a creare questa mappa di rete di tutte le posizioni («nodi») in cui l'acqua entra nel sistema («afflussi»), dove viene utilizzata («richieste idriche») e dove viene gestita l'acqua (sedi delle infrastrutture). Questi nodi formano una rete connessa da fiumi, canali o oleodotti (Pywr li chiama «collegamenti» o «bordi»). Una volta impostata la mappa della rete, fornisci i dati sulla domanda e sull'approvvigionamento idrico (in genere sotto forma di serie temporali).
2. Esegui una simulazione
Una volta inseriti tutti i dati, compresi la fase temporale e l'orizzonte temporale, il modello è pronto per la simulazione (cioè, fa un passo nel tempo ed esegue la contabilità dell'acqua in tutto il sistema). All'inizio di ogni fase temporale, il computer inizia iniettando acqua in tutti i punti di afflusso, quindi quest'acqua viene instradata lungo la rete e allocata alle diverse ubicazioni della domanda idrica e delle infrastrutture. Questo processo di allocazione viene eseguito con una tecnica informatica chiamata programmazione lineare. Al termine di una fase temporale, il modello aggiorna i magazzini, registra da quali località è stata raccolta quanta acqua, quindi passa alla fase temporale successiva fino alla fine dell'orizzonte temporale simulato.
A ciascun nodo di domanda idrica viene assegnata una priorità per rappresentare l'allocazione idrica nel modello. A ogni nodo è associata una penalità e l'algoritmo di allocazione distribuisce l'acqua in tutta la rete per ridurre al minimo la penalità complessiva. Questo approccio semplice consente simulazioni rapide e gestibili che hanno la flessibilità di rappresentare regole di gestione dell'acqua dettagliate e realistiche.
3. Rivedi i risultati
I risultati del modello includono quanta acqua entra in ogni posizione (nodo) e quanta viene immagazzinata, consumata o attraversa in ogni fase temporale. Ciò consente di monitorare come viene utilizzata l'infrastruttura e se le città, gli ecosistemi, le aree di irrigazione, le centrali elettriche, ecc. ricevono abbastanza acqua. I risultati creano un quadro dettagliato di come funziona il sistema di gestione dell'acqua e di come vengono distribuiti i benefici idrici.
Inizialmente i modelli sono mal parametrizzati e producono previsioni imprecise (la fase «garbage in, garbage out»). Nel tempo, tuttavia, man mano che il modello viene migliorato («calibrato»), può diventare un prezioso gemello digitale per aiutare a gestire o pianificare un sistema idrico. Lo strumento aiuta l'organizzazione a valutare in modo rapido ed economico gli impatti dei potenziali cambiamenti e interventi idrici futuri e a prendere buone decisioni.
Buona fortuna!
description: Termini chiave usati in Pywr.
Pywr, una libreria Python utilizzata da WaterStrategy, consente di simulare l'allocazione delle risorse rappresentando un sistema di risorse come una rete utilizzando 'Nodes' e 'Edges'. L'allocazione delle risorse è guidata da regole operative che utilizzano «Penalità di allocazione», «Vincoli» e «Parametri» e gli output del modello vengono acquisiti e salvati utilizzando «Registratori». Le variazioni degli input del modello possono essere specificate ed eseguite in parallelo utilizzando «Scenari».
Sebbene i concetti generali utilizzati per creare un modello di simulazione dell'allocazione delle risorse in Pywr siano simili a quelli di altri strumenti, l'uso dei termini può essere diverso. In questa sezione, definiamo i termini chiave di Pywr e i loro ruoli nei modelli di simulazione.
I nodi rappresentano le posizioni nel sistema idrico simulato in cui l'acqua viene aggiunta, immagazzinata, utilizzata, consumata o trasmessa. Esistono diversi tipi di nodi in Pywr per aiutarti a costruire il tuo modello di sistema idrico; puoi saperne di più su di essi nella Tipi di nodi sezione. I dati che definiscono le caratteristiche fisiche e il comportamento di un nodo possono essere aggiunti direttamente al nodo o indirettamente facendo riferimento a un parametro (descritto di seguito).
Per formare una rete, i nodi sono collegati tramite collegamenti che rappresentano il trasporto dell'acqua. Pywr li chiama 'Edges'. Un bordo ha un nodo iniziale e uno finale e l'acqua scorre dal nodo iniziale al nodo finale. Pywr non assegna informazioni a queste connessioni (i bordi), ma assegna i dati ai nodi di origine e di destinazione. Tutti i dati necessari per simulare la gestione dell'acqua sono memorizzati sui nodi, i bordi determinano solo la direzione del flusso d'acqua. Un modellatore Pywr direbbe che «i bordi Pyrr determinano la topologia della rete», il che significa che «le connessioni tra i nodi determinano il movimento dell'acqua nel modello computerizzato».
I vincoli possono essere impostati su vari tipi di nodi per aiutare a rappresentare il comportamento del sistema. Ad esempio, un nodo fluviale può avere valori di flusso massimi e/o minimi per rappresentare la capacità di trasporto. In Pywr, molti nodi hanno il valore 'max_flow' e 'min_attributi di flusso per impostare i limiti superiore e inferiore del flusso attraverso il nodo, se necessario. L'attributo 'max\ _flow' non richiede che il flusso attraverso questo nodo raggiunga questo valore, ma se il volume e la priorità dell'acqua sono sufficienti, il modello cercherà di soddisfare il 'Flusso massimo'. I vincoli minimi di flusso devono essere usati con attenzione in quanto possono rendere impossibile il modello se il minimo non può essere raggiunto.
Le penalità di allocazione sono attributi dei nodi che controllano la priorità dell'allocazione dell'acqua. Queste sono in genere espresse come penalità o «costi» e il modello assegna l'acqua per primo al nodo con la penalità più bassa. Se preferisci ripartire in base ai benefici, inviando prima l'acqua dove offre i maggiori benefici, dovrai esprimere le tue priorità in Pywr come costi negativi (ad esempio, usa numeri negativi). In effetti, entrambi possono essere usati insieme, quindi ad esempio se 3 nodi hanno penalità -10, 2, 6, riceveranno acqua in quest'ordine (il nodo con una penalità di -10 ottiene l'acqua per primo e il nodo con penalità di allocazione 6 ottiene l'acqua per ultimo).
I parametri in Pywr forniscono un modo flessibile e conveniente per fornire input ai nodi. Ad esempio, un particolare tipo di parametro può essere utilizzato per caricare i dati di afflusso o di richiesta da un file Microsoft Excel. I parametri offrono anche un modo flessibile e personalizzabile per definire le regole operative di un sistema (ad esempio, le regole che regolano i rilasci dei giacimenti). La maggior parte dei dati di input del modello può essere fornita utilizzando i parametri.
I registratori Pywr vengono utilizzati per post-elaborare i risultati. Creando un registratore, è possibile osservare e salvare i risultati della simulazione. Alcuni registratori consentono di aggregare i risultati nel tempo (ad esempio, da giornaliero a annuale) e nello spazio (ad esempio, l'acqua allocata a un gruppo di nodi).
In Pywr puoi creare e simulare scenari con diversi dati di input su offerta, domanda o altre modifiche. I pianificatori idrici utilizzano sempre più simulazioni a lungo termine con molti scenari per valutare i cambiamenti futuri o testare possibili interventi. Essere in grado di simulare rapidamente molti scenari futuri plausibili è uno dei principali vantaggi di Pywr.
Nota:
Per ulteriori dettagli, si rimanda al documento ad accesso aperto intitolato: Un simulatore di risorse idriche in Python.
I nodi di input rappresentano gli input di acqua nel sistema.
Ad ogni passaggio temporale un nodo di ingresso può fornire la quantità di acqua impostata dal Flusso massimo attributo. Tuttavia, a differenza Nodi di bacino necessari per rilasciare il volume d'acqua definito nel loro attributo Flow, i nodi di input non sono tenuti a rilasciare acqua a meno che non abbiano un valore diverso da zero Flusso minimo.
I nodi di input vengono spesso utilizzati per rappresentare sorgenti definite dai rendimenti. Sono spesso usati per rappresentare i rendimenti delle acque sotterranee.
Penalità di allocazione
Il costo di allocazione per unità di flusso attraverso il nodo
Facoltativo
Flusso massimo
Il vincolo di flusso massimo sul nodo
Facoltativo
Flusso minimo
Il vincolo minimo di flusso sul nodo
Facoltativo
presto in arrivo...
description: Esistono diversi modi per richiedere assistenza per WaterStrategy.
Il canale Discord di WaterStrategy viene monitorato regolarmente e offre supporto da parte di sviluppatori e utenti. Qui puoi segnalare bug o richiedere nuove funzionalità. Registrati tramite questo link:
In alternativa, puoi inviare un'e-mail support@waterstrategy.org
layout: description: visible: false outline: visible: true pagination: visible: true tableOfContents: visible: true title: visible: true
WaterStrategy segnala errori quando c'è un guasto tecnico o il modello è stato configurato in modo errato. Imparare a comprendere e utilizzare una segnalazione di errore del modello per trovare un problema in un modello è un'abilità di modellazione importante ed essenziale.
Questo capitolo fornisce un esempio di come leggere un report di errore per trovare la parte di un modello che causa l'errore.
Quando una corsa fallisce, vedrai la corsa diventare rossa nella sezione delle corse.
Fai clic sulla barra rossa di esecuzione e otterrai una panoramica dell'esecuzione, inclusa la segnalazione degli errori.
Scorri fino alla fine del rapporto. Qui è dove l'esecuzione segnalerà il suo errore.
Per questa corsa, è possibile riscontrare che un profilo mensile non è stato inserito correttamente.
In alcuni casi, verranno forniti maggiori dettagli su un errore all'interno del report di esecuzione. È importante esaminare i registri di esecuzione per vedere se ci sono indizi sul problema.
Scorrendo verso l'alto vediamo «CRITICO». Ciò indica che è stato riconosciuto un errore. Nella stessa riga, indica dove si trova l'errore.
L'input «evaporazione» del nodo «Example reservoir» non è corretto.
Possiamo modificare il parametro 'evaporazione' per risolvere questo problema.
Ci sono 13 valori nel profilo mensile, dobbiamo rimuovere il valore che non appartiene. In questo caso '3.14' non doveva essere presente nel profilo mensile.
Salvate il parametro ed eseguite nuovamente questo modello.
Ora il modello è stato eseguito correttamente.
Le RiverSplitWithGauge node è una divisione nella rete fluviale con un flusso residuo minimo (MRF). Secondo Fiume Spalato ma per impostazione predefinita crea un altro percorso nell'oggetto sottostante per modellare un MRF. Questa rotta è tale che l'MRF non fa parte dei rapporti forzati. L'intento di questo oggetto è modellare il caso in cui una percentuale del flusso può essere astratta al di sopra della MRF (ad esempio 90% del flusso al di sopra della MRF). API Riferimento.
costo Il costo Fattori
mrf
Il flusso residuo minimo (MRF) sul manometro
Richiesto
mrf_
Il costo del percorso tramite la MRF
Costo
richiesto
dell'altro itinerario (non vincolato)
obbligatori
I fattori
da imporre alle suddivisioni aggiuntive. Numero di extra_si presume che lo slot sia inferiore di uno alla lunghezza dei fattori (come da Collegamento multiplo documentazione)
Richiesto
nomi_slot
Gli identificatori a cui fare riferimento agli slot quando ci si connette da questo Nodo. La lunghezza deve essere maggiore di uno rispetto al numero di slot aggiuntivi richiesti
Richiesto
presto in arrivo...
Le BreakLink node può essere utilizzato per ridurre il numero di percorsi in un modello.
Ad esempio, in un modello con forma (3, 1, 3), cioè 3 ingressi (A, B, C) collegati a 3 uscite (D, E, F) tramite un collo di bottiglia (X), ci sono 3\ *3 percorsi = 9 percorsi.
Se X è un archivio, ci sono solo 6 percorsi: A->X_o, B->X_o, C->X_o e X_i->D_o, X_I->E_o, X_i->f\ _o.
Il BreakLink node è un nodo composto da un Conservazione con volume zero e a Link. Può essere utilizzato al posto di un normale Link, ma con il vantaggio di ridurre il numero di percorsi nel modello (nella situazione sopra descritta). L'LP risultante è più facile da risolvere. API Riferimento.
Opzionale max_flusso
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
conversione_
factor
La conversione tra afflusso e deflusso per il nodo
_flusso
Il vincolo di flusso massimo sul nodo
Facoltativo
min_
flow
Il vincolo minimo di flusso sul nodo
Opzionale precedente
Flusso totale tramite questo nodo nel timestep precedente
Facoltativo
layout: description: visible: false outline: visible: true pagination: visible: true tableOfContents: visible: true title: visible: true
I nodi di ingresso dell'acqua sono il meccanismo mediante il quale l'acqua può essere immessa nel sistema. Qui, introduciamo i tre nodi più comunemente usati per l'immissione di acqua.
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
fattori
I fattori da imporre alle divisioni aggiuntive. Numero di extra_
si presume che lo slot sia inferiore di uno alla lunghezza dei fattori (come da documentazione pywr.nodes.MultiSplitLink) Slot opzionale
_nomi
Gli identificatori a cui fare riferimento agli slot quando ci si connette da questo Nodo. La lunghezza deve essere maggiore di uno rispetto al numero di slot aggiuntivi richiesti
Facoltativo
flusso
La quantità di acqua fornita dal bacino idrografico in ogni fase
Facoltativo
layout: description: visible: false outline: visible: true pagination: visible: true tableOfContents: visible: true title: visible: true
Il tipo di nodo di trasporto dell'acqua consente agli utenti di definire il modo in cui l'acqua scorre attraverso i diversi nodi in base alle condizioni del mondo reale. Di seguito sono riportati i nodi di trasporto dell'acqua più utilizzati:
Questa tabella presenta i tipi di nodi Pywr più comunemente usati:
Nodo di input
I nodi di input rappresentano gli input di acqua nel sistema.
Nodo di bacino
I nodi di bacino idrografico vengono spesso utilizzati per rappresentare il fiume o un altro tipo di afflusso nel sistema.
Nodo di input proporzionale
Il nodo di ingresso proporzionale è destinato a un caso semplice in cui è necessario distribuire un rapporto di flusso fisso su più percorsi a valle.
Link Node
Link node rappresenta un collegamento nel sistema idrico o altro punto di interesse in cui viene assegnato un vincolo di flusso massimo o minimo o una priorità di allocazione.
Nodo fluviale
Il nodo fluviale è un nodo della rete fluviale, che può avere più nodi a monte (cioè una confluenza) ma solo un nodo a valle.
Nodo Delay
Questi ritardano il flusso per un determinato numero di intervalli temporali o giorni. Viene utilizzato quando il tempo di propagazione del flusso non può essere ignorato, ad esempio perché i passaggi temporali sono relativamente brevi.
Storage Node
Storage node è un nodo generale in grado di immagazzinare acqua (come dighe o falde acquifere), che hanno limitazioni di volume minimo e massimo.
Nodo Reservoir
Il nodo Reservoir è un tipo di storage node con funzionalità aggiuntive per rappresentare l'evaporazione e la precipitazione.
Nodo di uscita
I nodi di uscita sono luoghi in cui l'acqua esce dal sistema.
Perdita Link Node
Il loss link consente la definizione di una perdita di flusso proporzionale fissa che attraversa questo nodo.
Nodo turbina
Il nodo turbina può rappresentare una turbina di una centrale idroelettrica. Calcola il flusso richiesto per generare un particolare obiettivo di produzione di energia idroelettrica in ogni fase temporale.
I tipi di nodi Pywr possono anche essere ulteriormente suddivisi in 6 categorie: Ingresso di acqua, Trasporto via acqua, Stoccaggio dell'acqua, Uscita dell'acqua, Energia idroelettricae Altri. Puoi trovare maggiori dettagli su questi raggruppamenti di nodi e tipi di nodi nelle sottosezioni della sezione «Tipi di nodi».
È possibile trovare una panoramica dei nodi in Pywr qui. È possibile trovare l'elenco completo dei nodi integrati in Pywr qui.
Le nodo di ritardo è un nodo che ritarda il flusso per un determinato numero di fasi temporali o giorni. Questo nodo verrà utilizzato quando il tempo di propagazione dell'acqua non può essere ignorato rispetto alla scala temporale selezionata. API Riferimento.
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
fasi temporali
Numero di fasi temporali per ritardare il flusso
Facoltativo
giorni
Numero di giorni per ritardare il flusso. La specificazione di un numero di giorni (anziché di un numero di intervalli temporali) è valida solo se il numero di giorni è esattamente divisibile per il delta temporale del modello
Facoltativo
flusso iniziale
Flusso fornito dal nodo per le fasi temporali iniziali prima che sia disponibile qualsiasi flusso ritardato. Questo è costante in tutte le fasi temporali ritardate e in tutti gli scenari del modello. L'impostazione predefinita è 0.0
Facoltativo
presto in arrivo...
Le nodo di utenza è un altro tipo di nodo di input con un afflusso fisso. I nodi di bacino idrografico vengono spesso utilizzati per rappresentare un fiume o un altro tipo di afflusso nel sistema. Qualsiasi flusso definito su di essi deve fluire nel sistema.
Spesso le serie temporali di afflusso (ad esempio i dataframe Pywr) sono definite nel flusso attributo per rappresentare i flussi di utenza in entrata, tuttavia è possibile utilizzare anche altri parametri (ad esempio costante, profilo mensile ecc...).
flusso
La quantità di acqua fornita dal nodo idrografico in ogni fase temporale
Obbligatorio, il valore predefinito è 0 se non viene immesso.
presto in arrivo...
fattori
I fattori da imporre alle divisioni aggiuntive. Numero di extra_si presume che lo slot sia inferiore di uno alla lunghezza dei fattori (come da documentazione pywr.nodes.MultiSplitLink
Slot
opzionale_nomi
Gli identificatori a cui fare riferimento agli slot quando ci si connette da questo Nodo. La lunghezza deve essere maggiore di uno rispetto al numero di slot aggiuntivi richiesti.
Facoltativo
Le nodo serbatoio è una sottoclasse di storage node con funzionalità aggiuntive per rappresentare l'evaporazione e la precipitazione. API Riferimento.
volume pc , precipitazione Tassi di evaporazionelunghezza/giorno) Unità opzionale
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
min_
Il volume minimo dello spazio di archiviazione.
Il valore predefinito è 0.0 Max opzionale
_volume
Il volume massimo dello spazio di archiviazione. Il valore predefinito è 0.0
Obbligatorio, altrimenti il valore predefinito è 0
iniziale_volume, iniziale_volume_
Specificare il volume iniziale in termini assoluti o proporzionali. Entrambi sono obbligatori se max_volume è un parametro perché il parametro non verrà valutato al primo passaggio temporale. Se vengono forniti entrambi e massimo_volume non è un parametro, quindi il valore assoluto viene ignorato
Uno è obbligatorio
area, livello Float opzionale o parametro che definisce l'area e il livello
del storage node. Questi valori sono accessibili tramite get_zona e ottenere_
metodi di livello rispettivamente
Evaporazione
opzionale
e precipitazione (
_conversione
Fattore di conversione per convertire le precipitazioni e l'evaporazione nelle unità di lunghezza/giorno richieste
Facoltativo, l'impostazione predefinita è 0.001 per convertire mm/giorno per l'uso con un'area del serbatoio in km2
penalità di evaporazione (costo di evaporazione)
Penalità di allocazione fissata sull'uscita di evaporazione
Facoltativo, il valore predefinito è -999
presto in arrivo...
Le link node rappresenta un collegamento nel sistema idrico o in un altro punto di interesse in cui viene assegnato un vincolo di flusso massimo o minimo o una priorità di allocazione. Si noti che in Pywr non è possibile assegnare vincoli di flusso a Edges (Links) e pertanto i nodi di collegamento vengono spesso utilizzati per questo scopo. API Riferimento.
_flusso
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
massimo_
flow
Il vincolo di flusso massimo sul nodo
Opzionale min
Il vincolo minimo di flusso sul nodo
Facoltativo
presto in arrivo...
Le Nodo Rolling VirtualStorage è un storage node virtuale a rotazione utile per l'implementazione di licenze a rotazione. API Riferimento.
Note:
DA FARE: La proprietà dei costi non è attualmente rispettata. Vedi il numero #242.
volume raggiungere
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
nodi
Elenco dei nodi di afflusso/uscita che influiscono sul volume di archiviazione
Richiesto
min_
Il volume minimo che lo spazio di archiviazione
può
_volume
Il volume massimo dello spazio di archiviazione
Obbligatorio, il valore predefinito è 0 se non viene inserito
volume_iniziale
Il volume di archiviazione iniziale
È richiesto uno
fattori
Elenco di fattori per cui moltiplicare il flusso dei nodi. I fattori positivi rimuovono l'acqua dallo stoccaggio, i fattori negativi la rimuovono.
Facoltativo
fasi temporali
Il numero di fasi temporali da applicare allo stoccaggio rotativo
Richiesto
giorni
Il numero di giorni per applicare lo stoccaggio cumulativo. La specificazione di un numero di giorni (anziché di un numero di intervalli temporali) è valida solo con i modelli che eseguono un intervallo temporale con frequenza giornaliera
Richiesto
presto in arrivo...
Le Nodo RiverGauge è una stazione di misura fluviale, con un flusso residuo minimo (MRF). API Riferimento.
mrf
Il flusso residuo minimo (MRF) sul manometro
Richiesto
mrf_cost
Il costo del percorso tramite la MRF
Richiesto
costo
Il costo dell'altro percorso (non vincolato)
Richiesto
presto in arrivo...
reimpostare_
giorno
Il giorno del mese (0-31) per reimpostare il volume al valore iniziale Reset richiesto
_mese
Il mese dell'anno (0-12) per reimpostare il volume al valore iniziale
Richiesto
reimpostare_a_volume_iniziale
Reimposta il volume sul volume iniziale anziché sul volume massimo ogni anno (l'impostazione predefinita è False)
Richiesto
Le MultiSplitLink node è un'estensione di Link a tratti che include slot aggiuntivi da cui connettersi.
Concettualmente questo nodo ha il seguente aspetto interno,
Per ogni slot aggiuntivo vengono aggiunti un collegamento secondario nel PieceWiseLink (ad esempio X2 sopra) e i nodi (ad esempio Bo e Bi) in questa classe.
Infine viene fornito un meccanismo per (facoltativamente) fissare il rapporto tra l'ultimo link secondario non diviso (cioè X1) e ciascuno dei collegamenti secondari (cioè X2). Questo meccanismo utilizza Nodo aggregato internamente. API Riferimento.
Note: gli utenti devono fare attenzione quando utilizzano il meccanismo dei fattori. I fattori utilizzano l'ultimo collegamento secondario non diviso (ad esempio X1 ma non X0). Se questo collegamento è vincolato da un flusso massimo o minimo, o se esiste un altro collegamento non vincolato (ad esempio se X0 non è vincolato), i rapporti sull'intero nodo potrebbero non essere applicati come previsto.
_slot
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
massimo_
flow
Il vincolo di flusso massimo sul nodo
(opzionale)
Numero di slot (e link secondari) aggiuntivi da fornire. Deve essere maggiore di zero.
Facoltativo
fessura_nomi
I nomi con cui fare riferimento agli slot durante la connessione ad altri nodi. La lunghezza deve essere maggiore di uno rispetto al numero degli extra_slot. Il primo elemento si riferisce alla connessione PieceWiseLink con i seguenti elementi per ogni slot aggiuntivo.
Facoltativo
fattori
Se fornita, la lunghezza deve essere uguale a uno in più rispetto al numero di extra_slots. Ogni elemento è la percentuale del flusso totale che passa attraverso i link secondari aggiuntivi. Se non è richiesto alcun fattore per un particolare link secondario, utilizza Nessuna per i suoi articoli. I fattori vengono normalizzati prima dell'uso nel solutore.
Facoltativo
presto in arrivo...
Le Nodo di archiviazione aggregata è una somma aggregata di altri Conservazione nodi
Questo oggetto dovrebbe comportarsi come Conservazione restituendo corrente flusso, volume e attuale_pc. Tuttavia questo oggetto non può essere connesso ad altri all'interno della rete. API Riferimento.
Note: questo nodo non può essere connesso ad altri nodi della rete.
modello
Istanza `Model`
Richiesto
nome
str
Richiesto
nodi di archiviazione
Le Conservazione oggetti a cui restituire la somma totale di
Richiesto
presto in arrivo...
Le nodo fluviale è un nodo nella rete fluviale, che può avere più nodi a monte (cioè una confluenza) ma solo un nodo a valle. API Riferimento.
_flusso
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
massimo_
flow
Il vincolo di flusso massimo sul nodo
Opzionale min
Il vincolo minimo di flusso sul nodo
Facoltativo
presto in arrivo...
Le PiecewiseLink node è un'estensione di Node che rappresenta un non lineare Link con una funzione di costo a pezzi. Questo oggetto ha lo scopo di modellare situazioni in cui è vantaggioso fornire determinate portate ma oltre un limite fisso si verifica una variazione (o zero) del costo. API Riferimento.
Questo nodo è implementato utilizzando una struttura di nodi composti in questo modo:
Ciò significa che le rotte non attraversano direttamente questo nodo a causa del dominio separato al centro. Vengono invece creati diversi nuovi percorsi per ciascuno dei collegamenti secondari e delle connessioni al nodo Output/Input. Il motivo di questa interruzione del percorso è evitare un aumento geometrico del numero di percorsi quando più PieceWiseLink sono presenti nello stesso percorso.
_flusso
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
massimo_
flow
Il vincolo di flusso massimo sul nodo
Opzionale min
Il vincolo minimo di flusso sul nodo
Facoltativo
presto in arrivo...
Le nodo di uscita () è un'uscita generale in qualsiasi punto della rete. I nodi di uscita rimuovono l'acqua dal sistema.
I nodi di output sono obbligatori alla fine di un river e in questo caso d'uso generalmente non hanno una penalità di allocazione o un flusso massimo assegnato.
I nodi di uscita vengono utilizzati anche per rappresentare il fabbisogno idrico elevato. In questo caso d'uso, tendono ad avere penalità di allocazione negative in modo che il programma lineare allochi loro acqua oltre a un\ _flusso massimo che può essere una costante o un parametro che rappresenta la domanda di acqua.
_flusso
presto in arrivo...
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
massimo_
flow
Il vincolo di flusso massimo sul nodo
Opzionale min
Il vincolo minimo di flusso sul nodo
Facoltativo
Le VirtualStorage node è un'unità di archiviazione virtuale. API Riferimento.
Note:
DA FARE: La proprietà dei costi non è attualmente rispettata. Vedi il numero #242.
volume raggiungere
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
nodi
Elenco dei nodi di afflusso/uscita che influiscono sul volume di archiviazione
Richiesto
min_
Il volume minimo che lo spazio di archiviazione
può
_volume
Il volume massimo dello spazio di archiviazione
Obbligatorio, il valore predefinito è 0 se non viene inserito
volume_iniziale
Il volume di archiviazione iniziale
È richiesto uno
fattori
Elenco di fattori per cui moltiplicare il flusso dei nodi. I fattori positivi rimuovono l'acqua dallo stoccaggio, i fattori negativi la rimuovono.
Facoltativo
presto in arrivo...
Le Nodo di archiviazione virtuale stagionale è un storage node virtuale che funziona solo per un periodo specificato entro un anno.
Questo nodo è particolarmente utile per rappresentare le licenze che vengono applicate solo durante periodi specificati. Il ripristina_giorno e ripristina_mese i parametri indicano quando il nodo inizia a funzionare e fine_giorno e fine_mese quando smette di funzionare. Per il periodo in cui il nodo non è operativo, il volume del nodo rimane invariato e il nodo non applica alcun vincolo al modello.
La fine_giorno e fine_il mese può rappresentare una data precedente all'anno in cui è stato ripristinato_giorno e e reset_mese. Questa situazione rappresenta una licenza valida oltre il limite di un anno. Ad esempio, una che è attiva tra ottobre e marzo e non attiva tra aprile e settembre.API Riferimento.
giorno . volume_giorno
reimpostare_
Il giorno del mese (0-31) in cui il nodo inizia a funzionare e il suo volume viene reimpostato sul valore iniziale o sul volume massimo
Reset richiesto
_mese
Il mese dell'anno (0-12) in cui il nodo inizia a funzionare e il suo volume viene reimpostato sul valore iniziale o sul volume massimo.
Richiesto
reimpostare_a_iniziale_
Reimposta il volume sul volume iniziale anziché sul volume massimo ogni anno (l'impostazione predefinita è False) Fine
obbligatoria
Il giorno del mese (0-31) in cui il nodo smette di funzionare
Richiesto
fine_mese
Il mese dell'anno (0-12) in cui il nodo smette di funzionare
Richiesto
presto in arrivo...
UN link di perdita consente la definizione di una perdita proporzionale fissa di flusso che attraversa questo nodo. I link di perdita sono spesso usati per rappresentare lavori di trattamento dell'acqua potabile che comportano alcune perdite di processo.
Gli attributi di flusso massimo e minimo definiti vengono applicati all'output netto dopo le perdite.
Il nodo stesso registra l'output netto nel suo attributo flow (che verrebbe utilizzato da qualsiasi registratore collegato).
Penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
Fattore di perdita
perdita_fattore: float o parametro. La percentuale di flusso che si perde attraverso questo nodo. Deve essere maggiore o uguale a zero. Questo valore è una percentuale del flusso lordo o netto a seconda del valore della perdita_tipo_fattore
.
Facoltativo, il valore predefinito è 0
Tipo di fattore di perdita
«lordo» o «netto» (impostazione predefinita) per specificare se il fattore di perdita viene applicato rispettivamente come percentuale del flusso lordo o netto.
Facoltativo, il valore predefinito è «net»
Flusso massimo
Il vincolo di flusso massimo sul nodo
Facoltativo
Flusso minimo
Il vincolo minimo di flusso sul nodo
Facoltativo
In questo esempio 10% della quantità lorda di acqua che fluisce nel nodo viene persa.
layout: description: visible: false outline: visible: true pagination: visible: true tableOfContents: visible: true title: visible: true
Il tipo di acqua storage node consente agli utenti di costruire diversi serbatoi con diverse modalità operative. Di seguito sono riportati i nodi di stoccaggio dell'acqua più utilizzati:
Le storage node è un nodo generale in grado di immagazzinare acqua, che ha limitazioni di volume minimo e massimo. API Riferimento.
volume pc
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
min_
Il volume minimo dello spazio di archiviazione.
Il valore predefinito è 0.0 Max opzionale
_volume
Il volume massimo dello spazio di archiviazione. Il valore predefinito è 0.0
Obbligatorio, il valore predefinito è 0 se non viene inserito
iniziale_volume, iniziale_volume_
Specificare il volume iniziale in termini assoluti o proporzionali. Entrambi sono obbligatori se max_volume è un parametro perché il parametro non verrà valutato al primo passaggio temporale. Se vengono forniti entrambi e massimo_volume non è un parametro, quindi il valore assoluto viene ignorato
Uno è obbligatorio
area, livello Float opzionale o parametro che definisce l'area e il livello
del storage node. Questi valori sono accessibili tramite get_zona e get_level metodi rispettivamente
Facoltativo
presto in arrivo...
Le nodo turbina può rappresentare una turbina di una centrale idroelettrica. Calcola il flusso richiesto per generare un particolare obiettivo di produzione di energia idroelettrica in ogni fase temporale. .
_flusso_flusso_capo
presto in arrivo...
gli scenari pywr sono compatibili con i seguenti parametri:
Le nodo AggregatedNode è una somma aggregata di altri Nodo nodi.
Questo oggetto dovrebbe comportarsi come Nodo restituendo corrente flusso. Tuttavia, questo oggetto non può essere connesso ad altri all'interno della rete. .
Note: questo nodo non può essere connesso ad altri nodi della rete.
presto in arrivo...
penalità di allocazione
Il costo unitario del flusso attraverso il nodo
Facoltativo
bersaglio
Obiettivo di produzione di energia idroelettrica. Le unità dovrebbero essere espresse in unità di energia al giorno
Facoltativo
acqua_elevazione_parametro
Elevazione dell'acqua che entra nella turbina. La differenza di questo valore con turbina_
l'elevazione dà la testa di lavoro della turbina
(Optional max)
Limiti superiori del flusso calcolato. Se impostato, il flusso restituito da questo parametro è al massimo il valore del valore massimo_parametro di flusso
Minimo
opzionale
Limiti inferiori del flusso calcolato. Se impostato, il flusso restituito da questo parametro è almeno il valore del valore minimo_parametro di flusso
Minimo
opzionale
Presenza minima affinché si verifichi il flusso. Se la prevalenza effettiva è inferiore a questo valore, viene restituito un flusso pari a zero
Facoltativo
turbina_
elevazione Elevazione della turbina stessa. La differenza tra l'acqua_elevazione e questo valore dà la testa di lavoro della turbina
Facoltativo
efficienza
L'efficienza della turbina
Facoltativo
densità
La densità dell'acqua
Facoltativo
flusso_unità_conversione
Un fattore utilizzato per trasformare le unità di flusso in modo che siano compatibili con l'equazione qui riportata. Questo dovrebbe convertire il flusso in unità di m3/giorno
Facoltativo
energia_unità_conversione
Un fattore utilizzato per trasformare le unità di energia totale. Il valore predefinito è 1e-6 per restituire MJ
Facoltativo
modello
Istanza `Model`
Richiesto
nome
str
Richiesto
nodi di archiviazione
Le Nodo oggetti a cui restituire la somma totale di
Richiesto
Gli scenari in WaterStrategy consentono agli utenti di simulare ed esplorare varie strategie di gestione dell'acqua regolando diversi elementi di un modello. Forniscono un quadro per comprendere come i cambiamenti negli input, nelle ipotesi o nei dati potrebbero influenzare i risultati in condizioni diverse.
WaterStrategy offre due tipi di scenari per soddisfare varie esigenze nella modellazione della gestione dell'acqua:
WaterStrategy Scenari: Questo tipo viene utilizzato quando gli utenti devono modificare comportamenti, parametri o dati specifici su scala localizzata o ridotta. Questi scenari sono ideali per i casi in cui è necessario modificare solo alcuni elementi del modello senza alterare l'intero set di dati. Consente modifiche mirate, facilitando il test degli effetti delle singole modifiche all'interno del sistema.
Scenari PyWR: Questo tipo di scenario è progettato per gestire casi più complessi, in particolare quelli che comportano incertezza. È specializzato nella combinazione di dati su più scale, consentendo una valutazione completa di diverse variabili. Questo approccio è particolarmente utile quando si lavora con input incerti o quando si modellano condizioni future, in quanto consente di esplorare in che modo diverse combinazioni di dati e ipotesi possono influire sui risultati.
Parametro di base che fornisce un indice metodo. API Riferimento
bambini
commento
commento: unicode
doppia_taglia
doppia_dimensione: 'int'
numero intero_dimensione
numero intero_dimensione: 'int'
è_variabile
è_variabile: 'bool'
modello
nome
genitori
taglia
presto in arrivo...
layout: description: visible: false outline: visible: true pagination: visible: true tableOfContents: visible: true title: visible: true
Il tipo di nodo idroelettrico consente agli utenti di definire i dettagli rilevanti delle turbine nelle dighe e calcolare la generazione di energia idroelettrica.
Gli scenari Pywr offrono un approccio più avanzato e completo alla modellazione della gestione dell'acqua, in particolare quando si lavora con l'incertezza e si valutano varie combinazioni di dati e comportamenti del sistema e input di dati. A differenza degli scenari WaterStrategy, che si concentrano su regolazioni localizzate, gli scenari Pywr consentono di sperimentare un'ampia gamma di possibilità variando più input e combinazioni contemporaneamente.
Negli scenari Pywr:
Gli utenti possono definire più scenari, ognuno dei quali contiene più varianti (o dimensioni).
Il sistema simulerà tutte le combinazioni di queste variazioni a meno che non venga selezionata una combinazione specifica per la simulazione.
Ad esempio, se vengono definiti due scenari Pyrr, ciascuno con tre varianti (dimensione = 3), il numero totale di simulazioni sarà 9 (3 x 3). Questo approccio consente agli utenti di esplorare un'ampia gamma di potenziali risultati e interazioni tra diversi fattori del modello.
In una rete, fai clic su Visualizza i dati di rete icona
Si aprirà il pannello di destra. Nella sezione Ingressi, digita»scenari» e clicca su Aggiungi un input icona
Verrà visualizzata una finestra, digitare»scenari», seleziona scenari attributo e clicca Salva come mostrato nell'immagine seguente
Si aprirà una nuova finestra, seleziona PYWR_SCENARI e fai clic Salva
Una volta aperto il pannello di personalizzazione degli scenari, puoi definire tutti gli scenari Pywr necessari. Per creare un nuovo scenario Pywr, segui questi passaggi:
Inserisci un Nome per il Pywr-Scenario e specificare il Taglia (numero di varianti).
Le Ensemble l'attributo è facoltativo e aiuta a tenere traccia di scenari di indice specifici all'interno dello scenario Pywr
Dopo aver creato gli scenari pywr, il sistema mostrerà le seguenti informazioni:
Cliccando sul JSON la scheda mostrerà la versione JSON automatica di Scenario Pywr definizione
Per caricare i dati come DataFrameParameter h5, fare riferimento a Sezione Parametri HDF5 per accedere correttamente ai dati dello scenario
WaterStrategy Gli scenari forniscono uno strumento per apportare modifiche mirate a elementi specifici all'interno di un modello di gestione dell'acqua. Questi scenari sono particolarmente utili quando si desidera sperimentare modifiche localizzate a parametri, comportamenti o dati in modo flessibile e controllato.
Quando viene creato uno scenario WaterStrategy, agisce come forchetta di un modello di rete esistente. La rete originale viene assegnata allo scenario di base, che rappresenta le condizioni predefinite o iniziali del sistema. Partendo da questa linea di base, uno scenario WaterStrategy consente modifiche precise, che si tratti di modificare gli input di dati o di regolare i parametri che definiscono il comportamento degli elementi chiave all'interno del sistema.
Questa capacità di modificare alcuni aspetti del modello lasciando il resto invariato rende WaterStrategy Scenari ideali per testare l'impatto delle singole modifiche. Ad esempio, è possibile modificare le regole di funzionamento del giacimento o modificare le previsioni della domanda senza dover ricostruire l'intero modello. Questo approccio mirato aiuta gli utenti a valutare rapidamente in che modo le modifiche specifiche influiscono sui risultati delle strategie di gestione dell'acqua di raffinazione.
Inizia facendo clic sull'icona Clona uno scenario.
Seleziona lo scenario che desideri clonare e assegna un nome
Per un tutorial dettagliato, consulta la WaterStrategy tutorial sulla creazione e l'esecuzione di un nuovo scenario
description: Una panoramica dei parametri Pywr supportati da WaterStrategy
I parametri sono funzioni che restituiscono un valore nel modello in ogni fase temporale. Questi valori possono essere una costante, basata sull'ora (ad esempio, sul giorno o sul mese), un calcolo basato sullo stoccaggio nel serbatoio della fase temporale e molti altri calcoli. Il parametro personalizzato può essere scritto anche in Python.
Questa pagina descrive (la maggior parte) i tipi di parametri supportati da Pywr. È possibile trovare una panoramica dei parametri in Pywr qui. È disponibile l'elenco completo dei parametri Pywr integrati qui.
In una rete, fai clic sulla scheda «Parametri»:
Accanto alla sezione «Categorie di tipo di parametri», fai clic sul pulsante «+» e seleziona «PYWR\ _PARAMETER».
Apparirà un input di testo. Inserisci il nome del tuo parametro:\
Modifica il parametro come richiesto nell'editor JSON fornito:
Per semplificare le modifiche ai parametri, WaterStrategy offre editor per i parametri di uso comune, come i parametri del profilo mensile, con valori predefiniti precompilati, e editor grafici per semplificare l'immissione dei dati.
Esempio di editor di parametri
Nella scheda Parametri, quando aggiungi un nuovo parametro, seleziona 'PYWR_PARAMETRO_MENSILE\ _PROFILE' come mostrato:\
Nota che l'editor che appare mostrerà una scheda JSON, ma anche una scheda Plot and Table. La modifica dei dati nella tabella aggiornerà automaticamente i dati nel JSON come mostrato:\
Queste modifiche aggiornano automaticamente il JSON:
Le penalità di allocazione sono attributi dei nodi che consentono a Pywr di simulare l'allocazione dell'acqua. Possono anche essere chiamate «priorità di allocazione» o «costi».
Una penalità bassa avrà la priorità di allocazione più alta, un numero alto ha la più bassa.
Quindi, ad esempio, se tre nodi hanno priorità 100, 3 e -2, allora il nodo con -2 ottiene prima l'acqua, poi 3, poi 100.
Ecco alcune domande sulle eventuali sanzioni per l'assegnazione dell'acqua e alcune brevi risposte:
Perché e come fa Pywr ad allocare l'acqua in questo modo? In ogni fase temporale l'algoritmo di allocazione di Pywr (un programma lineare), riduce al minimo la penalità di allocazione dell'intero sistema. Il flusso attraverso i nodi viene moltiplicato per le rispettive penalità di allocazione. Questa tecnica è utilizzata dagli anni '50 dai pianificatori dell'energia, dei trasporti e delle risorse idriche e dalle società di logistica. Tutti vogliono sistemi che funzionino a basso costo, quindi in genere utilizzano i costi operativi finanziari come penalità. Ciò ha senso, poiché consente di utilizzare il modello per bilanciare una rete domanda-offerta al costo più basso.
Trovi confusa l'idea di una penalità negativa? In tal caso, pensa a una penalità negativa come a un costo negativo, che cos'è? un vantaggio! Quindi, se volete allocare l'acqua dove genera i maggiori benefici nel vostro modello Pywr, utilizzerete delle penalità negative. In questo caso, anziché chiamare questi attributi di nodo penali o costi di allocazione, puoi riferirti ad essi come priorità di allocazione. In questo caso un nodo con una priorità di allocazione di -99 riceverà acqua molto prima di -10. Come mostrato nell'esempio della terza frase precedente, le penalità di allocazione negative e positive possono essere utilizzate nello stesso modello.
Le penalità di assegnazione hanno un significato particolare? No, non lo fanno. Sono lì solo per aiutare il tuo modello ad allocare l'acqua in un modo che abbia senso per te, gestore e pianificatore delle risorse idriche.
Come faccio a sapere se ho impostato correttamente le penalità per l'assegnazione dell'acqua? Se il tuo modello prevede un'allocazione adeguata dell'acqua in condizioni normali, ma anche durante inondazioni e siccità, hai stabilito le sanzioni appropriate. Congratulazioni! il tuo modello sta per diventare «ben calibrato».
Se apporto una modifica sostanziale al mio modello, ad esempio aggiungo una nuova grande infrastruttura o aggiungo un nuovo tipo di utente idrico, devo modificare le penalità nel mio modello? Sì, alcune penalità del modello potrebbero richiedere qualche modifica, a seconda della portata della modifica. Prova a vedere.
Posso usare dei numeri per le penalità? Ad esempio, se il mio modello ha 2 nodi, posso usare un milione negativo e uno positivo come penalità? Sì, ma è una cattiva idea. Usa numeri il più vicini possibile. In caso contrario, man mano che il modello cresce, potresti esaurire le penalità disponibili e il modello inizierà a commettere errori di arrotondamento. Tuttavia, se si utilizzano penalità troppo simili, il modello potrebbe non esserne sensibile (vale a dire, non considerarle adeguatamente nella simulazione delle allocazioni). Con un po' di esperienza imparerai a stabilire penalità che funzionino bene. Per acquisire tale esperienza, provate a modificare le penalità e scoprite in che modo influiscono sui risultati del modello.
Infine, forniamo alcuni dettagli tecnici in più sulle penalità:
Ai serbatoi e ai nodi di stoccaggio sono assegnate penalità di allocazione. Una penalità negativa indica che il serbatoio tenderà ad accumulare acqua, a meno che una penalità inferiore su un altro nodo comporti una priorità inferiore per lo stoccaggio del serbatoio.
Le penalità di allocazione possono essere costanti (parametri costanti) o profili (mensili, giornalieri, settimanali) che cambiano nel tempo. Inoltre, le penalità di allocazione possono avere diversi livelli definiti da diverse curve di controllo in base al volume del serbatoio. Nonostante le penalità relative all'allocazione del serbatoio e dello stoccaggio influiscano sullo stoccaggio dell'acqua, le emissioni da tali nodi risulteranno da un equilibrio tra le penalità del sistema e considerando le penalità di allocazione a valle, poiché l'algoritmo tenta di minimizzare la penalità complessiva del sistema in ogni fase temporale.
Fare clic
Modifica lo scenario predefinito corrente facendo clic su
Tutte le Parametro sottoclassi in pywr discendono da una classe base comune.
Inizializza self. Vedi help (type (self)) per una firma accurata. API Riferimento
bambini
commento
commento: unicode
doppia_taglia
doppia_dimensione: 'int'
numero intero_dimensione
numero intero_dimensione: 'int'
è_variabile
è_variabile: 'bool'
modello
nome
genitori
taglia
presto in arrivo...
Un parametro che varia lo scenario. I valori di questo parametro sono costanti nel tempo, ma variano all'interno di un singolo scenario. API Riferimento
misura dimensione variabile
bambini
commento
commento: unicode
raddoppiare_
doppia_dimensione: 'int'
intero_
intera_dimensione: 'int'
è_
è_variabile: 'bool'
modello
nome
genitori
taglia
presto in arrivo...
Una raccolta di IndexParameters
Questa classe si comporta come un set. I parametri possono essere aggiunti o rimossi da esso. Il suo indice è l'indice dei suoi parametri secondari aggregati utilizzando una funzione di aggregazione (ad esempio sum). API Riferimento
agg\ _func
bambini
commento
commento: unicode
doppia_taglia
doppia_dimensione: 'int'
numero intero_dimensione
numero intero_dimensione: 'int'
è_variabile
è_variabile: 'bool'
modello
nome
parametri
parametri: elenco
genitori
taglia
presto in arrivo...
bambini
commento
commento: unicode
doppia_taglia
doppia_dimensione: 'int'
numero intero_dimensione
numero intero_dimensione: 'int'
è_variabile
è_variabile: 'bool'
modello
nome
genitori
taglia
Parametro che prende il massimo del negativo di a Parametro e valore costante (soglia). API Riferimento
misura dimensione variabile
bambini
commento
commento: unicode
raddoppiare_
doppia_dimensione: 'int'
intero_
intera_dimensione: 'int'
è_
è_variabile: 'bool'
modello
nome
parametro
parametro: pywr.parameters. _parametri.Parametro
genitori
taglia
soglia
soglia: 'doppia'
presto in arrivo...
Parametro che richiede un minimo del negativo di a Parametro e valore costante (soglia). API Riferimento
misura dimensione variabile
bambini
commento
commento: unicode
raddoppiare_
doppia_dimensione: 'int'
intero_
intera_dimensione: 'int'
è_
è_variabile: 'bool'
modello
nome
parametro
parametro: pywr.parameters. _parametri.Parametro
genitori
taglia
soglia
soglia: 'doppia'
presto in arrivo...
Un semplice parametro che definisce un valore costante. API Riferimento
tipo
parametro costante
sì
valore
Il valore costante
sì
Una raccolta di IndexParameters. Questa classe si comporta come un set. I parametri possono essere aggiunti o rimossi da esso. Il suo valore è il valore dei suoi parametri secondari aggregati utilizzando una funzione di aggregazione (ad esempio sum).
In questo caso Aggregated Parameter sta moltiplicando due parametri insieme
Fattore di domanda della curva di controllo
Questo esempio mostra una domanda di base moltiplicata per un fattore che riduce la domanda in base a una curva di controllo del giacimento. È possibile fare clic su ciascuno di questi parametri per vedere come sono definiti.
bambini
commento
commento: unicode
denominatore
doppia_taglia
doppia_dimensione: 'int'
numero intero_dimensione
numero intero_dimensione: 'int'
è_variabile
è_variabile: 'bool'
modello
nome
numeratore
genitori
taglia
bambini
commento
commento: unicode
raddoppiare_
doppia_dimensione: 'int'
intero_
intera_dimensione: 'int'
è_
è_variabile: 'bool'
modello
nome
parametro
parametro: pywr.parameters. _parametri.Parametro
genitori
taglia
tipo
aggregato
sì
parametri
I parametri da aggregare
Facoltativo
agg_func
La funzione di aggregazione. Deve essere una tra {«sum», «min», «max», «mean», «product»} o una funzione richiamabile che accetta un elenco di valori
Facoltativo
Parametro che richiede un massimo di un altro Parametro e valore costante (soglia).
Questa classe è una versione più efficiente di Parametro aggregato dove un singolo Parametro viene confrontato con un valore costante. API Riferimento
misura dimensione variabile
bambini
commento
commento: unicode
raddoppiare_
doppia_dimensione: 'int'
intero_
intera_dimensione: 'int'
è_
è_variabile: 'bool'
modello
nome
parametro
parametro: pywr.parameters. _parametri.Parametro
genitori
taglia
soglia
soglia: 'doppia'
presto in arrivo...
Parametro che richiede almeno un altro Parametro e valore costante (soglia).
Questa classe è una versione più efficiente di Parametro aggregato dove un singolo Parametro viene confrontato con un valore costante. API Riferimento
misura dimensione variabile
bambini
commento
commento: unicode
raddoppiare_
doppia_dimensione: 'int'
intero_
intera_dimensione: 'int'
è_
è_variabile: 'bool'
modello
nome
parametro
parametro: pywr.parameters. _parametri.Parametro
genitori
taglia
soglia
soglia: 'doppia'
presto in arrivo...
Le profilo settimanale contiene 52 settimane all'anno. L'ultima settimana dell'anno avrà più di 7 giorni, poiché 365/7 non è intero. API Riferimento
tipo
profilo settimanale
sì
valori
Una matrice di 52 numeri i cui indici rappresentano i giorni dell'anno.
sì
Parametro che fornisce un profilo mensile. Il profilo mensile restituisce un valore diverso in base al mese della fase temporale corrente. API Riferimento
tipo
profilo mensile
sì
valori
Una matrice di 12 numeri i cui indici rappresentano i mesi dell'anno.
sì
Water Strategy offre un modo alternativo per lavorare con i profili mensili.
Parametro che fornisce un profilo giornaliero per scenario.
Questo parametro fornisce un profilo annuale ripetuto con una risoluzione giornaliera. Viene restituito un profilo diverso per ogni membro di un determinato scenario.
presto in arrivo...
Parametro che fornisce un valore riducente uniformemente da uno a zero.
Questo parametro è destinato all'uso con Storage virtuale annuale nodo per fornire un profilo che rappresenti l'utilizzo medio perfetto del volume annuo. Restituisce un valore di 1 il giorno di ripristino e successivamente si riduce di 1/366 ogni giorno successivo.
presto in arrivo...
tipo
profilo giornaliero
sì
valori
Una matrice di 366 numeri i cui indici rappresentano i giorni dell'anno.
sì
scenario
Oggetto scenario su cui devono essere forniti diversi profili
sì
valori
La lunghezza della prima dimensione deve essere uguale al numero di membri nell'oggetto scenario e la lunghezza della seconda dimensione deve essere 366
sì
reimpostare_
giorno
Il giorno del mese (1-31) per reimpostare il volume al valore iniziale Sì reset
_mese
Il mese dell'anno (1-12) per reimpostare il volume al valore iniziale
sì
Parametro che ne compensa un altro Parametro con un valore costante.
Questa classe è una versione più efficiente di Parametro aggregato dove un singolo Parametro è compensato da un valore costante. API Riferimento
misura dimensione variabile ottimizzazione (superiore)_legami
bambini
commento
commento: unicode
raddoppiare_
doppia_dimensione: 'int'
intero_
intera_dimensione: 'int'
è_
è_variabile: 'bool'
modello
nome
compensare
L'offset da applicare al valore restituito da parametro
parametro
Il parametro da confrontare con il float
inferiore_
limiti
I limiti inferiori dell'offset se utilizzati durante l'
I limiti superiori dell'offset se utilizzati durante l'ottimizzazione
genitori
taglia
presto in arrivo...
Parametro che interpola un profilo giornaliero utilizzando una funzione a base radiale (RBF).
Il profilo giornaliero viene calcolato durante il modello reimpostare utilizzando una funzione a base radiale con il giorno dell'anno come variabili indipendenti. I giorni dell'anno sono definiti dall'utente insieme ai valori da utilizzare in ciascuno di questi giorni per l'interpolazione. Il primo giorno dell'anno deve essere sempre uno e il suo valore viene ripetuto come 366esimo valore. Inoltre, il secondo e il penultimo valore vengono rispecchiati per incoraggiare la comparsa di un gradiente coerente oltre il confine. I calcoli RBF vengono eseguiti utilizzando Scipy.interpolate.rbf oggetto, fai riferimento alla documentazione di Scipy per maggiori informazioni. API Riferimento
superiore
giorni_di_anno
I giorni dell'anno in cui vengono definiti i valori di interpolazione. Il primo valore deve essere uno
sì
valori
Valori da utilizzare per l'interpolazione corrispondenti al giorni_di_anno
sì
inferiore_
limiti
I limiti inferiori dei valori quando utilizzati durante l'ottimizzazione Sì
_legami
I limiti superiori dei valori utilizzati durante l'ottimizzazione
sì
variabile_giorni_di_anno_gamma
I limiti massimi (positivi o negativi) per i giorni dell'anno durante l'ottimizzazione. Un valore diverso da zero farà sì che i valori dei giorni dell'anno vengano esposti come variabili intere (tranne il primo valore che rimane al giorno 1). Questo valore è limitato a quelle variabili in base allo spostamento massimo rispetto a quello dato giorni_di_anno
sì
min_valore, max_valore
Facoltativamente, limita il profilo giornaliero interpolato a un valore minimo e/o massimo. I valori predefiniti sono l'infinito negativo e positivo rispettivamente per il minimo e il massimo
sì
rbf_kwargs
Dizionario opzionale degli argomenti delle parole chiave da basare sull'oggetto Rbf
Facoltativo
presto in arrivo...
Parametro variabile nel tempo utilizzando un array e TimeStep.index con fattori moltiplicativi per scenario.
I valori sono i dati delle serie temporali di base perturbati da un fattore. Il fattore è ricavato da fattori quali la forma (scenario.size, 12). Pertanto i fattori variano in base ai singoli scenari in base allo scenario e al mese. API Riferimento
scenario
Oggetto scenario su cui devono essere forniti diversi profili
sì
valori
La lunghezza della prima dimensione deve essere uguale al numero di membri nell'oggetto scenario e la lunghezza della seconda dimensione deve essere 12
sì
presto in arrivo...
Parametro che fornisce un profilo settimanale per scenario
Questo parametro fornisce un profilo annuale ripetuto con una risoluzione settimanale. Viene restituito un profilo diverso per ogni membro di un determinato scenario.
presto in arrivo...
scenario
Oggetto scenario su cui devono essere forniti diversi profili
sì
valori
La lunghezza della prima dimensione deve essere uguale al numero di membri nell'oggetto scenario e la lunghezza della seconda dimensione deve essere 52
sì
scenario
Oggetto scenario su cui devono essere forniti diversi profili
sì
valori
La lunghezza della prima dimensione deve essere uguale al numero di membri nell'oggetto scenario e la lunghezza della seconda dimensione deve essere 12
sì
Un parametro che varia lo scenario.
I valori di questo parametro variano nel tempo in base all'indice e variano all'interno di un singolo scenario. API Riferimento
presto in arrivo...
Parametro Timeseries con allineamento e ricampionamento automatici. API Riferimento
tipo
dataframe
sì
modello
Facoltativo
dataframe
Facoltativo
scenario
Facoltativo
Questo parametro legge i dati dell'array da un database HDF PyTables.
Il parametro legge i dati utilizzando l'interfaccia dell'array PyTables e pertanto non richiede il caricamento dell'intero set di dati in memoria. Ciò è utile per esecuzioni di modelli di grandi dimensioni.
Archiviando i file HDF5 nel formato «fisso», gli utenti possono raggiungere velocità di accesso ai dati ottimali, rendendo HDF5 uno strumento efficace per scenari PyWR che utilizzano DataFrame come parametri, in cui il recupero rapido dei dati è fondamentale. I file HDF5 vengono letti come un dizionario, in cui ogni chiave rappresenta un DataFrame panda. Ad esempio, la struttura di un file inflows.h5 potrebbe contenere tre chiavi, ognuna delle quali rappresenta un fiume diverso. Ogni chiave contiene tre serie temporali che possono essere assegnate a uno scenario Pywr di dimensione 3.
Se si utilizza il file h5 DataFrame per eseguire pywr-scenarios, fare riferimento a per attivare questa funzionalità
Nota: La dimensione di pywr-scenarios deve corrispondere al numero di chiavi nel file h5
Restituisce uno dei due valori in base al valore del registratore e a una soglia. API Riferimento
soglia
Soglia con cui confrontare il valore del registratore
sì
dente di arresto
Se è vero, il parametro si comporta come un cricchetto. Una volta attivato per la prima volta, rimane nella posizione di attivazione (default=False)
sì
registratore
registratore: pywr.recorders. _recorders.Recorder
presto in arrivo...
Parametro che utilizza un IndexParameter per indicizzare una matrice di parametri.
Un esempio di utilizzo di questo parametro consiste nel restituire un fattore di risparmio della domanda (come float) basato sull'attuale livello di risparmio della domanda (calcolato da un Parametro indice). API Riferimento
parametro_indice
Parametro indice
sì
parametri
iterabile di Parametri o galleggianti
sì
Il codice precedente utilizza l'indice fornito dal parametro chiamato 'Reservoir control curve', che è un Parametro dell'indice della curva di controllo. L'indice 0 restituisce un 1, l'indice 2 restituisce 0.9 ecc...
In questo esempio questo parametro viene utilizzato per ridurre una domanda in base a una curva di controllo del serbatoio. Per favore, vai al Esempio di parametro aggregato per vedere come si fa.
Guarda come viene definito il parametro della curva di controllo del serbatoio.
Classe base per i parametri che restituiscono uno dei due valori a seconda dell'altro stato. API Riferimento
soglia
Soglia con cui confrontare il valore del registratore
sì
valori
Se il predicato restituisce False, viene restituito il valore zero, altrimenti viene restituito il primo valore
sì
dichiarare
Uno tra {«LT», «GT», «EQ», «LE», «GE»}
sì
dente di arresto
Se è vero, il parametro si comporta come un cricchetto. Una volta attivato per la prima volta, rimane nella posizione di attivazione (default=False)
sì
presto in arrivo...
Restituisce uno dei due valori in base al volume corrente in un Storage node. API Riferimento
soglia
Soglia con cui confrontare il valore del registratore
sì
archiviazione
conservazione: pywr. _core.Archiviazione astratta
sì
dente di arresto
Se è vero, il parametro si comporta come un cricchetto. Una volta attivato per la prima volta, rimane nella posizione di attivazione (default=False)
sì
presto in arrivo...
Restituisce uno dei due valori in base al flusso precedente in un nodo. API Riferimento
soglia
Soglia con cui confrontare il valore del registratore
sì
dente di arresto
Se è vero, il parametro si comporta come un cricchetto. Una volta attivato per la prima volta, rimane nella posizione di attivazione (default=False)
sì
presto in arrivo...
file h5
L'handle o il nome del file delle tabelle a cui collegare gli oggetti CarRay. Se viene dato un nome di file, l'oggetto aprirà e chiuderà gli handle dei file
sì
snodo
Nome del nodo nel database delle tabelle da cui leggere i dati
sì
dove
Percorso da cui leggere il nodo
sì
scenario
Scenario da utilizzare come secondo indice nell'array
sì
soglia
Soglia con cui confrontare il valore del registratore
sì
dente di arresto
Se è vero, il parametro si comporta come un cricchetto. Una volta attivato per la prima volta, rimane nella posizione di attivazione (default=False)
sì
Restituisce uno dei due valori in base all'anno del timestep corrente. API Riferimento
soglia
Soglia con cui confrontare il valore del registratore
sì
dente di arresto
Se è vero, il parametro si comporta come un cricchetto. Una volta attivato per la prima volta, rimane nella posizione di attivazione (default=False)
sì
presto in arrivo...
Restituisce uno dei due valori in base all'ordinale del timestep corrente. API Riferimento
soglia
Soglia con cui confrontare il valore del registratore
sì
dente di arresto
Se è vero, il parametro si comporta come un cricchetto. Una volta attivato per la prima volta, rimane nella posizione di attivazione (default=False)
sì
presto in arrivo...
Il valore del parametro è uguale all'interpolazione di un altro parametro. API Riferimento
tipo
flusso interpolato
sì
snodo
Nodo per fornire i valori del flusso di input per il calcolo dell'interpolazione
Facoltativo
interp_kwargs
Dizionario degli argomenti delle parole chiave a cui passare scipy.interpolate.interp1d classe e usato per l'interpolazione
Facoltativo
presto in arrivo...
Il valore del parametro è uguale alla quadratura dell'interpolazione di un altro parametro. API Riferimento
dei punti dati per l'interpolazione inferiore
superiore_
parametro
Valore superiore dell'intervallo interpolato da integrare su
Sì
x x
coordinate dei punti dati per l'interpolazione Opzionale
Coordinate
y y
Opzionale
_parametro
Valore inferiore dell'intervallo interpolato su cui effettuare l'integrazione. Può essere Nessuna nel qual caso il valore più basso dell'intervallo è zero
Facoltativo
interp_kwargs
Dizionario degli argomenti delle parole chiave a cui passare scipy.interpolate.interp1d classe e usato per l'interpolazione
Facoltativo
presto in arrivo...
Parametro di interpolazione generico che utilizza il flusso di un nodo nella fase temporale precedente per l'interpolazione. API Riferimento
tipo
flusso interpolato
sì
snodo
Nodo per fornire i valori del flusso di input per il calcolo dell'interpolazione
Facoltativo
scorre
coordinate x dei punti dati per l'interpolazione
Facoltativo
valori
coordinate y dei punti dati per l'interpolazione
Facoltativo
interp_kwargs
Dizionario degli argomenti delle parole chiave a cui passare scipy.interpolate.interp1d classe e usato per l'interpolazione
Facoltativo
presto in arrivo...
Parametro di interpolazione generico che restituisce un valore basato sul volume corrente (step temporale) di un Reservoir o di Storage node. Il
parameter utilizza un matrice (tabella) di Volumi del serbatoio e valori corrispondenti. In questo caso i valori associati sono i corrispondenti Area del bacino idrico per un dato Volume.
L'interpolazione viene utilizzata per calcolare i valori tra i punti indicati nell'array di interpolazione. API Riferimento
tipo
volume interpolato
sì
snodo
Storage node per fornire i valori del volume di input per il calcolo dell'interpolazione
sì
volumi
coordinate x dei punti dati per l'interpolazione
sì
valori
coordinate y dei punti dati per l'interpolazione
sì
interp_kwargs
Dizionario degli argomenti delle parole chiave a cui passare scipy.interpolate.interp1d classe e usato per l'interpolazione
Facoltativo
Il seguente Json mostra un esempio di cura di classificazione Area vs Volume per un serbatoio. Questo potrebbe essere usato per definire l'attributo Area di un nodo Storage o Reservoir.
Il Json rappresenta la tabella seguente:
0
1
7
2
10
4
15
6
25
14
Quando viene tracciato si presenta così:
Di seguito è riportato un esempio di tabella di classificazione dell'area
0
1
7
2
10
4
15
6
25
14
Quando viene tracciato sembra questo
Classe base per tutti i parametri che si basano su un nodo collegato contenente un controllo_Parametro della curva. [API Riferimento] (https://pywr.github.io/pywr-docs/master/api/generated/pywr.parameters.control_curves.baseControlCurveParameter.html #pywr .parameters.control\ _curves.baseControlCurveParameter)
. _curve
archiviazione_node
Un nodo di archiviazione opzionale che può essere utilizzato per interrogare il volume percentuale corrente
Controllo
Sì
Gli oggetti Parameter da utilizzare come curve di controllo
sì
presto in arrivo...
Un parametro della curva di controllo che interpola tra tre o più valori.
I valori restituiti vengono interpolati linearmente tra le curve di controllo, con il primo e l'ultimo valore rispettivamente 100% e 0%. API Riferimento
. _curve
archiviazione_node
Un nodo di archiviazione opzionale che può essere utilizzato per interrogare il volume percentuale corrente
Controllo
Sì
Gli oggetti Parameter da utilizzare come curve di controllo
sì
valori
Un elenco di valori da restituire corrispondenti alle curve di controllo. La lunghezza dell'elenco deve essere 2 + len (control)_(curve)
Sì
parametri
Se i valori sono None, i parametri possono specificare un oggetto Parameter da utilizzare in ciascuna delle curve di controllo. Il numero di parametri deve essere 2 + len (control)_curve)
sì
presto in arrivo...