******************************************************* Filename: aNuMet.dll Description: DLL For Numerical calculations Programming language: PureBasic v4.20 (friendly called PB) Version 0.0.3.0 by Carlo Somigliana (somic@libero.it) ------------------------------------------------------------------------------------------------------------------ a DLL for numerical calculations (Replaces VBMatr.OCX discontinued) Implement 40+ Matrix functions, including Determinant, Inverse, Division, Trasposed. Solve equation systems, calculate coefficients of polinomial curve, show matrix elements, etc. Includes equation parser/solver/intergator with variables and functions and other functions See .pbpt and .bas files for details Very fast code. Sample code available in Visual Basic and PureBasic. ******************************************************************** This DLL is SHAREWARE. Email me at somic@libero.it for registration. ******************************************************************** INSTALLATION: ------------- - copy aNuMet.dll and Install.exe in the same folder - run Install.exe to activate the DLL. Note: - DLL shipped is not active and must be 'ACTIVATED'. If used without activation, it will self-terminate itself and the program calling it, after prompting for registration. PLS BE WARNED OF THIS BEHAVIOUR AND DON'T CLAIM. UN-INSTALLATION: ---------------- - the program is a simple DLL. To uninstal, simply cancel it. FEES: ----- - UNREGISTERED users: no Cost. TRIAL period of 10 days with flash screen (About box) prompting for registration - Registered SINGLE users: Cost 10 Euro. DLL working on the installation PC - Registered MULTI Users: cost: 50 Euro. DLL working on every PC To register it, email me at somic@libero.it specifying the desired license (SINGLE or MULTI User). You will get instructions for payment. After this, you will get a new version of the Install.exe file to repeat installation. ************************************************************************************************** Pls report any bug and/or comment to me, Carlo Somigliana, at this e-mail address: somic@libero.it Bug fix will be e-mailed free of charge. ************************************************************************************************** Notes: ======================================================= This DLL uses standard Windows API calling convention All calls to be declared as Functions, returning an ExitCode (Long or .l), expecially in PB, to avoid Debug problems Matrices must be passed with a pointer (PB i.e @a()) or first element (VB i.e. a(1,1)) (see examples) Matrices' elements are all Double (.d = 8 bytes) Matrices order must be set and correct (i.e. DLL can not ReDim them) Procedures "aElemOrder" or "Set_aElemOrder" must be always called before any other call to set aElemOrder value inside DLL This DLL has no run-time error management Simbol * means a pointer to a variable (Matrix, Long, Double,...) Simbol @ means memory address of variable/array/etc When a * is used in the ProcedureDLL declaration, then a @ must be put in front of the relevant parameter Parameter rc.l always means Squared Matrix (Rows = Col) Declaration Instructions ======================== * PUREBASIC ----------- Use IncludeFile "aNuMet.pbpt" (PureBasic ProtoType file) in the PB project file All calls to be declared as Functions, returning an ExitCode (Long / .l), expecially in PB, to avoid Debug problems * VISUAL BASIC -------------- Matrices must be already dimensioned (preferably Option Base 1 - from 1 To n) Matrices must be passed with first element (see examples) Arrays (Matrices) must be declared 'As Any' (see samples) Long values (.l in PureBasic) must be declared 'ByRef' All calls to be declared as Functions, returning an ExitCode (Long) Returned values when Double must be declared 'ByRef' and are always the last parameter