MathGroup Archive 2010

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

Search the Archive

Re: Format

  • To: mathgroup at smc.vnet.net
  • Subject: [mg111582] Re: Format
  • From: Ray Koopman <koopman at sfu.ca>
  • Date: Fri, 6 Aug 2010 06:57:04 -0400 (EDT)
  • References: <i3e5i1$h9o$1@smc.vnet.net>

On Aug 5, 3:59 am, Derivator <salc... at ugr.es> wrote:
> Hi. I need some help. The commands
>
> Format[a[x_]]:=f[x,a];
> Format[a[x_,c]]:=a[x];
> Format[b[x_]]:=f[x,b];
> Format[b[x_,c]]:=b[x];
>
> assign a certain format to the symbols a and b, so that the input
>
> {a[1],a[2,c],b[3],b[4,c]}
>
> yields
>
> {f[1,a],f[2,a],f[3,b],f[4,b]}
>
> Now I want to do the same thing for several symbols a,b,.... all at
> once.
> I have tried
>
> list={a,b};
> Do[
> Format[z[x_]]:=f[x,z];
> Format[z[x_,c]]:=z[x];
> ,{z,list}];
>
> but it does not work. The input
>
> {a[1],a[2,c],b[3],b[4,c]}
>
> yields
>
> {f[1,z],z[2],f[3,z],z[4]}
>
> Likewise the following also fails:
>
> list={a,b};
> Format[z_[x_]]:=f[x,z]/;MemberQ[list,z];
> Format[z[x_,c]]:=z[x]/;MemberQ[list,z];
>
> Any suggestions?
> Thanks in advance
>
> L.L.

list = {a,b};
Scan[(Format[#[x_]  ] := f[x,#];
      Format[#[x_,c]] := #[x] )&,list]

{a[1],a[2,c],b[3],b[4,c]}

{f[1,a],f[2,a],f[3,b],f[4,b]}


  • Prev by Date: Nonlinear fitting question
  • Next by Date: ListPlot with PlotStyle->Dashed causes problems
  • Previous by thread: Format
  • Next by thread: Re: Format