我正在尝试评估以下表达式:
(-a(3)*(4*b(1,1)*b(2,2)-b(1,2)*b(2,1))+b(3,2)*(2*b(1,1)*a(2)+b(1,2)*b(2,1)))/(2*b(3,3)*(4*b(1,1)*b(2,2)-b(1,2)*b(2,l,1))-b(3,2)(2*b(1,1)*b(2,3)-b(1,2)*b(2,1)))
用于表达(在乳胶中):
$\left(\frac{-a_3 (4\beta_{11}\beta_{22}-\beta_{12}\beta_{21} ) +\beta_{32}(2\beta_{11}a_2+\beta_{12}\beta_{21})}
{2\beta_{33} (4\beta_{11}\beta_{22}-\beta_{12}\beta_{21} ) -\beta_{32}(2\beta_{11}\beta_{23} - \beta_{12}\beta_{21})}\right)$
Matlab一直在抱怨:
Error: ()-indexing must appear last in an index expression.
我想检查一下我是否有简化权,并且需要对这样的表达式进行评估。
答案 0 :(得分:3)
您必须在b(3,2)
之后添加星号。目前,以b(3,2)
开头的术语是这样的:
b(3,2)(2*b(1,1)*b(2,3)-b(1,2)*b(2,1))
您应该将其更改为
b(3,2)*(2*b(1,1)*b(2,3)-b(1,2)*b(2,1))
问题在于Matlab将其解释为索引b(3,2)
,它已经是索引表达式。
答案 1 :(得分:2)
看起来您的矩阵b
是二维的,但您的表达式包含b(2,l,1)
,其中有三个下标。
原始公式中没有任何l
。