MathGroup Archive 2011

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

Search the Archive

Re: Problem with access nested list

  • To: mathgroup at smc.vnet.net
  • Subject: [mg121156] Re: Problem with access nested list
  • From: Yves Klett <yves.klett at googlemail.com>
  • Date: Wed, 31 Aug 2011 07:41:27 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <j3l16f$btp$1@smc.vnet.net>

Have a look at:

m = IdentityMatrix[3];
index = {1, 3};
m[[index]]
m[[Sequence @@ index]]

... so m[[Sequence@@{1,3}]] evaluates to m[[1,3]].

Regards,
Yves

Am 31.08.2011 12:08, schrieb Sam Takoy:
> Hi,
> 
> Below is a simple code, that constructs the n-dimensional permutation
> symbol (http://mathworld.wolfram.com/PermutationSymbol.html). I found
> myself jumping through hoops to accomplish a simple task.
> 
> The main obstacle was: If I have and n x n x n list "temp", and I want
> to access the entry temp[[1, 2, 3]], but the numbers 1 2 and 3 are
> available in a list indicies = {1,2,3}, how do I do it? I tried
> temp[[list]] but that's not it. What I came up with is essentially
> 
> Apply[Part[temp, #]&, indices]
> 
> to convert from a list to arguments. I'm sure I'm missing something.
> 
> Also, how to avoid the ugly loop?
> 
> Many thanks in advance!
> 
> Sam
> 
> Permutator[n_]  := Module[{temp, perms, i},
>    temp = ConstantArray[0, ConstantArray[n, n]];
>    setValue[val_][indices__] :=
>     Module[{}, Part[temp, indices] = val];
> 
>    perms = Permutations[Range[1, n]];
>    For[i = 1, i <= Length[perms], i = i + 1,
>     setValue[Signature[perms[[i]]]] @@ perms[[i]];
>     ];
>    temp
>    ];
> 




  • Prev by Date: Re: Shooting for the endpoint of a ODE system
  • Next by Date: Re: FullSimplify and Coefficient
  • Previous by thread: Re: Problem with access nested list
  • Next by thread: TransformedDistribution