| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| public:calculator:guides:dm41x_matrix [07/02/26 20:31 GMT] – [Example Definition] john | public:calculator:guides:dm41x_matrix [08/02/26 08:26 GMT] (current) – [Example Definition] john |
|---|
| |C|''CMEDIT''|K| | | |C|''CMEDIT''|K| | |
| |D|''MINV''|L| | | |D|''MINV''|L| | |
| |E|''M*M''|M| | | |E|''M*M''|M|''ZK?YN''| |
| |F|''MDET''|N|''EMDIR'' | | |F|''MDET''|N|''EMDIR'' | |
| |G|''TRNPS''|O|''EMDIRX''| | |G|''TRNPS''|O|''EMDIRX''| |
| |H|''MSYS''|P|''PURFL''| | |H|''MSYS''|P|''PURFL''| |
| |
| Matrices are saved in Extended Memory, and I put commands in CST to find and remove them once I'm finished: ''EMDIR'', ''EMDIRX'' and ''PURFL'' | Matrices are saved in Extended Memory, and I put commands in CST to find and remove them once I'm finished: ''EMDIR'', ''EMDIRX'' and ''PURFL'' and I have ''ZK?YN'' to quickly access [[41z_module|]] complex number functions (assuming the module is //plugged-in//). |
| |
| ===== Basic Workflow ===== | ===== Basic Workflow ===== |
| * Put the matrix names in ''ALPHA'' in the form ''Matrix 1,Matrix2,Results Matrix'' | * Put the matrix names in ''ALPHA'' in the form ''Matrix 1,Matrix2,Results Matrix'' |
| * ''ALPHA'' = ''A,B,C'' | * ''ALPHA'' = ''A,B,C'' |
| * <key>ALPHA</key> <key>'A'</key> <key>','</key> <key>'B'</key> <key>','</key><key>'C'</key><key>ALPHA</key> | * <key>ALPHA</key> <key>'A'</key> <key>','</key> <key>'B'</key> <key>','</key> <key>'C'</key><key>ALPHA</key> |
| * Execute ''M*M'' from the ''CST'' menu | * Execute ''M*M'' from the ''CST'' menu |
| * <key>CST</key> <key>'E'</key> | * <key>CST</key> <key>'E'</key> |
| |
| |
| ===== Complex Matrix ===== | ===== The Complex Matrix ===== |
| |
| It is possible to define, edit and carry out operations with matrices containing Complex Numbers. | It is possible to define, edit and carry out operations with matrices containing Complex Numbers. |
| '' | '' |
| |
| Two rows and two columns containing complex numbers, so the definition/dimension is ''4.004'' | Two rows and two columns ''2x2'' containing complex numbers, so the definition/dimension is ''4.004'' |
| |
| The numbers are actually saved as if in a larger real matrix as | The numbers are actually saved as if in a larger real matrix as |
| '' | '' |
| |
| The entry is via ''CMEDIT'' which asks for each ''Real'' and ''Imaginary'' part in turn | The entry is via ''CMEDIT'' via ''CST'' menu ''C'', which asks for each ''Real'' and ''Imaginary'' part in turn |
| |
| * <key>ALPHA</key> <key>'A'</key> <key>ALPHA</key> | * <key>ALPHA</key> <key>'A'</key> <key>ALPHA</key> |
| * ''4.004'' <key>'CST'</key> <key>'A'</key> | * ''4.004'' <key>'CST'</key> <key>'A'</key> |
| * <key>'CST'</key> <key>'C'</key> | * <key>'CST'</key> <key>'C'</key> |
| * ''RE. 1:1='' ''1'' <key>'R/S'</key> | * ''RE. 1:1='' <key>1</key> <key>'R/S'</key> |
| * ''IM. 1:1='' ''2'' <key>'R/S'</key> | * ''IM. 1:1='' <key>2</key> <key>'R/S'</key> |
| * ''RE. 1:2='' ''5'' <key>'R/S'</key> | * ''RE. 1:2='' <key>5</key> <key>'R/S'</key> |
| * ''IM. 1:2='' ''6'' <key>'R/S'</key> | * ''IM. 1:2='' <key>6</key> <key>'R/S'</key> |
| * ''RE. 2:1='' ''3'' <key>'R/S'</key> | * ''RE. 2:1='' <key>3</key> <key>'R/S'</key> |
| * ''IM. 2:1='' ''4'' <key>'R/S'</key> | * ''IM. 2:1='' <key>4</key> <key>'R/S'</key> |
| * ''RE. 2:2='' ''7'' <key>'R/S'</key> | * ''RE. 2:2='' <key>7</key> <key>'R/S'</key> |
| * ''IM. 2:2='' ''8'' <key>'R/S'</key> | * ''IM. 2:2='' <key>8</key> <key>'R/S'</key> |
| |
| ==== Multiplication of Complex Matrices ==== | ==== Multiplication of Complex Matrices ==== |
| |
| Create a second matrix ''B'' of ''2x1'' which can be multiplied by ''A'' as ''A'' x ''B'' | === Create a second matrix === |
| | |
| | * Matrix ''B'' of size ''2x1'' which can be multiplied by ''A'' as ''A'' x ''B'' |
| |
| '' | '' |
| '' | '' |
| |
| Dimension ''4.002'' | === Dimension second matrix === |
| | |
| | This is dimensioned as double the basic size of ''2x1'' : ''4.002'' and then populated with ''CMEDIT'' |
| |
| * <key>ALPHA</key> <key>'B'</key> <key>ALPHA</key> | * <key>ALPHA</key> <key>'B'</key> <key>ALPHA</key> |
| * ''4.002'' <key>'CST'</key> <key>'A'</key> | * ''4.002'' <key>'CST'</key> <key>'A'</key> |
| * <key>'CST'</key> <key>'C'</key> | * <key>'CST'</key> <key>'C'</key> |
| * ''RE. 1:1='' ''3'' <key>'R/S'</key> | * ''RE. 1:1='' <key>3</key> <key>'R/S'</key> |
| * ''IM. 1:1='' ''4'' <key>'R/S'</key> | * ''IM. 1:1='' <key>4</key> <key>'R/S'</key> |
| * ''RE. 2:1='' ''2'' <key>'R/S'</key> | * ''RE. 2:1='' <key>2</key> <key>'R/S'</key> |
| * ''IM. 2:1='' ''6'' <key>'R/S'</key> | * ''IM. 2:1='' <key>6</key> <key>'R/S'</key> |
| |
| Create a result matrix 'C' which will be a 2x1 complex with dimension ''4.002'' | === Create a result matrix === |
| | |
| | Matrix 'C' which will be also be a ''2x1'' complex with dimension :''4.002'' |
| |
| * <key>ALPHA</key> <key>'C'</key> <key>ALPHA</key> | * <key>ALPHA</key> <key>'C'</key> <key>ALPHA</key> |
| * ''4.002'' <key>'CST'</key> <key>'A'</key> | * ''4.002'' <key>'CST'</key> <key>'A'</key> |
| |
| Multiply | === Multiply A X B = C === |
| |
| * <key>ALPHA</key> <key>'A,B,C'</key> | * <key>ALPHA</key> <key>'A'</key> <key>','</key> <key>'B'</key> <key>','</key> <key>'C'</key> <key>ALPHA</key> |
| * <key>'CST'</key> <key>'E'</key> | * <key>'CST'</key> <key>'E'</key> |
| |
| |
| | === Inspect Result Matrix C === |
| | |
| | * <key>ALPHA</key> <key>'C'</key> |
| | * <key>'CST'</key> <key>'C'</key> |
| | * ''RE. 1:1= -31.000'' <key>'R/S'</key> |
| | * ''IM. 1:1= 52.000'' <key>'R/S'</key> |
| | * ''RE. 2:1= -41.000'' <key>'R/S'</key> |
| | * ''IM. 2:1= 82.000'' <key>'R/S'</key> |
| | |
| | The result matrix is therefore |
| | |
| | '' |
| | | -31+j52 | |
| | | -41+j82 | |
| | '' |
| | |
| | Which agrees with my long-hand calculation (thanks to [[41z_module|]] ) |
| | |
| | |
| | '' |
| | |(1+j2).(3+j4) + (5+j6).(2+j6)| |
| | |(3+J4).(3+J4) + (7+J8).(2+J6)| |
| | '' |
| | |
| | '' |
| | | (-5+j10) + (-26+j42) | |
| | | (-7+j24) + (-34+j58) | |
| | '' |
| | |
| | '' |
| | | -31+j52 | |
| | | -41+j82 | |
| | '' |
| | ==== Systems of Complex Equations.... ==== |
| | |
| | Once you can enter and manipulate Complex Matrices you can also use ''MSYS'' to solve systems with complex matrices in the same way as usual - the only difference is entering the matrices as Complex. |
| |
| |