0
|
2812 Views
|
2 Replies
|
2 Total Likes
View groups...
Share
GROUPS:

# How do I eliminate a thread error regarding array length for matrices?

Posted 11 years ago
 Hi,Everyone here was so helpful last time, I am back with another sticking point.  I am trying to add a 4x4 matrix to the product of a 4x2*2x2*2x4 matrix, which should result in a 4x4 matrix.  The matrices in question are psiuu1 (4x4), psiuv1 (4x2), Z1 (2X2) and Z2 (2X4).  The four matrices are listed in the code below, along with the expression for Tx1 that I need to evaluate.  When I try to evaluate Tx1, I get a thread length error that tells me that the lengths are not compatible. In[78]:= psiuu1  Out[78]= {{-1.77954 + 0.192603 I, -0.442094 - 0.00401247 I,   2.87584*10^6 + 0.000417968 I, -59911.9 -    8.27209*10^-6 I}, {133.421 - 9.2452 I, -1.77954 +    0.192603 I, -1.38044*10^8 - 0.0210661 I,   2.87584*10^6 + 0.000417968 I}, {-6404.38 + 443.781 I,   133.421 - 9.2452 I,   6.62628*10^9 + 1.05935 I, -1.38044*10^8 - 0.0210661 I}, {307418. -   21302. I, -6404.38 + 443.781 I, -3.18069*10^11 - 53.1613 I,  6.62628*10^9 + 1.05935 I}}In[81]:= psiuv1Out[81]= {{1248.13 + 1.63261*10^-7 I, -26.0021 -   3.21224*10^-9 I}, {-59911.9 - 8.27209*10^-6 I,  1248.13 + 1.63261*10^-7 I}, {2.87584*10^6 +   0.000417968 I, -59911.9 - 8.27209*10^-6 I}, {-1.38044*10^8 -   0.0210661 I, 2.87584*10^6 + 0.000417968 I}}In[95]:= Z1Out[95]= {{16637. + 33266.8 I, -3.55271*10^-14 -   7.10543*10^-14 I}, {7.95808*10^-15 + 1.59162*10^-14 I,  3.94652 + 0.69304 I}}In[96]:= Z2Out[96]= {{1.91119*10^7 - 568.324 I,  0.0000151459 + 0.0000302918 I, -3.83252*10^7 - 7.66505*10^7 I,  1.51924*10^-16 - 7.59619*10^-17 I}, {4.74904*10^-9 +   9.49808*10^-9 I, 1.91122*10^7 - 0.158457 I,  2.32831*10^-12 + 4.65661*10^-12 I, -798.422 - 1596.84 I}}Tx1 = psiuu1 + psiuv1*Inverse[Z1]*Z2;and here is the error I get:During evaluation of In[97]:= Thread::tdlen: Objects of unequal length in {{1248.13 +1.63261*10^-7 I,-26.0021-3.21224*10^-9 I},{-59911.9-8.27209*10^-6 I,1248.13 +1.63261*10^-7 I},{2.87584*10^6+0.000417968 I,-59911.9-8.27209*10^-6 I},{-1.38044*10^8-0.0210661 I,2.87584*10^6+0.000417968 I}} <<1>> {<<1>>,{4.74904*10^-9+9.49808*10^-9 I,<<1>>,<<1>>,-798.422-<<19>> I}}cannot be combined. >>As far as I can tell, all of the matrices are of the correct size, and I am not actually sure why the Thread command is even here... Getting the psi and Z matrices was pretty complicated, could it be that there is an attribute to these matrices that is making Mathematica unhappy?  When I try Attribute[psiuu1] it just gives me empty curly braces.Any help on how to eliminate this error and calculate Tx1 would be appreciated!  Thanks!
2 Replies
Sort By:
Posted 11 years ago
 Yep, thank you!
Posted 11 years ago
 Use . to do matrix multiply, not * and the problem appears to go away