Programs for Programmers


MATFOR ® from ANCAD                                                                     

MATFOR is a set of Fortran 90/95, C/C++, Visual Basic and Visual C# libraries that enhances your program with dynamic visualization capabilities, shortens your numerical code and speeds up your development process.

By adding a few lines of MATFOR code to your program, you can easily visualize your computing results, perform run-time animations, and even produce a movie presentation file as you execute your program. Debugging is easily performed with the debugging facilities provided by MATFOR Graphics Viewer. You can pause an animation, view the current data using MATFOR Data Viewer, and examine any aberrations.  MATFOR numerical procedures are designed to be intuitive and simple to use. Using the numerical procedures, you can solve many technical computing systems, especially those involving linear algebra system, in a fraction of the time it would take to write a traditional Fortran program.  MATFOR's graphics library contains high-level graphical procedures that support x-y plot, vector plot, contour, mesh plot, surface plot, isosurface plot, streamline, slicing plot, molecules plot and more. This variety of graphical procedures allows you to use different representation methods depending on what you want to emphasize on your simulation model.

MATFOR is based on industry recognized visualization libraries VTK (Visual Tool Kit) , OpenGL, and the numerical library Intel MKL (Math Kernel Library).


MATFOR® GUI System facilitates application-building to enhance interface friendliness.  It allows users to create an interface of their preference with MATFOR GUI Builder; one can easily embed the MATFOR widget component into the common UI design environment such as WIN32, BCB, MFC and QT. With the help of GUI Builder, the interface can be customized and saved into a MFUI file based on XML format. MATFOR GUI System then integrates the MFUI file with MATFOR libraries to generate an application. Such application can be executed in common C++ compilers (Intel C++, Visual C++) and Fortran compilers under both LINUX and Windows operating systems. This is one innovation that makes MATFOR different to other applications.

MATFOR's Graphic Viewer

MATFOR's Graphic Viewer displays high quality graphs with no need of Windows programming and graphics initialization. This visualization capability enables you to display graphs instantly with only a couple of lines of programming.

MATFOR's Graphics Viewer cooperates with its Data Viewer to display intermediate data during program execution. This real-time program monitoring mechanism significantly reduces the time and effort you spend on program development.

MATFOR Data Viewer is a powerful tool that displays simulating data in a spreadsheet format.

Snapshot panel captures the snapshot of the distribution and size of the two dimensional data.

Analysis Panel shows the distribution of the data including its average, standard deviation and min/max values.

Filter Panel defines a range using conditions of inequalities.

MATFOR's mfPlayer

MATFOR's mfPlayer transforms computed data to movie-like animation and allow you to do additional graphical manipulations on it. This presentation capability makes you the director of your simulated animation that is to be presented to your audiences.

MATFOR's mfArray

MATFOR's mfArray provides dynamic data typing and dimensioning and it acts as the basic of MATFOR. This fundamental data structure realizes simplicity as it enables you to use Matlab-like syntax in Fortran and C++ environment.

MATFOR’s numerical procedures are designed to be intuitive and simple to use. Using the numerical functions, you can solve many technical computing systems, especially those involving linear algebra, in a fraction of the time it would take to write a program traditionally in Fortran or C++.

MATFOR® 4 supports standard scientific formulas and common software data formats such as Ascii and CSV to facilitate users in data exchange and data reuse. Import and export of Tecplot data is now supported! Additionally, MATFOR® 4 supports the common 3-D object formats including 3DS, OBJ and STL.

3D Finite Elemenet dataset presented with MATFOR® 4 by reading in Tecplot data



New Graphic Library

1. Liner Graphs

2. Structure Grid
Solid Contour3
Solid Contour
3. Triangular Surface Graphs
4. Unstructure Grid
5. Vector Field
6. Other Features
Basic Shapes
Fast Molecule
2D Cartographic Projection
3D Cartographic Projection

New Numerical Library

  Based on Intel® MKL, the numerical library contains over 200 easy-to-use numerical functions subject to assist users with computational problem-solving.
Data Manipulation Functions
  mfSort, mfMin, mfMax, …
Elementary Math Functions
  mfSin, mfCos, mfASin, mfExp, mfAbs, …
Elementary Matrix-Manipulating Functions
  mfEye, mfDiag, mfRand, mfZeros, …
Matrix Analysis
  mfEig, mfInv, mfSvd, mfQz, mfLu, mfDet, mfNorm, …
File IO
  mfSave, mfSaveAscii, mfLoad, mfLoadAscii, …
Fast Fourier Transform
  mfFFT, mfFFT2, mfFFTShift

New Sparse Library

MATFOR® 4 is furnished with the pioneering support to Sparse Matrix. Its well-developed Sparse functions make data handling more efficient and much easier.
Fundamental Element Manipulation
  mfSpCreate, mfSpGetNNZ, mfSpToFull, mfSpy, …
mfArray Multiplication
Solution to Linear System
Minimum, Maximum and Eigen-Values Computation
Example codes for Sparse Matrix:

System Requirements

Updated October 2006

Operating System
Compiler in Fortran
Compiler in C++
Compiler in VB and C#
Intel Based systems 32-bit 2000/XP •Compaq Visual Fortran 6.6 C

•Intel Visual Fortran 8.1/9.0/9.1

•Absoft Fortran 9.0/10.0

•Lahey Fortran 5.7/7.1
•Intel C/C++ 8.1/9.0/9.1

•Visual C++ 6.0

•Visual C++ .NET 2003/2005

•Borland C++ Builder 6.0
•Visual Studio 2005 NEW
Intel Based systems 32-bit Fedora 1/2/3/4
Red Hat Enterprise Linux 3.0/4.0
White-Box Enterprise 3
SuSE 9.1 Enterprise
Mandrake 10
•Intel Fortran 8.1/9.0/9.1

•Lahey Fortran 6.2c

•Absoft Fortran 9.0/10.0
•GNU C++

•Intel C++ 8.1/9.0/9.1
EM64T /AMD64
Systems 64-bit
Fedora 2/3
Red Hat Enterprise Linux 4.0
•Intel Fortran 8.1/9.0/9.1

•Absoft Fortran 10.0

•PathScale 2.4
•GNU C++

•Intel C++ 8.1/9.0/9.1

Download a trial from the Ancad website

MATFOR available from Polyhedron Software