Re: Re: RandomReal gets stuck
- To: mathgroup at smc.vnet.net
- Subject: [mg100728] Re: [mg100687] Re: RandomReal gets stuck
- From: DrMajorBob <btreat1 at austin.rr.com>
- Date: Thu, 11 Jun 2009 21:44:45 -0400 (EDT)
- Organization: Deep Space Corps of Engineers
- References: <200906061025.GAA04602@smc.vnet.net> <h0fvjl$rb1$1@smc.vnet.net>
- Reply-to: drmajorbob at bigfoot.com
You're correct that Block and aa=ToString@a are unnecessary; it's a very long time since I looked at the code. But it works just fine, as it is or with those removed; I just neglected to tell you how to use it. For instance, subFunction[ a_Symbol] := (MakeExpression[SubscriptBox[ToString@a, i_], f_] := MakeExpression[RowBox[{ToString@a, "[", i, "]"}]]; MakeBoxes[a[i_], f_] := SubscriptBox[MakeBoxes[a, f], MakeBoxes[i, f]]) Now enter subFunction[a] then Array[a, 10] Array[Subscript[a, #] &, 10] and observe. Both outputs are the same. Or enter a[j] whose output is Subscript[a,j] (But looking like a subscripted variable, of course.) It only affects the symbol a, which you've set up using subFunction[a]. Bobby On Thu, 11 Jun 2009 06:07:36 -0500, Alexey <lehin.p at gmail.com> wrote: > On 7 =C9=C0=CE, 13:00, DrMajorBob <btre... at austin.rr.com> wrote: >> If you want to use subscripted variables, it might help to use this >> code: >> >> subFunction::usage = "subFunction[a] causes inputting a[i] or \ >> \!\(\*SubscriptBox[\"a\", \"i\"]\) to be synonymous, while always \ >> displaying the latter in outputs." >> >> "subFunction[a] causes inputting a[i] or \!\(\*SubscriptBox[\"a\", \ >> \"i\"]\) to be synonymous, while always displaying the latter in \ >> outputs." >> >> subFunction[a_Symbol]:=Block[{aa=ToString[a]},MakeExpression[Subscrip= > tBox[ToString@a,i_],f_]:=MakeExpression[RowBox[{ToString@a,"[",i,"]"}]];MakeBoxes[a[i_],f_]:=SubscriptBox[MakeBoxes[a,f],MakeBoxes[i,f]]] >> >> The result is that you can refer to a[i] or Subscript[a,i] >> interchangeably, but it always displays in the subscripted form. I find >> it >> much easier to use a[i] while typing formulas, so I'm getting the best >> of >> both worlds. >> >> Not sure if that addresses everything brought up on the thread, of >> course. >> >> Bobby > > > It is very interesting, thank you. But as I understand the definition > aa=ToString[a] > inside Block is not necessary. And Mathematica does not recognizes > input Subscript[a,i] as equivalent to a[i]. There seems to be some > errors in the code. > -- DrMajorBob at bigfoot.com
- References:
- Re: RandomReal gets stuck
- From: Bill Rowe <readnews@sbcglobal.net>
- Re: RandomReal gets stuck