Exemplo n.º 1
0
def update(rng, mask, module, ert, meas_data, obs_data, state_size):
    S = meas_data.createS()
    R = obs_data.createR()
    dObs = obs_data.createDObs()
    E = obs_data.createE(rng, meas_data.getActiveEnsSize())
    D = obs_data.createD(E, S)
    obs_data.scale(S, E=E, D=D, R=R, D_obs=dObs)

    A = Matrix(state_size, meas_data.getActiveEnsSize())
    A.randomInit(rng)

    module.initUpdate(mask, S, R, dObs, E, D)
    module.updateA(A, S, R, dObs, E, D)
Exemplo n.º 2
0
    def test_matrix_copy_column(self):
        m = Matrix(10, 2)
        rng = RandomNumberGenerator(RngAlgTypeEnum.MZRAN, RngInitModeEnum.INIT_DEFAULT)
        m.randomInit(rng)

        with self.assertRaises(ValueError):
            m.copyColumn(0, 2)

        with self.assertRaises(ValueError):
            m.copyColumn(2, 0)

        with self.assertRaises(ValueError):
            m.copyColumn(-2, 0)

        m.copyColumn(1, 0)
        for i in range(m.rows()):
            self.assertEqual(m[i, 0], m[i, 1])
Exemplo n.º 3
0
    def test_sub_copy(self):
        m1 = Matrix(3, 3)
        rng = RandomNumberGenerator(RngAlgTypeEnum.MZRAN, RngInitModeEnum.INIT_DEFAULT)
        m1.randomInit(rng)

        with self.assertRaises(ValueError):
            m2 = m1.subCopy(0, 0, 4, 2)

        with self.assertRaises(ValueError):
            m2 = m1.subCopy(0, 0, 2, 4)

        with self.assertRaises(ValueError):
            m2 = m1.subCopy(4, 0, 1, 1)

        with self.assertRaises(ValueError):
            m2 = m1.subCopy(0, 2, 1, 2)

        m2 = m1.subCopy(0, 0, 2, 2)
        for i in range(2):
            for j in range(2):
                self.assertEqual(m1[i, j], m2[i, j])
Exemplo n.º 4
0
 def test_matrix_random_init(self):
     m = Matrix(10, 10)
     rng = RandomNumberGenerator(RngAlgTypeEnum.MZRAN,
                                 RngInitModeEnum.INIT_DEFAULT)
     m.randomInit(rng)