Workflow: Information theoretic based model benchmarking

A product of :

Environmental Sytems Dynamics Laboratory (ESDL) University of California, Berkeley

Authors:

Edom Moges1, Laurel Larsen1, Ben Ruddell2, Liang Zhang1, Jessica Driscoll3 and Parker Norton3

1 University of California, Berkeley

2 Northern Arizona University

3 United States Geological Survey (USGS)

Notebook description

This notebook has three steps:

  1. Loading the calibrated and uncalibrated HJ Andrews NHM-PRMS model product (Section 3)

  2. Interactively evaluating model performances using the Nash-Sutcliffe coefficient (Section 4)

  3. Executing information theoretic based model performance evaluation to understand (Section 5):

    i. tradeoffs between predictive and function model performance (Section 5.2) ii. model internal function using process network plots of Tranfer Entropy (Section 5.3)

Load Libraries

%matplotlib inline
import pandas as pd
import numpy as np
import datetime as dt
import matplotlib.pyplot as plt
from tqdm import tqdm
import copy
import os
import glob
import matplotlib.colors as colors
import matplotlib.cm as cmx
from matplotlib.lines import Line2D
import ipywidgets
from termcolor import colored
plt.ion()


import sys
import time
import random
import os
import math
import pickle
from matplotlib import cm

import xarray as xr
import numcodecs
import zarr

from joblib import Parallel, delayed

from pandas.plotting import register_matplotlib_converters
from matplotlib import rcParams
rcParams["font.size"]=14
plt.rcParams.update({'figure.max_open_warning': 0})
register_matplotlib_converters()
import holoviews as hv
from holoviews import opts, dim
from bokeh.plotting import show, output_file
hv.extension("bokeh", "matplotlib")