Can Mathematica recognize the difference between a vector and a matrix?
- To: mathgroup at smc.vnet.net
- Subject: [mg41273] Can Mathematica recognize the difference between a vector and a matrix?
- From: Bob.Buchanan at millersville.edu (J Robert Buchanan)
- Date: Mon, 12 May 2003 00:58:45 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Hello,
I would like to define a Mathematica function which does something
different depending on whether one of the arguments to the function is
a matrix or a vector. I know there are some in-elegant ways to achieve
the affect that I want, but I'm searching for an elegant and efficient
way. Here is an example of the function when both arguments are
vectors.
DMetric[x\[Tau]_List, xt_List] :=
Sqrt[\[CapitalLambda] . \((\((x\[Tau] - xt)\)\^2)\)]
I would like to be able to define the other version where the first
argument is a matrix like this.
DMetric[x\[Tau]_Matrix, xt_List] :=
Sqrt[Map[\((\[CapitalLambda] . #)\) &,
\((Transpose[Transpose[x\[Tau]] - xt]\^2)\)]]
In both cases CapitalLambda is a constant vector of weights. Does
anyone have a suggestion?
Thanks,
Bob Buchanan