Thursday, February 12, 2015

Matrix Framework Upgrade

The Matrix Framework has been significantly upgraded:
  • The internal structure of the MATRIX data type has been changed from Vector<float[]> to float[][] with internal methods for dynamic resizing.
  • A new M_OPS FB type with expanded functionality replaces the former M_COLS FB type.
  • A new data type M_OP is used to enumerate the functionality provided by the new M_OPS FB type.
  • Row and column indices and lengths are now restricted to the values {0..255} of the USINT data type to correspond to the single-octet elements used for this purpose in the ASN.1 encoding.
  • Matrix inversion is now performed using the Product Form of the Inverse (PFI). The PFI column pivot operation is also directly supported by the M_OPS FB type, which makes it potentially useful in the solution of linear programming optimization problems.
  • The OUT_MATRIX FB type is now capable of resizing and redisplaying itself when a REQ event is received, so the IVAL, ROWS and COLS inputs have been eliminated from this FB type, and no table is displayed initially until the first REQ event is received.
  • The TEST_MCOLS system configuration has been updated to M_OPS_DEMO to demonstrate all the operations possible on the new M_OPS FB type. 
  • The TEST_MATRIX system configuration has been renamed to the more descriptive MATRIX_DEMO.