Knowledge Base

MtxVec scripting

MtxVec expression evaluator can be used to evaluate individual expressions or it can evaluate a list of expressions (a script).

The expressions

MtxVec expression evaluator can be used to evaluate individual expressions or it can evaluate a list of expressions (a script). The parser compiles the expression and types can not be changed at run time. The compiled code can then be executed at top speed with:

  • Support for real and complex numbers
  • Support for vectors and matrices
  • Many matrix operations are multithreaded
  • Most built-in vectorized functions are optimized for SSE2/SSE3/SSE4
  • Performance of vectorized expression evaluation is 10 to 20x higher than scalar expression parsers.
  • It can solve systems of linear equations, do QR or LQ decompositions.
  • Operator support for per element and matrix/vector operations ( *., /., *, /,\)
  • Complete set of standard math routines (Log, Power, Sin,...)
  • Very fast also when evaluating not vectorized expressions
  • Constant expressions evaluated during the parsing stage
  • You can add user defined variables, constants, functions and operators
  • Custom functions can be object methods.
  • Functions can be overloaded allowing same name but different param count.
  • Vectors and matrices can be accessed by elements a(i) or m(r,c).
  • Function parameters and results can be string types.
  • Colon operator allows selection of ranges of rows and colums m(:), m(1,:),v(2:3)
  • Assign operator supports colon operator: m(2:3) = 4
  • Colon operator supports step <> 1 and allows: m(10:-1:3) = 4
  • Vectors and matrices can return elements from conditions: a = m(m > 4)
  • Evaluation of a list of expressions.

The scripting

Scripting currently supports only evaluation of a list of expressions, but this can already be very usefull when giving your customers an option to customize the processing of your application. Here is an example of the scripting interface included with the MtxVec demo application: 

MtxVec Scripting


© DewResearch 1997 - 2017 All Rights Reserved.
E-mail This email address is being protected from spambots. You need JavaScript enabled to view it..
Delphi & C++ Builder are registered trademarks of Embarcadero Corporation. All other brands and product names are trademarks or registered trademarks of their respective owners.