# linalg_udf_1 # written by John Dannenhoffer # dummy point POINT 0 0 0 # scalar addition DIMENSION M1 1 1 DIMENSION M2 2 3 SET M1 10 SET M2 "1;2;3;4;5;6" UDPRIM linalg OPER $add M1 M1 M2 M2 DIMENSION ANS @@ans.nrow @@ans.ncol SET ANS @@ans # matrix addition DIMENSION M1 2 3 DIMENSION M2 2 3 SET M1 "1;2;3;4;5;6" SET M2 "6;5;4;3;2;1" UDPRIM linalg OPER $add M1 M1 M2 M2 DIMENSION ANS @@ans.nrow @@ans.ncol SET ANS @@ans # scalar subtraction DIMENSION M1 1 1 DIMENSION M2 2 3 SET M1 10 SET M2 "1;2;3;4;5;6" UDPRIM linalg OPER $sub M1 M1 M2 M2 DIMENSION ANS @@ans.nrow @@ans.ncol SET ANS @@ans # matrix subtraction DIMENSION M1 2 3 DIMENSION M2 2 3 SET M1 "1;2;3;4;5;6" SET M2 "6;5;4;3;2;1" UDPRIM linalg OPER $sub M1 M1 M2 M2 DIMENSION ANS @@ans.nrow @@ans.ncol SET ANS @@ans # scalar multiplication DIMENSION M1 1 1 DIMENSION M2 2 3 SET M1 10 SET M2 "1;2;3;4;5;6" UDPRIM linalg OPER $mult M1 M1 M2 M2 DIMENSION ANS @@ans.nrow @@ans.ncol SET ANS @@ans # matrix multiplication DIMENSION M1 2 3 DIMENSION M2 3 2 SET M1 "1;2;3;4;5;6" SET M2 "1;2;3;4;5;6" UDPRIM linalg OPER $mult M1 M1 M2 M2 DIMENSION ANS @@ans.nrow @@ans.ncol SET ANS @@ans # matrix division (solve) DIMENSION M1 2 2 DIMENSION M2 2 3 SET M1 "1;2;3;4" SET M2 "5;50;500;11;110;1100" UDPRIM linalg OPER $div M1 M1 M2 M2 DIMENSION ANS @@ans.nrow @@ans.ncol SET ANS @@ans # matrix transpose DIMENSION M1 2 3 SET M1 "1;2;3;4;5;6" UDPRIM linalg OPER $trans M1 M1 DIMENSION ANS @@ans.nrow @@ans.ncol SET ANS @@ans END