Global Utilities



Symmetry Determination and Linear Differential Equation Package

 

Getting Started

Getting Started

Given that you want to find symmetries of your differential equation, it is assumed that you know only the basics of REDUCE, such as how to run REDUCE on your machine, and how to compile and load Dimsym (which may vary between different implementations). More advanced usage of Dimsym such as performing manual manipulations of the determining equations if needed will require greater familiarity with REDUCE, while the user who wants to push the program to its limits may need to be familiar with the algorithms involved.

To begin, all you need to do is work through the following example, taken from section 2 of the manual (view PDF): you will then be set to experiment, more examples are the subject of section 17 of the manual. We expect that you will be playing with some of the data files supplied with Dimsym and then reading the manual as you feel the need for more precise information, so this is often written with a lot of details for the serious user. Read section 3 on terminology and section 4 on how to best enter your equations and you will be ready to use the program seriously. Read the other sections as you feel the need.

Introductory Example

As an example, this is how Dimsym finds the symmetries for the heat equation uxx = ut.
x(1) represents the spatial coordinate x,

x(2) represents timet,

u(1) represents the heat u,

u(1,1,1) represents:

,

and u(1,2) represents :

.

Input from the user begins on a line preceded with the line number, eg 1:, and is in boldface

So the things that we did were:

load dimsym23;

to load the Dimsym program. This is implementation dependent.
loaddeq( u(1,2,2)=u(1,1) );
to load the original differential equation,

mkdets(point);

to make the determining equations for point symmetries,

solvedets(std);

to solve the equations as far as possible using the std (standard) algorithm,

showdets();

to show the determining equations remaining,

mkgens();

to make and show the symmetries.


What Dimsym showed us was:

solvedets(std) left it with one equation remaining, this
was for c(1) and was just the heat equation back again (a general property of linear equations).

It showed us the 6 generators of the finite algebra, and the one generator of the infinite
algebra involving an arbitrary solution c(1) to the heat equation.

The symbol @X represents which is used here to represent the basis vector field in the direction of the X coordinate. Its usage here is borrowed from EXCALC.

This example is available as the data file heat1 supplied with
Dimsym. If you are in the right directory (or know how to specify the path)
then this file may be loaded in this way:

REDUCE 3.5, 15-Jul-91
1: in heat1;

See section 17 of the manual (PDF version) for more example files.

 

 

Content Approved by: Head of Department
Page maintained by: Web Administrator
Last Updated: 10 March, 2008