Re: How do I create a parametric expression?

• To: mathgroup at smc.vnet.net
• Subject: [mg68580] Re: How do I create a parametric expression?
• From: "Chris Chiasson" <chris at chiasson.name>
• Date: Wed, 9 Aug 2006 23:57:48 -0400 (EDT)
• References: <200608090819.EAA21141@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

expr=Hold[-((1+2*n)*((a^4*k^2+a^2*(-1+k^2*(q-z)^2)+2*(q-z)^2)*
Cos[k*Sqrt[a^2+(q-z)^2]]-
k*(a^2-2*(q-z)^2)*Sqrt[a^2+(q-z)^2]*Sin[k*Sqrt[a^2+(q-z)^2]])*
Sin[((1+2*n)*Pi*z)/L])/(8*Pi*w*(a^2+(q-z)^2)^(5/2))]

Fold[ReplaceAll,expr,{q-z->RA,a^2+RA^2->RB,HoldPattern[Sqrt[RB]]->RC}]

On 8/9/06, axlq <axlq at spamcop.net> wrote:
>
> I'm trying to figure out how to simplify a large expression so that it's
> expressed in terms of a sub-expression that's factored into the larger
> one.
>
> My expression looks like this:
>
> -((1 + 2*n)*((a^4*k^2 + a^2*(-1 + k^2*(q - z)^2) + 2*(q - z)^2)
>    *Cos[k*Sqrt[a^2 + (q - z)^2]] - k*(a^2 - 2*(q - z)^2)
>      *Sqrt[a^2 + (q - z)^2]*Sin[k*Sqrt[a^2 + (q - z)^2]])
>        *Sin[((1 + 2*n)*Pi*z)/L])/(8*Pi*w*(a^2 + (q - z)^2)^(5/2))
>
> Now, I *know* there are places in there were Sqrt[a^2+(q-z)^2] occurs,
> either by itself or raised to various powers.  If I want to define
>
> R:=Sqrt[a^2+(q-z)^2]
>
> ...then how can I make Mathematica re-state my expression in terms
> of R?  The ReplaceRepated[] function doesn't seem to do the job.
>
> I need to do this because I am translating the expressions into
> Visual Basic code for an Excel application, and it would be nice to
> find groupings of terms repeated throughout the expression that I
> need to calculate only once.
>
> -Alex
>
>

--
http://chris.chiasson.name/

• Prev by Date: Re: Multiplying Elements of arrays: Inner product
• Next by Date: RE: How do I create a parametric expression?
• Previous by thread: How do I create a parametric expression?
• Next by thread: Re: How do I create a parametric expression?