Untitled
unknown
python
a year ago
640 B
18
Indexable
def getMat(n, d):
mid = n//2
mat = matrix(QQ, n+1)
for i in range(n+1):
for j in range(1, d+1):
if i<=mid:
if j<=i:
mat.add_to_entry(i,i-j,1/d)
elif i+j<=n:
mat.add_to_entry(i,i+j,1/d)
else:
if i+j<=n:
mat.add_to_entry(i,i+j,1/d)
elif j<=i:
mat.add_to_entry(i,i-j,1/d)
return mat
def calcE(n):
mat = getMat(n, n)
return sum((matrix.identity(n+1)-mat).solve_right(vector((1,)+(0,)*n)))
print (calcE(6))
Editor is loading...
Leave a Comment