Differences between revisions 1 and 34 (spanning 33 versions)
Revision 1 as of 2011-05-02 17:28:02
Size: 554
Editor: EvaCurry
Comment:
Revision 34 as of 2011-05-06 17:49:39
Size: 1012
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Sage Days 30 Coding Sprint Projects =

<<TableOfContents>>


'''For the main SD 30 wiki page go [[days30|here]]'''

Below a list of proposed projects.

== Combinatorics ==


== Number Theory ==

* <<Anchor(nt1)>> Generate centered digit set for multidimensional radix representation

* <<Anchor(nt2)>> Implement Scheicher & Thuswaldner neighbor-finding algorithm

* <<Anchor(nt3)>> Visualizing attractors of iterated function systems and other fractal sets

* <<Anchor(nt4)>> Update Integer Vectors internal representation in Sage
def quantum_grassmannian_poset(p,m,k):
    p=Partition(p)
    D=DiGraph()
    D.add_vertex(p)
    queue=[p]
    seen={p:0}
    while queue:
        p=queue.pop()
        if seen[p]==m+k-1:
            continue
        if p==[]:
            up_list=[Partition([1])]
        else:
            up_list=p.up_list()
        for q in up_list:
            s=SkewPartition([q,p])
            r=s.cells()
            u=[q.content(*t)+k%(m+k) for t in r]
            new_edge=False
            if q.arm_length(0,0) <= m-1 and q.length() <= k:
                new_edge=True
            if q.arm_length(0,0) == m-1 and q.length() == k+1:
                new_edge=True
                cells = q.rim()
                for c in cells:
                    q = q.remove_cell(c[0])
            if new_edge is True:
                D.add_edge(p,q,u[0])
                if q not in seen:
                    seen[q]=seen[p]+1
                    queue.append(q)
    return D

def quantum_grassmannian_poset(p,m,k):

  • p=Partition(p)

    D=DiGraph() D.add_vertex(p) queue=[p] seen={p:0} while queue:

    • p=queue.pop() if seen[p]==m+k-1:
      • continue
      if p==[]:
      • up_list=[Partition([1])]
      else:
      • up_list=p.up_list()
      for q in up_list:
      • s=SkewPartition([q,p]) r=s.cells() u=[q.content(*t)+k%(m+k) for t in r] new_edge=False if q.arm_length(0,0) <= m-1 and q.length() <= k:

        • new_edge=True
        if q.arm_length(0,0) == m-1 and q.length() == k+1:
        • new_edge=True cells = q.rim() for c in cells:
          • q = q.remove_cell(c[0])
        if new_edge is True:
        • D.add_edge(p,q,u[0]) if q not in seen:
          • seen[q]=seen[p]+1 queue.append(q)
    return D

days30_projects (last edited 2012-05-03 16:29:14 by saliola)