VasCalc - Progress Log

From Drorbn
Revision as of 14:52, 20 June 2006 by Sankaran (talk | contribs)
Jump to navigationJump to search

This is the VasCalc Project Progress Log.

Tuesday June 20 2006

Now we are able to generate all chord diagrams on a given number of lines and circles, as well as all the diagrams with a T added! Almost done is the piece that puts the two together - the ChordsMod4T class, which mods out the first space with the relations generated by the second. There are still many things to be done with this part of the program before we're truly finished: I've listed these on the VasCalc - To Do List page. Fun fact: there are 902 chord diagrams on one circle with 6 chords, 9749 diagrams with 7 chords, and 127072 diagrams with 8 chords. Evidently, we'll have to make some improvements to the program - generating one circle with 9 chords runs out of memory.

Saturday June 17 2006

The ChordDiagram class is now up and running. As explained in the documentation, this class is used to store information about individual chord diagrams. Because of the way we've set up labelling the diagrams, the task of generating all diagrams becomes very easy - this part of the program is almost done as well.

Tuesday May 30 2006

A new file ChordDiagram.java was committed to the repository. This is a class that holds information describing one chord diagram and contains methods that will help in constructing chord diagrams systematically. It is not yet complete, though not far from it.

Monday May 29 2006

I've updated the vectorSpace package, and added a Mathematica interface, as well an almost complete document on the wiki. Can someone check that the instructions for installation work? Also, does the simulated Mathematica session work on this wiki?

Wednesday May 24 2006

A new package vectorSpace has been committed to the repository, to handle quotients of finite-dimensional vector spaces. See the documentation for usage details.

Saturday May 20 2006

Our first task is to write a program to construct and manipulate the (formal) quotient vector space A(m,n,l), consisting of diagrams with m chords between n lines and l circles, modulo the four-T relations. Here's a rough sketch of the structure of this program:

Dmod4T.jpg


Java things are in orange, Mathematica things are in blue. Red arrows are helper functions that need to be written, and black arrows denote "natural class heirarchy".

Monday May 15 2006

Another slightly different HelloWorld test has been added to the SVN repository. This time, one can use the default Java runtime bundled with Mathematica/Windows (so the user does not need to know anything about where Java lives on their system) by telling the Java compiler to produce code for Java 1.4. This is accomplished by issuing the command:

javac -source 1.4 -target 1.4 file_to_be_compiled.java

I suppose this prevents us from using the new features of Java 1.5, but I don't know what they are.

As for the test program, download javatest.m and test1.class, and issue the following commands in Mathematica (replacing the '/path_to_files' with the location you downloaded the files to, and don't forget the quotes in the second line):

<< /path_to_files/javatest.m
HelloWorld[VasCalcPath -> "/path_to_files"]

and read your mystery message!

Sunday May 14 2006

J/Link passed the Hello World test. The java class and Mathematica notebook were commited to the repository trunk. Note the Mathematica file must be edited in order to specify the path to java and the class. In order to get it to work I had to tweak a few things:

  • The JRE bin directory had to be added to the PATH. The JDK path is not enough because J/Link looks for files like jawt.dll and awt.dll that don't come with JDK.
  • HelloWorld.class had to be in one of the dirs in CLASSPATH, because J/Link loads classes only through their full class name.
  • In Mathematica, when running InstallJava[], it was necessary to specify the path name for a newer version of java.exe. By default it runs the Windows java, which didn't run what was compiled with a new JDK.

Ideally, one would like to write a Mathematica notebook without any hardcoded paths that others can use with no changes. Is this possible?

Thursday May 11 20006

  • First day meeting's blackboard:
    060511-1.jpg