Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

An algorithm on root systems' vectors "ValueError: too many values to unpack "

Hello, While finishing a math project, I need to run the following code, and get an error message which seems related to SAGE calculation capacity, could anyone help me through this? (I am quite new to SAGE) If there is no way to handle that in SAGE, could anyone recommend me another software with similar language where this code could be run properly?

e = RootSystem(['E',6]).ambient_space()
Roots = e.roots()
a1 = vector((1/2, -1/2, -1/2, -1/2, -1/2, -1/2, -1/2, 1/2))
a2 = vector((1, 1, 0, 0, 0, 0, 0, 0))
a3 = vector((-1, 1, 0, 0, 0, 0, 0, 0))  
a4 = vector((0, -1, 1, 0, 0, 0, 0, 0))
a5 = vector((0, 0, -1, 1, 0, 0, 0, 0)) 
a6 = vector((0, 0, 0, -1, 1, 0, 0, 0))
Lini = [a1, a2, a3, a4, a5]
def proj(t, ai):
myLone = vector(ai)
result= t - myLone.dot_product(t) / (ai.dot_product(ai))*myLone
return result
myP = [proj(x, a6) for x in Lini]
[proja1, proja2, proja3, proja4, proja5] = myP
myR = [vector(v) for v in Roots]
myL = [proj(x, a6) for x in myR]
len(myL)
myPlist1= Combinations(myP, 3).list()
myLlist1= Combinations(myL, 2).list()
myPset1= set(tuple(v) for v in myPlist1[5])
print(myPset1)

myLset1= set(tuple(v) for v in myLlist1[12])
print(myLset1)


 myLset1= myLset1.union(myPset1)
 len(myLset1)
if len(myLset1)>= 5:
   print(myLset1, "myLset1")


# alternatively: produce all combinaisons in myL of five vectors (all to be used in a function where these combinaisons are variables: this does not work either
#myLlist= Combinations(myL, 5).list()


 def letsapply(listg, alist):
 for listel in listg:
     myPset1= set(tuple(v) for v in listel)
     print(myPset1)
for listel2 in alist:
     myLset1= set(tuple(v) for v in listel2)
    print(myLset1)
    myLset1= myLset1.union(myPset1)

    if len(myLset1) >= 5:
        print(myLset1, "myLset1")

    if len(myLset1) >= 5:
        for myLel in myLset1:
            [proja1, proja2, proja3, proja4, proja5] = myLel
            print(myLel)

  print(letsapply(myPlist1,myLlist1))

An algorithm on root systems' vectors "ValueError: too many values to unpack "

Hello, While finishing a math project, I need to run the following code, and get an error message which seems related to SAGE calculation capacity, could anyone help me through this? (I am quite new to SAGE) If there is no way to handle that in SAGE, could anyone recommend me another software with similar language where this code could be run properly?

e = RootSystem(['E',6]).ambient_space()
Roots = e.roots()
a1 = vector((1/2, -1/2, -1/2, -1/2, -1/2, -1/2, -1/2, 1/2))
a2 = vector((1, 1, 0, 0, 0, 0, 0, 0))
a3 = vector((-1, 1, 0, 0, 0, 0, 0, 0))  
a4 = vector((0, -1, 1, 0, 0, 0, 0, 0))
a5 = vector((0, 0, -1, 1, 0, 0, 0, 0)) 
a6 = vector((0, 0, 0, -1, 1, 0, 0, 0))
Lini = [a1, a2, a3, a4, a5]
def proj(t, ai):
myLone = vector(ai)
result= t - myLone.dot_product(t) / (ai.dot_product(ai))*myLone
return result
myP = [proj(x, a6) for x in Lini]
[proja1, proja2, proja3, proja4, proja5] = myP
myR = [vector(v) for v in Roots]
myL = [proj(x, a6) for x in myR]
len(myL)
myPlist1= Combinations(myP, 3).list()
myLlist1= Combinations(myL, 2).list()
myPset1= set(tuple(v) for v in myPlist1[5])
print(myPset1)

myLset1= set(tuple(v) for v in myLlist1[12])
print(myLset1)


 myLset1= myLset1.union(myPset1)
 len(myLset1)
if len(myLset1)>= 5:
   print(myLset1, "myLset1")


# alternatively: produce all combinaisons in myL of five vectors (all to be used in a function where these combinaisons are variables: this does not work either
#myLlist= Combinations(myL, 5).list()


 def letsapply(listg, alist):
 for listel in listg:
     myPset1= set(tuple(v) for v in listel)
     print(myPset1)
 for listel2 in alist:
     myLset1= set(tuple(v) for v in listel2)
    print(myLset1)
    myLset1= myLset1.union(myPset1)

    if len(myLset1) >= 5:
        print(myLset1, "myLset1")

    if len(myLset1) >= 5:
        for myLel in myLset1:
            [proja1, proja2, proja3, proja4, proja5] = myLel
            print(myLel)

  print(letsapply(myPlist1,myLlist1))

An algorithm on root systems' vectors "ValueError: too many values to unpack "

Hello, While finishing a math project, I need to run the following code, code, and get an error message which seems related to SAGE Sage calculation capacity, capacity, could anyone help me through this? (I am quite new to SAGE) Sage.) If there is no way to handle that in SAGE, Sage, could anyone recommend me another another software with similar language where this code could be run properly?

e = RootSystem(['E',6]).ambient_space()
RootSystem(['E', 6]).ambient_space()
Roots = e.roots()
a1 = vector((1/2, -1/2, -1/2, -1/2, -1/2, -1/2, -1/2, 1/2))
a2 = vector((1, 1, 0, 0, 0, 0, 0, 0))
a3 = vector((-1, 1, 0, 0, 0, 0, 0, 0))  
a4 = vector((0, -1, 1, 0, 0, 0, 0, 0))
a5 = vector((0, 0, -1, 1, 0, 0, 0, 0)) 
a6 = vector((0, 0, 0, -1, 1, 0, 0, 0))
Lini = [a1, a2, a3, a4, a5]
 def proj(t, ai):
 myLone = vector(ai)
 result= t - myLone.dot_product(t) / (ai.dot_product(ai))*myLone
 return result
 myP = [proj(x, a6) for x in Lini]
[proja1, proja2, proja3, proja4, proja5] = myP
myR = [vector(v) for v in Roots]
myL = [proj(x, a6) for x in myR]
 len(myL)
 myPlist1= Combinations(myP, 3).list()
myLlist1= Combinations(myL, 2).list()

# alternatively: produce all combinaisons in myL of five vectors vectors
# (all to be used in a function where these combinaisons are variables: variables:
# this does not work either
#myLlist= 
# myLlist = Combinations(myL, 5).list()

 def letsapply(listg, alist):
  for listel in listg:
      myPset1= set(tuple(v) for v in listel)
      print(myPset1)
  for listel2 in alist:
     myLset1=    myLset1 = set(tuple(v) for v in listel2)
     print(myLset1)
    myLset1=     myLset1 = myLset1.union(myPset1)

     if len(myLset1) >= 5:
         print(myLset1, "myLset1")

     if len(myLset1) >= 5:
         for myLel in myLset1:
             [proja1, proja2, proja3, proja4, proja5] = myLel
             print(myLel)

  print(letsapply(myPlist1,myLlist1))
print(letsapply(myPlist1, myLlist1))