DifEqu
DifEqu is a program designed for numerically solving ordinary, functional and partial
differential equations, difference equations and do many more things. It can be used for
solving problems arising in mathematics, physics, chemistry, biology. The program is most
useful for teaching, doing research and creating simulation. To this end DifEqu has
- A built in programming language in which the user can write a program to be executed by
DifEqu. The programming language contains:
- Many different variable types (long, float, text, program, file, etc.);
- Usual operators (+, -, *, /, <, >, etc.);
- User defined variables, vector variables, functions;
- Built in functions:
- Mathematical functions (Sin, Cos, Log, Exp, Min, Max, etc.);
- Text handling functions (StrLen, StrMid, Asc, Chr, etc.);
- File handling functions (OpenFile, CloseFile, FSeek, FPrint, ReadChar, ReadText,
ReadLong, etc.);
- Printing functions (Print, PrintF, AnyToS, Pos, etc.);
- Drawing functions (MoveTo, LineTo, PenSize, FgrColor, BgrColor, ChangeFont, etc.);
- Program control functions (Execute, If, While, GetConfig, SetConfig, Abort, etc.);
- Miscellaneous functions (Push, Pop, Clear, SaveValue, etc.).
- Descriptive messages and exact location of the error in a program written in the
programming language;
- Program status button to check the values of variables or run a program by hand.
- Full context sensitive help;
- Many ways of saving your work (position and contents of the windows on the screen,
graphics as Windows BMP file, text as a text file);
- Capability of print previewing and printing your work.
It is very easy to start using the program by simply modifying any of the many examples
shipped together with the program. If you are not familiar with programming and programming
languages, DifEqu can help you do all your programming by asking you to answer some simple
questions, and you need to know only the very basic part of the programming language. But
if you are an expert in programming, you can write your own code to your class or research:
all of the input files for DifEqu are text files, they can be edited by any text editor. If
you only want to change the equation to be solved or the way to display the solutions, you
do not even have to edit manually any of the input files, all of them are handled by DifEqu
automatically.
The execution of the programming language is fast. If you are familiar with Phaser (a
program © by Kocak specifically for solving ordinary differential and difference
equations), you will be surprised that DifEqu (which is not specialized for solving
differential or difference equations) will solve the more complicated equations faster
than Phaser. This speed is achieved by automated function argument type checking, uniform
handling of all the operators and functions, and a feature that is sometimes badly needed
in other programming languages: a program can put together another program and execute it
to create a fast and effective method for solving the problem at hand.
You can create demonstrations by saving the current position and contents of the windows
in DifEqu. When you reopen a project, the position and contents of the windows will be
restored. You can also save the graphics and text created by DifEqu into Windows BMP and
text files to include them in research papers and books. You can print the graphics and
text created by DifEqu to give it to your collegues or your students.
Minimum hardware and software requirements for running DifEqu:
- IBM PC compatible computer with 286 processor, 2 Mb of RAM, 500 Kb hard disk space;
- DOS 3.0 or later, Microsoft Windows 3.0 or later.
Recommended configuration:
- IBM PC compatible computer with 486 processor, 4 Mb of RAM or more (saving large bitmaps
and excessive drawings require more memory), more hard drive space for saving demonstrations
and new templates/jobs;
- EGA or better video card and monitor;
- a printer capable of printing graphics;
The DifEqu program is freeware, you can download it from our server.
Here you can see some examples created by DifEqu, so you can
decide if it is suitable for you.
If you need more information about DifEqu, write the author (Géza
Makay) an e-mail.
To create a problem solving library for educational and research purposes I would very
much like to get any programs and examples written in the programming language in DifEqu.
I am planning to create a page on this WWW server for distributing these problem solving
programs.
The DifEqu project was supported by the Foundation for the Hungarian Higher Education
and Research.
Visit my home page too.