MathGroup Archive 2008

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

Search the Archive

Re: Square Brackets

  • To: mathgroup at
  • Subject: [mg92727] Re: Square Brackets
  • From: Bill Rowe <readnews at>
  • Date: Sat, 11 Oct 2008 06:46:43 -0400 (EDT)

On 10/10/08 at 4:36 AM, mariamsaleh.khan at (mariam) wrote:

>i want to know that: 1)

>amplist[i1]= Read[StringJoin[jproc,"/",QCD[i1],"diagrams.amp"]],
>ileng[i1] = Length[amplist[i1]],

>Print["Processing amp[",i1,",",i2,"]"],
>If[i1===2,{amp[i1,i2] = amplist[i1][[i2]][[3]]}, {amp[i1,i2] =
>---------------------------------- and so on.

>What does amp[i1,i2] = amplist[i1] [[i2]] [[3]] mean? I mean any
>f[i.j]=g[i] [[j]] [[k]] I am confused about the double-brackets used

Double square brackets are used to delimit indices into an array
or list or to refer to a part of an expression. Single square
brackets are used to delimit function arguments. For example:

f[1] = 8;
f[2] = 5;
f[3] = 7;

defines the values to be returned by the function f to be 8, 5
and 7 when evaluated at 1, 2 and 3 respectively. Often, it is
convenient to think of f as being an array or list rather than a
function. But writing

f[1.5] = 10;

is both valid and meaningful when f is viewed as a function.
Obviously, there can be no element 1.5 of an array of elements.


amplist[i1][[i2]][[i3]] literally says evaluate the function
amplist at i1 then find part i2 of what amplist returns and then
return part i3 of that part.

>2) in another expression, itwo = StringPosition[jproc,"2"][[1,1]]

>what for [[ x, y]] is used?

StringPosition returns a list of start position, end position
pairs. That is




The [[1,1]] part says take the pair at position 1 and return
element 1 of that pair which will be the starting position of
the sub-string to be found. Note, this could also have been
written as:


  • Prev by Date: Re: I can plot a function but when I try FindRoot it complains
  • Next by Date: Re: How to print TraditionalForm without evaluation
  • Previous by thread: Re: Prime Puzzle with Mathematica [CORRECTION]
  • Next by thread: Re: Re: Why is Mathematica assuming k==l and how do I