def meanValue(probabilidad, valoresPropios): mean, ans = [], (0, 0) for i in range(len(probabilidad)): mean += [compl.producto(probabilidad[i], valoresPropios[i])] for j in range(len(mean)): ans = compl.suma(mean[i], ans) return ans
def adiMatrix(a, b): if verificacionSuma(a, b): ans = [[comp.suma(a[i][j], b[i][j]) for j in range(len(a[0]))] for i in range(len(a))] else: ans = "Indefinido" return ans
def sumamatriz(matriz1, matriz2): """Recibe dos matrices o vectores y los suma, estos deben tener el mismo tamaño m x n y deben contener arreglos""" res = generar(len(matriz1), len(matriz1[0])) for i in range(len(matriz1)): for j in range(len(matriz1[0])): res[i][j] = comp.suma(matriz1[i][j], matriz2[i][j]) return res
def accionMatrixVector(a, v): if verificacionMult(a, v): ans, res = [], (0, 0) for i in range(len(a)): for j in range(len(a[0])): res = comp.suma(comp.producto(a[i][j], v[j]), res) ans = ans + [res] res = (0, 0) else: ans = "Indefinido" return ans
def productMatrix(a, b): if verificacionMult(a, b): ans = [[(0, 0) for j in range(len(a[0]))] for i in range(len(a))] for i in range(len(a)): for j in range(len(b[0])): for k in range(len(b)): ans[i][j] = comp.suma(comp.producto(a[i][k], b[k][j]), ans[i][j]) else: ans = "Indefinido" return ans
def multiplicarmatriz(matriz1, matriz2): #print("longitud1",len(matriz1)) #print("longitud2",len(matriz2)) """La funcion accion es un caso especial de esta funcion donde la matriz2 es un vector, se realiza la verificacion por medio del condicional""" ##GUIA m[i][j] = m[i][j] + m1[i][k]* m2[k][j] if len(matriz1[0]) == len(matriz2): res = generar(len(matriz1), len(matriz2[0])) for i in range(len(res)): for j in range(len(res[0])): res[i][j] = [0, 0] for k in range(len(matriz2)): res[i][j] = comp.suma( res[i][j], # comp.multiplicar(matriz1[i][k], matriz2[k][j])) if len(res) == 1: return res[i][j] return res else: return 0
def multiplicarmatriz(matriz1, matriz2): #print("longitud1",len(matriz1)) #print("longitud2",len(matriz2)) """La funcion accion es un caso especial de esta funcion donde la matriz2 es un vector, se realiza la verificacion por medio del condicional Multiplica dos matrices complejas, es de resaltar que cada elemento de las matrices involucradas debe ser un arreglo denotando un numero complejo""" ##GUIA m[i][j] = m[i][j] + m1[i][k]* m2[k][j] if len(matriz1[0]) == len(matriz2): res = generar(len(matriz1), len(matriz2[0])) for i in range(len(res)): for j in range(len(res[0])): res[i][j] = [0, 0] for k in range(len(matriz2)): res[i][j] = comp.suma( res[i][j], # comp.multiplicar(matriz1[i][k], matriz2[k][j])) if len(res) == 1: return res[i][j] return res else: return 0
def test_suma(self): self.assertEqual(complejos.suma((1, 2), (3, 4)), (4, 6))
def adiVect(a, b): ans = [] for i in range(len(a)): ans = ans + [comp.suma(a[i], b[i])] return ans
def funcion_f(z, c): return comp.suma(comp.potencia(z), c)
def test_suma(): assert c.suma([-3, 2], [4, 1]) == [1, 3], 'Debe ser 1 + 3i'
def test_suma(self): pc = (3, -1) sc = (1, 4) res = (4, 3) rescod = complejos.suma(pc, sc) self.assertEqual(res, rescod)