RE: How do I create a parametric expression?
- To: mathgroup at smc.vnet.net
- Subject: [mg68575] RE: How do I create a parametric expression?
- From: "David Park" <djmp at earthlink.net>
- Date: Wed, 9 Aug 2006 23:57:35 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Alex,
You could do something like the following.
expr =
-((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));
expr /. (q - z)^2 -> r^2 - a^2
FullSimplify[%, r > 0]
% /. r -> Sqrt[a^2 + (q - z)^2]
Simplify[%, a < 0]
I don't know if you can assume that r > 0. You will probably get a better
answer from the algebraists in the group.
David Park
djmp at earthlink.net
http://home.earthlink.net/~djmp/
From: axlq [mailto:axlq at spamcop.net]
To: mathgroup at smc.vnet.net
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