Question: Compiler Compile Matrix multiplication and Transpose


I am trying to generate a compiled c function

dc_test := proc( a :: Array(datatype=float[8]), b :: Array(datatype=float[8]), c :: Array(datatype=float[8]) ) 

c[..,..] := a . b;

return 0


cdc_test:=Compiler:-Compile(dc_test, optimize):

a := Array(1..2, 1..2, fill=1.0, datatype=float[8]);
b := Array(1..2, 1..2, fill=1.0, datatype=float[8]);
c := Array(1..2, 1..2, datatype=float[8]);
dc_test(a, b, c);

cdc_test(a, b, c);

This doesn't work because it doesn't recognize the "." symbol. Also if I were to take the transpose, for example Transpose(a), then it doesn't recognize that either. Are there commands for this that I'm unware of or do you have to program them from scratch?

Please Wait...