对于 'embedded.fi' 类型的输入参数,MATLAB.Undefined 函数 'det' 出错

Error in MATLAB.Undefined function 'det' for input arguments of type 'embedded.fi'

我已经看过了 link Error using fzero in Matlab: Undefined function or method 'det' for input arguments of type 'function_handle' 但是我无法解决这个问题 link.I 我在 MATLAB 中使用 fi 对象。我有一个矩阵 T_1 (2 cross 2) 被转换成 fi(T_1,1,32,26,fimath),即 32 有符号二进制数,26 是二进制小数点的位置。现在当我尝试执行以下代码时

  T =  mat_G/(mat_sqrt_D)  
  T_1=fi(T./mat_E,1,32,26,fimath);
  multiplier=1/(2*sqrt(det(var_oldS))*abs(det(T_1)));

出现以下错误

Undefined function 'det' for input arguments of type 'embedded.fi'.

谁能告诉我如何解决它。

P.S 变量 var_oldS、mat_G、mat_E、mat_qrt_D 具有相同的 fi 对象属性,即 fi(variable_name,1 ,32,26,fimath)

如果您查看 det 的文档,它说输入必须是单数或双数。可能不支持定点。由于您的矩阵大小固定为 4,因此替换函数很简单:

det2=@(M)M(1)*M(4)-M(2)*M(3)

然后用det2代替det。