Ask Your Question

# How to input data in SAGE and deal with them

I wish to calculate the width of the certain polytopes, the data for these polytopes can be found here (please click "K3/3d" on the left, and then click "list of all 4319" on the top of new page, for some reason, I could not cite the exact URL).

For example, the first one is

3 4 M:5 4 N:35 4 Pic:19 Cor:0

1    0    0   -1
0    1    0   -1
0    0    1   -1


However, only the number in the matrix will be used in the calculation. My questions are:

(1) How to input these data in SAGE (I use a windows system, and run Virtualbox for SAGE)?

(2) How to use sage to deal with each matrix?

For each of matrix, I have a program as the follows

sage: m = matrix(ZZ, [[1,0,0,-1],
....:        [0,1,0,-1],
....:        [0,0,1,-1]])
sage: p = LatticePolytope(m)
sage: d = p.distances()
sage: l = p.nfacets()
sage: for i in range(l):
....:     max(d.row(i))


After input the data, how to let sage use the same program deal with each matrix?

Thank you very much for your help!!!

edit retag close merge delete

## Comments

Maybe also the answers in this (http://ask.sagemath.org/question/1842/how-to-plot-data-from-a-file#2705) related questions are helpful.

( 2013-11-03 11:23:21 +0200 )edit

## 1 Answer

Sort by ยป oldest newest most voted

Copy and paste the data from "K3/3d" to a text file. Upload that file to your worksheet (I use Sage Notebook). (I name the file 'k3_d3_data.txt')

Open the file in your worksheet. Now you can iterate through the lines and convert the appropriate lines to matrices.

data_file = file(DATA+'k3_d3_data.txt','r')
matrix_list = []
while True:
try:
data_file.next()
except StopIteration:
break
row1 = [int(z) for z in data_file.next().split()]
row2 = [int(z) for z in data_file.next().split()]
row3 = [int(z) for z in data_file.next().split()]
matrix_list.append(matrix(ZZ,[row1,row2,row3]))

for M in matrix_list:
print M

more

## Comments

@ndomes, Thank you very very much!!! You answer is fabulous, I know how to do it now!!!

( 2013-11-03 13:59:04 +0200 )edit

## Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

## Stats

Asked: 2013-11-02 21:20:45 +0200

Seen: 659 times

Last updated: Nov 03 '13