#Symbolic approach (using transfter matrix) Help:=proc(): print(` Ising1(z,w,t)`): end: #Ising1(z,w,t): The generating function, in t, for # add(gPF(1,n,z,w)*t^n,t=1..infinity) #weight enumerator of ALL vectors in {-1,1} with weight #z^(sum of products of neighbors)*w^(sum of entries)*t^(lenght) #(of length>=1) Ising1:=proc(z,w,t) local f,g,var,eq: #f (g) : weight-enumerator of vectors that start with 1 (-1) eq:={f=w*t+t*w*z*f+ t*w*z^(-1)*g, g=w^(-1)*t+ t*w^(-1)*z^(-1)*f+ t*w^(-1)*z*g}: var:={f,g}: var:=solve(eq,var): normal(subs(var,f)+subs(var,g)): end: