LGF_MatrixInverse (FC / V3.0.1)


Autor: Siemens Digital Industry

Kurzbeschreibung

Die Funktion invertiert eine quadratische Matrix vom Datentyp ARRAY[*,*] of LREAL. Die quadratische Matrix beliebiger Größe wird nach dem nach dem Shipley-Coleman Verfahren invertiert.

matrixResult = matrix^{-1}
Hinweis
Beachten Sie, dass die Eingangsmatrix quadratisch sein muss. Dies bedeutet, die Anzahl der Zeilen muss gleich der Anzahl der Spalten sein. Die Ausgangsmatrix muss genauso groß sein und die gleichen Array-Grenzen haben, wie die Eingangsmatrix.

Baustein Schnittstelle

LGF_MatrixInverse (FC)
   Ret_Val  Void
    
   error  Bool
    
   status  Word
    
Array[*, *] of LReal  matrix  Array[*, *] of LReal
       
Array[*, *] of LReal  matrixResult  Array[*, *] of LReal
       
   

Output Parameter

BezeichnerDatentypBeschreibung
Ret_ValVoidVoid - Funktion hat keinen Rückgabewert
errorBoolFALSE: Kein Fehler
TRUE: Während der Ausführung des FB ist ein Fehler aufgetreten
statusWord16#0000-16#7FFF: Status des FB
16#8000-16#FFFF: Fehleridentifikation (siehe folgende Tabelle)

In/Out Parameter

BezeichnerDatentypBeschreibung
matrixArray[*, *] of LRealQuadratische Eingangsmatrix die invertiert wird (Array[0..x,0..x] of REAL)
matrixResultArray[*, *] of LRealInvertierte Matrix

Status & Error Meldungen

Code / WertBezeichner / Beschreibung
16#0000STATUS_NO_ERROR
Abarbeitung ohne Fehler beendet
16#8200ERR_NOT_SQUARE_MATRIX
Error: Die Matrix ist nicht Quatratisch (Spalten und Zeilenanzahl müssen übereinstimmen)
16#8201ERR_ALGORITHM_NOT_POSSIBLE
Die matrix Determinante is NULL, Invertierung nicht möglich für diese Matrix, die Matrix hat keine Inverse
16#8202ERR_MATR1_LOWBOUND_ROWS_RESMATR_LOWBOUND_ROWS
Error: Untere Grenzen der Zeilen (Dim1) der Arrays von Matrix1 und Ergebnis Matrix sind unterschiedlich.
16#8203ERR_MATR1_LOWBOUND_COLUMNS_RESMATR_LOWBOUND_COLUMNS
Error: Untere Grenzen der Spalten (Dim2) der Arrays von Matrix1 und Ergebnis Matrix sind unterschiedlich.
16#8204ERR_MATR1_UPPBOUND_ROWS_RESMATR_UPPBOUND_ROWS
Error: Obere Grenzen der Zeilen (Dim1) der Arrays von Matrix1 und Ergebnis Matrix sind unterschiedlich.
16#8205ERR_MATR1_UPPBOUND_COLUMNS_RESMATR_UPPBOUND_COLUMNS
Error: Obere Grenzen der Spalten (Dim2) der Arrays von Matrix1 und Ergebnis Matrix sind unterschiedlich.

Änderungshistorie

Version & DatumÄnderungsbeschreibung
01.00.00Siemens Industry Online Support
19.08.2015First released version
01.00.01Siemens Industry Online Support
02.01.2017Upgrade: TIA Portal V14 Update 1
02.00.00Siemens Industry Online Support
06.02.2017Functionality using Array[*,*]
02.00.01Siemens Industry Online Support
17.08.2018Upgrade: TIA V15 Update 2
02.00.02Siemens Industry Online Support
23.11.2018Upgrade: TIA V15.1
02.00.05Simatic Systems Support
13.11.2019Regions, comments and constants are added
Moved matrices to IO field.
03.00.00Simatic Systems Support
23.04.2020Set version to V3.0.0, harmonize the version of the whole library
03.00.01Simatic Systems Support
02.02.2020Insert documentation