dapper.mods.Lorenz96.raanes2016

Reproduce bib.raanes2015rts.

 1"""Reproduce `bib.raanes2015rts`."""
 2
 3import dapper.mods as modelling
 4from dapper.mods.Lorenz96.sakov2008 import HMM as _HMM
 5
 6HMM = _HMM.copy()
 7HMM.tseq = modelling.Chronology(0.01, dko=15, T=4**5, BurnIn=20)
 8
 9# from dapper.mods.Lorenz96.raanes2016 import HMM
10# xps += EnKS ('Sqrt',N=25,infl=1.08,rot=False,Lag=12)
11# xps += EnRTS('Sqrt',N=25,infl=1.08,rot=False,DeCorr=0.99)
12# ...
13# print_averages(xps,avrgs,[],['rmse.u'])
HMM = HiddenMarkovModel({ 'Dyn': Operator({ 'M': 40, 'model': <function step>, 'noise': GaussRV({ 'mu': array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]), 'M': 40, 'C': 0 }), 'linear': <function dstep_dx> }), 'Obs': <TimeDependentOperator> CONSTANT operator sepcified by .Op1: Operator({ 'M': 40, 'model': Direct obs. at [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39] <function partial_Id_Obs.<locals>.model>, 'noise': GaussRV({ 'C': <CovMat> M: 40 kind: 'diag' trunc: 1.0 rk: 40 full: (only computing/printing corners) [[1. 0. 0. ... 0. 0. 0.] [0. 1. 0. ... 0. 0. 0.] [0. 0. 1. ... 0. 0. 0.] ... [0. 0. 0. ... 1. 0. 0.] [0. 0. 0. ... 0. 1. 0.] [0. 0. 0. ... 0. 0. 1.]] diag: [1. 1. 1. ... 1. 1. 1.], 'mu': array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]), 'M': 40 }), 'linear': Constant matrix [[1. 0. 0. ... 0. 0. 0.] [0. 1. 0. ... 0. 0. 0.] [0. 0. 1. ... 0. 0. 0.] ... [0. 0. 0. ... 1. 0. 0.] [0. 0. 0. ... 0. 1. 0.] [0. 0. 0. ... 0. 0. 1.]] <function partial_Id_Obs.<locals>.linear>, 'localizer': <function localization_setup.<locals>.localization_now at 0x7fa23ff61ab0> }), 'tseq': <Chronology> - K: 102405 - Ko: 6826 - T: 1024.05 - BurnIn: 20 - dto: 0.15 - dt: 0.01, 'X0': GaussRV({ 'C': <CovMat> M: 40 kind: 'diag' trunc: 1.0 rk: 40 full: (only computing/printing corners) [[0.001 0. 0. ... 0. 0. 0. ] [0. 0.001 0. ... 0. 0. 0. ] [0. 0. 0.001 ... 0. 0. 0. ] ... [0. 0. 0. ... 0.001 0. 0. ] [0. 0. 0. ... 0. 0.001 0. ] [0. 0. 0. ... 0. 0. 0.001]] diag: [0.001 0.001 0.001 ... 0.001 0.001 0.001], 'mu': array([1., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]), 'M': 40 }), 'liveplotters': [(1, <function spatial1d.<locals>.init at 0x7fa23ff62560>), (1, <class 'dapper.tools.liveplotting.correlations'>), (0, <class 'dapper.tools.liveplotting.spectral_errors'>), (0, <function phase_particles.<locals>.init at 0x7fa23ff625f0>), (0, <function sliding_marginals.<locals>.init>)], 'sectors': {}, 'name': 'Lorenz96/sakov2008.py' })