Re: Thread::tdlen: Objects of unequal length

*To*: mathgroup at smc.vnet.net*Subject*: [mg121924] Re: Thread::tdlen: Objects of unequal length*From*: Tomas Garza <tgarza10 at msn.com>*Date*: Thu, 6 Oct 2011 04:26:39 -0400 (EDT)*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com*References*: <201110050804.EAA07154@smc.vnet.net>

As written, t doesn't make sense (it is incomplete). You should wrap the whole thing into {} in order to get a list, i.e. a matrix: t={{0.0284435, 0.00395759, 0.000211963, 0.0357403}, {0.00395759, 0.0113862, -0.000199939, -0.000556137}, {0.000211963, -0.000199939, 0.00118147, -0.00043913}, {0.0357403, -0.000556137, -0.00043913, 0.0649449}} > Date: Wed, 5 Oct 2011 04:04:36 -0400 > From: johan at systeminvestors.se > Subject: Thread::tdlen: Objects of unequal length > To: mathgroup at smc.vnet.net > > This problem is driving me crazy. I'm trying to multiply matrices, where one is 1x4 (s) and the other is 4x4 (t) and the multiplication is s*t*Transpose[s] > > Despite this I get the error message that the objects is of unequal length. The matrices are: > > s={{x1,x2,x3,x4}} > > t={0.0284435,0.00395759,0.000211963,0.0357403},{0.00395759,0. 0113862,-0.000199939,-0.000556137},{0.000211963,-0.000199939,0.00118147,-0.00043913},{ > 0.0357403,-0.000556137,-0.00043913,0.0649449} > > I must use double level in the 1 row matrix, since otherwise Transpose[] complains that it needs at least 2 levels. I tried without this as well, but I keep getting: > > Thread::tdlen : Objects of unequal length in {{x1,x2,x3,x4}}{{0.0284435,0.00395759,0.000211963,0.0357403},<<2>>,{<<10>>,<<3>>}}{{x1},{x2},{x3},{x4}} cannot be combined. >> > > . when I run s*t*Transpose[s]. > > I've spent hours trying to figure this simple problem out, but without any luck. Any pointers guys? It doesn't help if I change the order of the transpose... >

**References**:**Thread::tdlen: Objects of unequal length***From:*SysInv <johan@systeminvestors.se>