Skip to content

Commit 7ee36fb

Browse files
authored
Create EJM_distribution.py
The EJM purification in CG notation
1 parent 3973736 commit 7ee36fb

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

EJM_distribution.py

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
import numpy as np
2+
v=1
3+
P_NS=np.zeros((4,4,4,1,1,1))
4+
P_I=np.zeros((4,4,4,1,1,1))
5+
p_v=np.zeros((4,4,4,1,1,1))
6+
for a in range(4):
7+
for b in range(4):
8+
for c in range(4):
9+
P_I[a,b,c]=1/64
10+
if a==b and b==c:
11+
P_NS[a,a,a]=1/8
12+
if a!=b and b!=c and c!=a:
13+
P_NS[a,b,c]=1/48
14+
15+
#p_v=v*P_NS+(1-v)*P_I
16+
for i in range(3):
17+
print('P_NS(a='+str(i)+')=', sum([P_NS[i,b,c] for b in range(4)for c in range(4)]))
18+
print('P_NS(b='+str(i)+')=', sum([P_NS[a,i,c] for a in range(4)for c in range(4)]))
19+
print('P_NS(c='+str(i)+')=', sum([P_NS[a,b,i] for a in range(4)for b in range(4)]))
20+
21+
print('P_I(a='+str(i)+')=', sum([P_I[i,b,c] for b in range(4)for c in range(4)]))
22+
23+
for i in range(3):
24+
for j in range(3):
25+
print('P_NS(a='+str(i)+',b='+str(j)+')=', sum([P_NS[i,j,c] for c in range(4)]))
26+
print('P_NS(b='+str(i)+',c='+str(j)+')=', sum([P_NS[a,i,j] for a in range(4)]))
27+
print('P_NS(a='+str(i)+',c='+str(j)+')=', sum([P_NS[i,b,j] for b in range(4)]))
28+
29+
30+
print('P_I(a='+str(i)+',b='+str(j)+')=', sum([P_I[i,j,c] for c in range(4)]))
31+
for i in range(3):
32+
for j in range(3):
33+
for k in range(3):
34+
print('P_NS(a='+str(i)+',b='+str(j)+',c='+str(k)+')=',P_NS[i,j,k] )

0 commit comments

Comments
 (0)