VasCalc Documentation - User's Guide: Difference between revisions

From Drorbn
Jump to navigationJump to search
No edit summary
 
No edit summary
Line 27: Line 27:
as well as return a basis for the quotient, as a list of chord diagrams:
as well as return a basis for the quotient, as a list of chord diagrams:


{{InOut|n=5| in=<nowiki>GetCDBasis[A] // TableForm </nowiki>|
{{InOut|n=5| in=<nowiki>GetCDBasis[A] </nowiki>|
out=<nowiki>{CD[Line[3, 3], Circle[4, 4, 5, 5]], CD[Line[3, 3], Circle[4, 5, 4, 5]],
out=<nowiki>{CD[Line[3, 3], Circle[4, 4, 5, 5]], CD[Line[3, 3], Circle[4, 5, 4, 5]],
CD[Line[3], Circle[3, 4, 5, 4, 5]], CD[Line[3], Circle[3, 4, 5, 5, 4]],
CD[Line[3], Circle[3, 4, 5, 4, 5]], CD[Line[3], Circle[3, 4, 5, 5, 4]],
Line 39: Line 39:
CD[Line[3, 4, 5, 5, 4], Circle[3]]} </nowiki> }}
CD[Line[3, 4, 5, 5, 4], Circle[3]]} </nowiki> }}


===Performance Issues===
More to come...

We are currently working to improve the performance of this program. For larger computations, it would likely help to increase the maximum heap size available to Java. To do this, type the following into Mathematica <i>before</i> loading the CDinterface.m definitions (step 1 above):

{{In|n=1|in=<nowiki>Needs["JLink`"];</nowiki>}}
{{In|n=2|in=<nowiki>InstallJava[CommandLine -> "/path_to_java_runtime/java -Xmx128M"]</nowiki>}}

This allows Java to use up to 128 megabytes of memory; you may change the number "128" in the parameter "-Xmx128M" to suit your needs. Note that the first line needs to be entered exactly as shown - the funny apostrophe is located next to the "1" key on many keyboards.

Revision as of 19:17, 2 July 2006

This page documents the ChordsMod4T component of the VasCalc project. This page is also under construction.

Overview

This package provides a Mathematica interface to work with the space generated by chord diagrams on a fixed skeleton of lines and circles, modulo the 4-T relation. See Dror Bar-Natan's Survey of Finite Type Invariants for further details.

Installation

If you have an up-to-date copy of the repository, skip ahead. If not, download ChordsMod4T.tar.gz and extract it to a directory of your choice.

Usage

In a Mathematica session, load the definitions by typing:

In[1]:= <</path_to_install_folder/CDinterface.m

where "path_to_install_folder" is either the "trunk" folder of the repository, or the folder in which the above archive, if downloaded, was unpacked.

You must also issue the following command, to inform Mathematica of the location of the required Java objects:

In[2]:= SetVasCalcPath["/path_to_install_folder"];

Use the command CreateCDSpace[ lines, circles, chords], to generate the space of chord diagrams with the given parameters, modulo the 4T relations. For example, we construct the space of diagrams with 3 chords on a skeleton of 1 line and 1 circle:

In[3]:= A = CreateCDSpace[1,1,3];

One can then find the dimension of the resultant space:

In[4]:= GetDimension[A]
Out[4]= 19

as well as return a basis for the quotient, as a list of chord diagrams:

In[5]:= GetCDBasis[A]
Out[5]= {CD[Line[3, 3], Circle[4, 4, 5, 5]], CD[Line[3, 3], Circle[4, 5, 4, 5]], CD[Line[3], Circle[3, 4, 5, 4, 5]], CD[Line[3], Circle[3, 4, 5, 5, 4]], CD[Line[], Circle[3, 3, 4, 5, 5, 4]], CD[Line[3, 4, 3, 4], Circle[5, 5]], CD[Line[], Circle[3, 4, 3, 5, 4, 5]], CD[Line[3, 4], Circle[3, 5, 5, 4]], CD[Line[3, 4, 4, 3], Circle[5, 5]], CD[Line[3, 4, 4], Circle[3, 5, 5]], CD[Line[], Circle[3, 4, 5, 3, 4, 5]], CD[Line[3, 4, 5], Circle[3, 5, 4]], CD[Line[3, 4, 5, 4, 3, 5], Circle[]], CD[Line[3, 4, 5, 4], Circle[3, 5]], CD[Line[3, 4, 5, 5], Circle[3, 4]], CD[Line[3, 4, 5, 4, 5, 3], Circle[]], CD[Line[3, 4, 5, 4, 5], Circle[3]], CD[Line[3, 4, 5, 5, 4, 3], Circle[]], CD[Line[3, 4, 5, 5, 4], Circle[3]]}

Performance Issues

We are currently working to improve the performance of this program. For larger computations, it would likely help to increase the maximum heap size available to Java. To do this, type the following into Mathematica before loading the CDinterface.m definitions (step 1 above):

In[1]:= Needs["JLink`"];
In[2]:= InstallJava[CommandLine -> "/path_to_java_runtime/java -Xmx128M"]

This allows Java to use up to 128 megabytes of memory; you may change the number "128" in the parameter "-Xmx128M" to suit your needs. Note that the first line needs to be entered exactly as shown - the funny apostrophe is located next to the "1" key on many keyboards.