MathGroup Archive 1998

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Matrix Multiplication



Hi Des,
if you define B as B=Array[b,{1,2}], everything works fine. Since
Mathematica identifies rows of a matrix with the sublists of a list,
your B for Mathematica just is no matrix at all.

Jrgen

-----Original Message-----
From: Des Penny <dpenny@iname.com>
To: mathgroup@smc.vnet.net
Subject: [mg12319] [mg12259] Matrix Multiplication


>Hi Folks:
>
>I ran into the following little problem that has me puzzled.
>
>I'm trying to multiply a 3x1 matrix and a 1x2 matrix.  I should get a
>3x2 matrix, but instead I get an error message:
>
>In: A=Array[a,{3,1}]
>Out: {{a[1,1]},{a[2,1]},{a[3,1]}}
>
>In: B=Array[b,{2}]
>Out: {b[1],b[2]}
>
>In: A.B
>Dot::"dotsh": "Tensors \!\({\({a[\(1, 1\)]}\), \({a[\(2, 1\)]}\),
>\({a[\(3, 1\)]}\)}\) and \!\({\(b[1]\), \(b[2]\)}\) have incompatible
>shapes."
>Out: {{a[1,1]},{a[2,1]},{a[3,1]}}.{b[1],b[2]}
>
>Of course I can get what I want by:
>
>In: A1=Flatten[A]
>Out: {a[1,1],a[2,1],a[3,1]}
>
>In:  Outer[Times, A1, B]
>Out: {{a[1,1] b[1],a[1,1] b[2]},{a[2,1] b[1],a[2,1] b[2]},{a[3,1]
>b[1],a[3,1] b[2]}}
>
>
>I don't seem to have trouble with any other dimensions e.g.
>
>In: A=Array[a,{3,2}]
>Out: {{a[1,1],a[1,2]},{a[2,1],a[2,2]},{a[3,1],a[3,2]}}
>
>In: B=Array[b,{2,4}]
>Out: {{b[1,1],b[1,2],b[1,3],b[1,4]},{b[2,1],b[2,2],b[2,3],b[2,4]}}
>
>In: A.B
>Out: {{a[1,1] b[1,1]+a[1,2] b[2,1],a[1,1] b[1,2]+a[1,2] b[2,2],a[1,1]
>b[1,3]+a[1,2] b[2,3],a[1,1] b[1,4]+a[1,2] b[2,4]},{a[2,1] b[1,1]+a[2,2]
>b[2,1],a[2,1] b[1,2]+a[2,2] b[2,2],a[2,1] b[1,3]+a[2,2] b[2,3],a[2,1]
>b[1,4]+a[2,2] b[2,4]},{a[3,1] b[1,1]+a[3,2] b[2,1],a[3,1] b[1,2]+a[3,2]
>b[2,2],a[3,1] b[1,3]+a[3,2] b[2,3],a[3,1] b[1,4]+a[3,2] b[2,4]}}
>
>Can anyone explain what's going on?
>Thanks for your help.
>
>Cheers,
>
>Des Penny
>penny@suu.edu
>
>
>




  • Prev by Date: Re: Chemical notation
  • Next by Date: Re: Matrix Multiplication
  • Prev by thread: Re: Matrix Multiplication
  • Next by thread: Re: Matrix Multiplication