Muskingum routing in the IJsselΒΆ

Script to verify code generating flows in the IJssel, or multiple river segments in sequence. Output of this script corresponds to verfication model.

[1]:
import sys
import os
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
[2]:
from context import fit_muskingum
from fit_muskingum import getParams
from fit_muskingum import calc_Out
from fit_muskingum import calc_C
import generate_network
---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-2-7dfe726afceb> in <module>
----> 1 from context import fit_muskingum
      2 from fit_muskingum import getParams
      3 from fit_muskingum import calc_Out
      4 from fit_muskingum import calc_C
      5 import generate_network

~/checkouts/readthedocs.org/user_builds/rna/checkouts/stable/docs/ijssel/context.py in <module>
      5 sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '../..')))
      6
----> 7 import RiverNetwork
      8 import fit_muskingum

ModuleNotFoundError: No module named 'RiverNetwork'
[3]:
G, dike_list = generate_network.get_network()
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-3-022e56b79809> in <module>
----> 1 G, dike_list = generate_network.get_network()

NameError: name 'generate_network' is not defined
[4]:
for x in dike_list:
    print(G.node[x])
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-4-042bc6df924b> in <module>
----> 1 for x in dike_list:
      2     print(G.node[x])

NameError: name 'dike_list' is not defined
[5]:
G.node['A.0']['Qout'] = 2000 * G.node['A.0']['Qevents_shape'].loc[0]
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-5-7b42442901ae> in <module>
----> 1 G.node['A.0']['Qout'] = 2000 * G.node['A.0']['Qevents_shape'].loc[0]

NameError: name 'G' is not defined
[6]:
Qin = 2000 * G.node['A.0']['Qevents_shape'].loc[0]
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-6-2140cf68cce0> in <module>
----> 1 Qin = 2000 * G.node['A.0']['Qevents_shape'].loc[0]

NameError: name 'G' is not defined
[7]:
df = pd.DataFrame({'Qin':Qin})
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-7-538891258c08> in <module>
----> 1 df = pd.DataFrame({'Qin':Qin})

NameError: name 'Qin' is not defined
[8]:
x = -1.055501123
k = 0.378929169
dt = 1

C1 = calc_C(k,x,dt)
QA1 = calc_Out(Qin,C1)
#df['A.1test'] = QA1
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-8-233459517dd9> in <module>
      3 dt = 1
      4
----> 5 C1 = calc_C(k,x,dt)
      6 QA1 = calc_Out(Qin,C1)
      7 #df['A.1test'] = QA1

NameError: name 'calc_C' is not defined
[9]:
params = pd.read_excel('../../data/params.xlsx',index_col=0)
params
---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
<ipython-input-9-590ed25e1654> in <module>
----> 1 params = pd.read_excel('../../data/params.xlsx',index_col=0)
      2 params

~/checkouts/readthedocs.org/user_builds/rna/envs/stable/lib/python3.7/site-packages/pandas/util/_decorators.py in wrapper(*args, **kwargs)
    206                 else:
    207                     kwargs[new_arg_name] = new_arg_value
--> 208             return func(*args, **kwargs)
    209
    210         return wrapper

~/checkouts/readthedocs.org/user_builds/rna/envs/stable/lib/python3.7/site-packages/pandas/io/excel/_base.py in read_excel(io, sheet_name, header, names, index_col, usecols, squeeze, dtype, engine, converters, true_values, false_values, skiprows, nrows, na_values, keep_default_na, verbose, parse_dates, date_parser, thousands, comment, skip_footer, skipfooter, convert_float, mangle_dupe_cols, **kwds)
    308
    309     if not isinstance(io, ExcelFile):
--> 310         io = ExcelFile(io, engine=engine)
    311     elif engine and engine != io.engine:
    312         raise ValueError(

~/checkouts/readthedocs.org/user_builds/rna/envs/stable/lib/python3.7/site-packages/pandas/io/excel/_base.py in __init__(self, io, engine)
    817         self._io = _stringify_path(io)
    818
--> 819         self._reader = self._engines[engine](self._io)
    820
    821     def __fspath__(self):

~/checkouts/readthedocs.org/user_builds/rna/envs/stable/lib/python3.7/site-packages/pandas/io/excel/_xlrd.py in __init__(self, filepath_or_buffer)
     19         err_msg = "Install xlrd >= 1.0.0 for Excel support"
     20         import_optional_dependency("xlrd", extra=err_msg)
---> 21         super().__init__(filepath_or_buffer)
     22
     23     @property

~/checkouts/readthedocs.org/user_builds/rna/envs/stable/lib/python3.7/site-packages/pandas/io/excel/_base.py in __init__(self, filepath_or_buffer)
    357             self.book = self.load_workbook(filepath_or_buffer)
    358         elif isinstance(filepath_or_buffer, str):
--> 359             self.book = self.load_workbook(filepath_or_buffer)
    360         else:
    361             raise ValueError(

~/checkouts/readthedocs.org/user_builds/rna/envs/stable/lib/python3.7/site-packages/pandas/io/excel/_xlrd.py in load_workbook(self, filepath_or_buffer)
     34             return open_workbook(file_contents=data)
     35         else:
---> 36             return open_workbook(filepath_or_buffer)
     37
     38     @property

~/checkouts/readthedocs.org/user_builds/rna/envs/stable/lib/python3.7/site-packages/xlrd/__init__.py in open_workbook(filename, logfile, verbosity, use_mmap, file_contents, encoding_override, formatting_info, on_demand, ragged_rows)
    109     else:
    110         filename = os.path.expanduser(filename)
--> 111         with open(filename, "rb") as f:
    112             peek = f.read(peeksz)
    113     if peek == b"PK\x03\x04": # a ZIP file

FileNotFoundError: [Errno 2] No such file or directory: '../../data/params.xlsx'
[10]:
params.loc['A.0']['K']
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-10-36adaeab03db> in <module>
----> 1 params.loc['A.0']['K']

NameError: name 'params' is not defined
[11]:
Qin = 2000 * G.node['A.0']['Qevents_shape'].loc[0]

nodes = ['A.0','A.1','A.2','A.3','A.4']
nodes_title = ['A.1','A.2','A.3','A.4','A.5']
i=0
for node in nodes:
    k = params.loc[node]['K']
    x = params.loc[node]['X']
    dt = 1
    C = calc_C(k,x,dt)
    Qin = calc_Out(Qin,C)
    df[nodes_title[i]] = Qin
    i = i+1
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-11-328e510ec59a> in <module>
----> 1 Qin = 2000 * G.node['A.0']['Qevents_shape'].loc[0]
      2
      3 nodes = ['A.0','A.1','A.2','A.3','A.4']
      4 nodes_title = ['A.1','A.2','A.3','A.4','A.5']
      5 i=0

NameError: name 'G' is not defined
[12]:
df
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-12-00cf07b74dcd> in <module>
----> 1 df

NameError: name 'df' is not defined
[13]:
df.plot(figsize=(20,10))
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-13-4d9e6e200892> in <module>
----> 1 df.plot(figsize=(20,10))

NameError: name 'df' is not defined
[14]:
#%qtconsole
[15]:
fig = plt.figure(figsize=(3,2.3),dpi=150)

ax = fig.add_subplot(111)
for axis in ['top','bottom','left','right']:
    ax.spines[axis].set_linewidth(0.5)

#plt.plot(t,I,linewidth = 1 , label = 'inflow')
df.plot(ax=ax, linewidth = 0.7)
plt.rcParams.update({'font.size': 8, 'pgf.rcfonts' : False})


plt.ylabel('Flow, $Q$ [m$^3$/s]')
plt.xlabel('Time [h]')
plt.legend()
# save to file
#plt.savefig('../thesis/report/figs/ijssel.pdf', bbox_inches = 'tight')
#plt.savefig('../thesis/report/figs/ijssel.pgf', bbox_inches = 'tight')
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-15-161b4f1f6172> in <module>
      6
      7 #plt.plot(t,I,linewidth = 1 , label = 'inflow')
----> 8 df.plot(ax=ax, linewidth = 0.7)
      9 plt.rcParams.update({'font.size': 8, 'pgf.rcfonts' : False})
     10

NameError: name 'df' is not defined
../_images/ijssel_ijssel_muskingum_16_1.svg