Note:

z1..m(t+1)=f(z1..m(t),i1..n(t), p1..l,t)

i1..n: inputs (maps)

p1..l: parameters (maps)

z1..m: model variables

f: the model (set of functions run for each timestep)