]> gitweb.michael.orlitzky.com - sage.d.git/blobdiff - mjo/octonions.py
octonions: add list() method for octonion matrices.
[sage.d.git] / mjo / octonions.py
index 87bf5ff1ed06b1a77b5815df8dd2248fda4b7edb..c2b829f98b9b49dbe078172a3669f0cb8b6406e4 100644 (file)
@@ -345,7 +345,7 @@ class OctonionMatrix(IndexedFreeModuleElement):
     ncols = nrows
 
     @cached_method
-    def to_list(self):
+    def to_nested_list(self):
         r"""
         SETUP::
 
@@ -372,7 +372,7 @@ class OctonionMatrix(IndexedFreeModuleElement):
             +----+---+---+
             | 0  | 0 | 0 |
             +----+---+---+
-            sage: (E00e0 + 2*E00e3).to_list()
+            sage: (E00e0 + 2*E00e3).to_nested_list()
             [[e0 + 2*e3, 0, 0], [0, 0, 0], [0, 0, 0]]
 
         """
@@ -401,7 +401,29 @@ class OctonionMatrix(IndexedFreeModuleElement):
             +----+----+----+
 
         """
-        return table(self.to_list(), frame=True)._repr_()
+        return table(self.to_nested_list(), frame=True)._repr_()
+
+
+    def list(self):
+        r"""
+        Return one long list of this matrix's entries.
+
+        SETUP::
+
+            sage: from mjo.octonions import OctonionMatrixAlgebra
+
+        EXAMPLES::
+
+            sage: MS = OctonionMatrixAlgebra(3)
+            sage: E00e0 = MS.gens()[0]
+            sage: E00e3 = MS.gens()[3]
+            sage: (E00e0 + 2*E00e3).to_nested_list()
+            [[e0 + 2*e3, 0, 0], [0, 0, 0], [0, 0, 0]]
+            sage: (E00e0 + 2*E00e3).list()
+            [e0 + 2*e3, 0, 0, 0, 0, 0, 0, 0, 0]
+
+        """
+        return sum( self.to_nested_list(), [] )
 
 
     def __getitem__(self, indices):
@@ -426,7 +448,7 @@ class OctonionMatrix(IndexedFreeModuleElement):
 
         """
         i,j = indices
-        return self.to_list()[i][j]
+        return self.to_nested_list()[i][j]
 
     def trace(self):
         r"""