      Ŀ
                                OptiVec                              
                        VectorLib for Borland C / C++                
                         by Martin Sander 1996-1998                  
                                                                     
                           Shareware Version 1.2                     
      


1. Introduction
---------------
Vector functions instead of loops - if it matters to you how fast and how
accurate your data are processed!
The largest portion of almost all programs processing numerical data
consists of loops. Replace these loops by the specialized vector functions
of VectorLib, and exploit all the advantages of vectorized programming:

- VectorLib was entirely written in Assembly language. The result is a
  highly optimized and numerically accurate code, running 2-3 times faster
  than compiled loops.

- fully vectorized forms of all operators and functions of the language
  C/C++ for all integer and floating-point (including complex!) data types

- Additionally many other real and complex math functions, statistics,
  analysis, FFT techniques, graphics - in total more than 3000!

- Simple and logical syntax, for example
  "VF_exp( Y, X, size );"      for Y[i] = exp( X[i] ) with "float" arrays,
  "VD_FFT( Y, X, size, 1 );"   for double-precision forward FFT

- VectorLib is bundled with CMATH (non-vectorized complex number operations)
  and with MatrixLib (wide range of matrix operations) into the package
  "OptiVec".


2. System requirements
----------------------
This version of OptiVec is designed for IBM AT, PS/2 or compatibles,
equipped at least with a 80386 CPU and a 80387 coprocessor.
For Borland C++ (Turbo C++), version 3.0 or higher, memory models Win32,
Windows-LARGE, or  DOS-LARGE (depending on choice when ordering or
downloading).
Registered version: all memory models; separate libraries optimized for
all processors from 486DX/Pentium down to 286 with or without coprocessor.


3. Installation
---------------
Please run the installation program INSTALL.EXE. If anything goes wrong,
you may try the following:
   a) Create the directory where you want OptiVec to reside.
   b) Manually unzip the file DOC.ZIP into it.
   c) Create a sub-directory /LIB and unzip the file LIB.ZIP into it.
   d) Create a sub-directory /INCLUDE and unzip the file INCLUDE.ZIP into it.
If you don't succeed that way, you probably got a corrupted download.
Please download again. If even that does not help, please contact:
MartinSander@Bigfoot.com.

After you completed the installation, you must set the library search path
and the include-file search path according to your OptiVec directory choice
("Options/Directories" in Borland C 3.x, "Options/Project/Directories" in
Borland C++ 4.x and 5.x).


4. Running the examples
-----------------------
Check your installation by compiling and running the appropriate demo file.
Follow the instructions in the header of that file.
If you get compiler errors like "Cannot open include file ...", or a
linker error "Unresolved external", you probably did not set the library
and include paths correctly.

VDEMO.CPP   is a DOS program,
VDEMOW1.CPP is for Borland C++ 3.x with OWL 1.0 for Windows
VDEMOW2.CPP is for Borland C++ 4.0 or higher with OWL 2.0+

For DOS, create a project containing
   VDEMO.CPP,  VCL3.LIB, and  GRAPHICS.LIB.
   Choose the application either as DOS Standard or as DOS Overlay.
   VCL3.LIB may or may not be used as an overlay (option to be set:
   "Project/Local Options/Overlay this module").
   Choose the memory  model LARGE.
   Check the floating-point options. Neither "No floating-point" nor
   "Floating-point emulation" should be selected.

For 16-bit Windows with Borland C++ 3.x,
    create a project containing
    VDEMOW1.CPP,  VCL3W.LIB, and OWL.DEF.
    Choose the application as Windows-EXE, model LARGE.
    Choose the memory model LARGE and 287 floating-point operations

For 16-bit Windows with Borland C++ 4.0 or higher,
    create a project containing
    VDEMOW2.CPP and VCL3W.LIB.
    In the TargetExpert, choose as target
      Application [.EXE]  for Windows 3.x, model LARGE.
      Tick the boxes for Standard Libraries OWL, ClassLibrary, and Runtime.
      Use, as you prefer, either Dynamic or Static linking.

For Windows95 or NT with Borland C++ 4.0 or higher,
    create a project containing
    VDEMOW2.CPP and VCF3W.LIB.
    In the TargetExpert, choose as target
      Application [.EXE]  for Win32, GUI model.
      Tick the boxes for Standard Libraries OWL, ClassLibrary, and Runtime.
      Use, as you prefer, either Dynamic or Static linking.

5. Documentation
----------------
The full OptiVec documentation is to be found in the files
HANDBOOK.TXT, FUNCREF.TXT and CMATH.TXT as ASCII text. If you want to
load the documentation into a word processor under Windows, you must
use the filter "ASCII text" or "DOS text".


6. Copyright
------------
The copyright owner of this product as a whole and of all its constituent
parts is
         Dr. Martin Sander Software Development
         Serturnerstr. 11
         D-37085 Goettingen
         Germany
         e-mail: MartinSander@Bigfoot.com

This Shareware version of OptiVec is freely distributable in unchanged form.
For the distribution of applications created using OptiVec, you need the
registered version. The detailed licence terms are described in chapter 1.2
of the file HANDBOOK.TXT.


7. Registered Version
---------------------
If you like OptiVec and decide to use it, please be fair and register.
The registered version
-  supports all memory models of Windows95, NT, 3.x, and DOS
   (including the 32-bit model FLAT).

-  has individually optimized libraries for each degree of processor
   backward-compatibility:
      486DX/Pentium+
      386+ (387 coprocessor required)
      286+ (no coprocessor required).

-  comes with printed documentation.

-  costs DM 399,- (incl. German VAT) or USD 250 (excl. VAT)
   and can be ordered by e-mail from the author or through the
   following secure-server Internet sites:

   http://www.atlantic-coast.com/cgi-bin/sellonline/136.htm
   http://www.shareit.com/programs/101557.htm
   http://www.shareit.com/deutsch/programs/101556.htm

See chapter 1.3 of the file HANDBOOK.TXT for further details about
ordering.


    * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

