MathGroup Archive 2009

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

Search the Archive

Re: patterns

  • To: mathgroup at smc.vnet.net
  • Subject: [mg101916] Re: patterns
  • From: Ray Koopman <koopman at sfu.ca>
  • Date: Wed, 22 Jul 2009 06:24:42 -0400 (EDT)
  • References: <h41f5m$rin$1@smc.vnet.net>

This works fine without Verbatim or HoldPattern:

In[1]:= result = {11.2,
        {dUp[1]->0., dUp[2]->0., dUp[3]->0., dUp[4]->2.1,dUp[5]->0.,
         dUm[1]->0., dUm[2]->2.6,dUm[3]->0.5,dUm[4]->0., dUm[5]->0.,
         dLp[1]->0., dLp[2]->0., dLp[3]->0., dLp[4]->1.4,dLp[5]->0.,
         dLm[1]->0., dLm[2]->3.1,dLm[3]->1.5,dLm[4]->0., dLm[5]->0.,
         a[1]->6.75, a[2]->1.25, c[1]->1.65, c[2]->0.15}};

In[2]:= Cases[result[[2]], Rule_[(a|c)[_],_] ]

Out[2]= {a[1]->6.75, a[2]->1.25, c[1]->1.65, c[2]->0.15}

On Jul 20, 2:59 am, Francisco Gutierrez <fgutiers2... at yahoo.com>
wrote:
> Dear Group:
> Ther output of a code I made (which includes a minimization) is of the following guise:
>
> {11.2,{dUp[1]->0.,dUp[2]->0.,dUp[3]->0.,dUp[4]->2.1,dUp[5]->0.,dUm[1]->0. ,dUm[2]->2.6,dUm[3]->0.5,dUm[4]->0.,dUm[5]->0.,dLp[1]->0.,dLp[2]->0.,dLp[3]->0.,dLp[4]->1.4,dLp[5]->0.,dLm[1]->0.,dLm[2]->3.1,dLm[3]->1.5,dLm[4]->0.,dLm[5]->0.,a[1]->6.75,a[2]->1.25,c[1]->1.65,c[2]->0.15}}
>
> Of this output, I want to capture only the a's and the c's. There is an easy and sloppy manner, but general and I think not slow, to do this because they appear always at the end of the output. But I wonder if it were possible to use pattern matching to make the same thing, something of the sort of Cases[myoutput, a[__]]. Is it possible? How can it be done?
> Thanks
> Francisco


  • Prev by Date: Clearer code
  • Next by Date: Converting ANSO ISO Decimal BASIC to Mathematica 7
  • Previous by thread: Re: patterns
  • Next by thread: Re: patterns