Re: Design problem in 4.2?
- To: mathgroup at smc.vnet.net
- Subject: [mg38797] Re: Design problem in 4.2?
- From: "Allan Hayes" <hay at haystack.demon.co.uk>
- Date: Mon, 13 Jan 2003 04:11:32 -0500 (EST)
- References: <avrj5a$96i$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Ted,
The following works - extra brackets to make n and m name what we want.
MakeBoxes[(n : (_Integer | _Real))*(m : (_Integer | _Real))^pow_, form_] :=
RowBox[{ToString[n], "*",
SuperscriptBox[ToString[m], MakeBoxes[pow, form]]}]
Allan
---------------------
Allan Hayes
Mathematica Training and Consulting
Leicester UK
www.haystack.demon.co.uk
hay at haystack.demon.co.uk
Voice: +44 (0)116 271 4198
Fax: +44 (0)870 164 0565
"Ersek, Ted R" <ErsekTR at navair.navy.mil> wrote in message
news:avrj5a$96i$1 at smc.vnet.net...
> Earlier I showed Jonathan Mann how to have a muliplication sign used
> when the result of the following is displayed.
>
> > In[1]:= 40 (8)^t
> >
> > Out[1] 5 8^(1+t)
> >
> > --------------
> You might also want to ensure a multiplication sign is used in cases
> such as
> In[2]:= 40*8.2^t
> In[3]:= 40.5*8^t
> In[4]:= 40.5*8.2^t
> To do that use the following lines as desired.
> --------------
>
> MakeBoxes[n_Integer*m_Integer^pow_,form_]:=
>
RowBox[{ToString[n],"*",SuperscriptBox[ToString[m],MakeBoxes[pow,form]]}]
>
> MakeBoxes[n_Integer*m_Real^pow_,form_]:=
>
RowBox[{ToString[n],"*",SuperscriptBox[ToString[m],MakeBoxes[pow,form]]}]
>
> MakeBoxes[n_Real*m_Integer^pow_,form_]:=
>
RowBox[{ToString[n],"*",SuperscriptBox[ToString[m],MakeBoxes[pow,form]]}]
>
> MakeBoxes[n_Real*m_Real^pow_,form_]:=
>
RowBox[{ToString[n],"*",SuperscriptBox[ToString[m],MakeBoxes[pow,form]]}]
>
> ---------------------
>
> I thought instead of the four lines above I could only use the
> following:
>
> MakeBoxes[n:(_Integer|_Real)*m:(_Integer|_Real)^pow_,form_]:=
>
> RowBox[{ToString[n],"*",SuperscriptBox[ToString[m],MakeBoxes[pow,form]]}]
>
> but this doesn't work. Can anyone explain why?
>
> > -------------
> > If you put code like this in your (init.m) file it will evaluate every
> > time Mathematica is launched. On my computer the init.m file is located
> > at
> C:\Program Files\Wolfram
> Research\Mathematica\4.1\Configuration\Kernel\init.m
>
>
> > Regards,
> > Ted Ersek
> >
> > Download my collection of Mathematica tricks from:
> > http://www.verbeia.com/mathematica/tips/Tricks.html
> > and
> > http://www.verbeia.com/mathematica/tips/GraphicsTricks.html
> >
> >
>