TSL语言基础 > 矩阵计算 > FMArray > 用法介绍 > 矩阵运算

运算符    

  • TSL的基础算符有比如+,-,*,/,\,%,mod,div,^,~,.=,.>,.<,.<>,.>=,.<=,.!,.&,.|,.^,.||,.&&,.!!,like,++,--等等。
    矩阵运算符有比如:*,:/,:\,:^,!,|,:|,Union,::,::=,->等等。
    支持全部矩阵计算算符
    比如 A:=fmarray[1,2,3]+fmarray[2,3,4];
    A的结果为:fmarray[3,5,7]
    再比如:A:= fmarray[1,2,3]+1;
    A的结果为:fmarray[2,3,4]

    矩阵运算支持和array的混合运算
    计算的结果类型和左值相同
    也就是 fmarray :* array -> fmarray
          array :* fmarray -> array
      例如:A:=fmarray[1,2,3]+array(2,3,4);
      A的结果为:fmarray[3,5,7]

    多维矩阵的转置
    对超过2维矩阵的转置,fmarray的矩阵和array不一样,fmarray是对所有维度进行倒置,也就是说如果存在一个1*2*3*4的四维矩阵,会转置为一个4*3*2*1的矩阵。
    如果要当成二维转置,请采用mswap(fm,0,1)的模式,这样交换第0维和第1维的下标