def _runTest(self): dmat = mfc.dMat() dmat[0.] = mfc.nw.matrix([[1., 1.j], [2., 2.j]]) dmat[1.] = mfc.nw.matrix([[2., 2.j], [4., 4.j]]) dmat[2.] = mfc.nw.matrix([[4., 4.j], [8., 8.j]]) dMat_diff = dmat.gradient() self._assert_matrices_close(dMat_diff[0.], [[1., 1.j], [2., 2.j]]) self._assert_matrices_close(dMat_diff[1.], [[1.5, 1.5j], [3., 3.j]]) self._assert_matrices_close(dMat_diff[2.], [[2., 2.j], [4., 4.j]])
def _runTest(self): dmat1 = mfc.dMat({0.: mfc.nw.matrix([[1, 2], [3, 4], [5, 6]])}) self.assertEqual(dmat1.valsize(), 6) self.assertEqual(dmat1.valshape(), (3, 2)) vec1 = dmat1.create_reduced_dim(0) self.assertEqual(vec1.valsize(), 2) self.assertEqual(vec1.valshape(), (1, 2)) mfc.nw.are_matrices_close(vec1[0][1], mfc.nw.vector([1, 2])) vec2 = dmat1.create_reduced_dim(0, col=True) self.assertEqual(vec2.valsize(), 3) self.assertEqual(vec2.valshape(), (3, 1)) mfc.nw.are_matrices_close(vec2[0][1], mfc.nw.vector([1, 3, 5])) dmat2 = mfc.dMat({0.: mfc.nw.matrix([[1, 2], [3, 4]])}) vec3 = dmat2.create_reduced_dim(diag=True) self.assertEqual(vec3.valsize(), 2) self.assertEqual(vec3.valshape(), (1, 2)) mfc.nw.are_matrices_close(vec3[0][1], mfc.nw.vector([1, 4])) dsca = vec1.create_reduced_dim(0) self.assertEqual(dsca.valsize(), 1) self.assertEqual(dsca.valshape(), (1, 1))
def row_offset_col_gain_posImag(sz=100): d = mfc.dMat() _row_offset_col_gain_posImag(d, sz) return d
def none_unitary(): d = mfc.dMat() d[1.0] = _get_non_uni_mat() d[2.0] = _get_non_uni_mat() return d
def two_unitary(): d = mfc.dMat() d[1.0] = _get_uni_mat() d[2.0] = _get_uni_mat() return d
def row_offset_col_gain_zeroimag_Smat(sz=100): d = mfc.dMat() _row_offset_col_gain_zeroimag(d, sz) return d
def row_offset_col_gain_posNegImag(rg=10): d = mfc.dMat() _row_offset_col_gain_posNegImag(d, rg) return d
def get_absolute_test(): d = mfc.dMat() d[1.0] = get_identity() d[2.0] = _get_complex1() return d