Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download

Putzer, Interact

Project: Putzer
Views: 21
print 'Enter matrix size:' @interact def size(s=input_box('2',type = int, label='size')): print 'Enter a matrix in the table, a default matrix has been provided.' @interact def _(A = input_grid(s,s, default = [[2,1],[-1,2]], label='A=', to_value=matrix)): ev = A.eigenvalues() P0 = identity_matrix(A.nrows()) listP = [w for w in range(len(ev))] listP[0] = P0 i = 1 while i < len(ev): listP[i] = A - ev[i]*P0 i = i +1 t = var ('t') j = 1 listR = [w for w in range(len(ev))] listR[0] = e^(ev[0]*t) while j < len(ev): listR[j] = e^(ev[j]*t)*(e^((ev[j-1]-ev[j])*t)).integral(t) j = j+1 listE = map(operator.mul, listP, listR) E = [w for w in range(len(ev))] print 'Result: ' print listE[0]+listE[1]
Enter matrix size:
Interact: please open in CoCalc