def det(l): n=len(l) if (n>2): i=1 t=0 sum=0 while t<=n-1: d={} t1=1 while t1<=n-1: m=0 d[t1]=[] while m<=n-1: if (m==t): u=0 else: d[t1].append(l[t1][m]) m+=1 t1+=1 l1=[d[x] for x in d] sum=sum+i*(l[0][t])*(det(l1)) i=i*(-1) t+=1 return sum else: return (l[0][0]*l[1][1]-l[0][1]*l[1][0]) def simul(leq,lcoeff): D=float(det(leq)) if D==0: return -1 else: t=0 n=len(leq) l=[] while t<=(n-1): lt=[] for x in leq: ltemp=[] for y in x: ltemp.append(y) lt.append(ltemp) m=0 while m<=(n-1): lt[m][t]=lcoeff[m] m+=1 l.append(det(lt)/D) t+=1 return l