Re: calculating with vectors of variable length
- To: mathgroup at smc.vnet.net
- Subject: [mg124607] Re: calculating with vectors of variable length
- From: Ulrich Arndt <ulrich.arndt at data2knowledge.de>
- Date: Thu, 26 Jan 2012 03:28:53 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <201201251208.HAA06160@smc.vnet.net>
this should work if a and x should be in variable length and giving as input parameters.
Clear[f]
f::nonequallength =
"The argument `1` and `2` do not have the same length.";
f[x_?VectorQ, a_?VectorQ] :=
If[Length[a] == Length[x], a.x, Message[f::nonequallength, x, a]]
f[{1, 2, 3}, {a1, a2, a3}]
f[{b1, b2, b3, b4}, {a1, a2, a3, a4}]
f[{b1, b2, b3, b4}, {a1, a2, a3}]
a = {a1, a2, a3};
b = {b1, b2, b3};
f[a, b]
b = {b1, b2, b3, b4};
f[a, b]
or do you want to generate a based on the length of x?
f[x_?VectorQ] := Table[Subscript[a, i], {i, 1, Length[x]}].x
f[{x1, x2, x3}]
f[{x1, x2, x3,x4}]
Ulrich
Am 25.01.2012 um 13:08 schrieb Benjamin Hell:
> Hi,
> I'd like to work with vectors of variable length. A short example would
> be this:
> a = {a1,...,an}
> f[x_]:=a.x
> The vector x should be treated as a vector {x1,...,xn} and n should be
> variable and not be specified prior to any calculations.
> One possible calculation would be:
> D[f,x3]
> which should give a3 according to the definition of f above.
>
> How can I implement that in mathematica?
>
> Thanks in advance,
> Benjamin
>
>
- References:
- calculating with vectors of variable length
- From: Benjamin Hell <hell@exoneon.de>
- calculating with vectors of variable length