MathGroup Archive 2012

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

Search the Archive

Re: Simplification de formule/ Simplification of formula

  • To: mathgroup at smc.vnet.net
  • Subject: [mg124422] Re: Simplification de formule/ Simplification of formula
  • From: "Dr. Wolfgang Hintze" <weh at snafu.de>
  • Date: Thu, 19 Jan 2012 05:10:38 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <jf696v$gdp$1@smc.vnet.net>

> I want to simplify this formula :

This is obviously a good idea and a good excercise if it comes to 
obtaining an overview over a confusing looking expression.

You cannot expect fully automatic simplification, since it was not 
clearly stated which should be the desired form.
So it will be a dialog between you and Mathematica.

I suggest to first to make some replacements to get better readability 
(you can undo them in the end).
Then recognising the structure by eye it will almost become obvious 
which commands to choose.

Ok, let's do it!

1) Let your expression be

x = -((DK*Pv2*Cos[a2 - alpha3]*Cos[aV2]*Sin[a2 - aV2])/(DK*Cos[a2 - 
alpha3] - KF*Sin[a2 - alpha3])) +
(KF*Pv2*Cos[aV2]*Sin[a2 - alpha3]*Sin[a2 - aV2])/(DK*Cos[a2 - alpha3] - 
KF*Sin[a2 - alpha3]) -
(DG3*P3*Sin[alpha3]*Sin[a2 - aV2])/(DK*Cos[a2 - alpha3] - KF*Sin[a2 - 
alpha3]) - (DK*FV2*Pv2*Cos[a2 - alpha3]*Cos[a2 - aV2]*Sin[aV2])/
(L2*(DK*Cos[a2 - alpha3] - KF*Sin[a2 - alpha3])) + (FV2*KF*Pv2*Cos[a2 - 
aV2]*Sin[a2 - alpha3]*Sin[aV2])/
(L2*(DK*Cos[a2 - alpha3] - KF*Sin[a2 - alpha3])) - (KF*Pv2*Cos[a2 - 
alpha3]*Sin[a2 - aV2]*Sin[aV2])/(DK*Cos[a2 - alpha3] - KF*Sin[a2 - 
alpha3]) +
(FV2*KF*Pv2*Cos[a2 - alpha3]*Sin[a2 - aV2]*Sin[aV2])/(L2*(DK*Cos[a2 - 
alpha3] - KF*Sin[a2 - alpha3])) -
(DK*Pv2*Sin[a2 - alpha3]*Sin[a2 - aV2]*Sin[aV2])/(DK*Cos[a2 - alpha3] - 
KF*Sin[a2 - alpha3]) + (DK*FV2*Pv2*Sin[a2 - alpha3]*Sin[a2 - 
aV2]*Sin[aV2])/
(L2*(DK*Cos[a2 - alpha3] - KF*Sin[a2 - alpha3]))

2) Replacements

x1 =  x /. {a2 -> a, alpha3 -> b, aV2 -> c, DK -> A, Pv2 -> B, KF -> U, 
DG3 -> V, P3 -> W, FV2 -> X, L2 -> Y}

-((A*B*Cos[a - b]*Cos[c]*Sin[a - c])/(A*Cos[a - b] - U*Sin[a - b])) + 
(B*U*Cos[c]*Sin[a - b]*Sin[a - c])/(A*Cos[a - b] - U*Sin[a - b]) -
(V*W*Sin[b]*Sin[a - c])/(A*Cos[a - b] - U*Sin[a - b]) - (A*B*X*Cos[a - 
b]*Cos[a - c]*Sin[c])/(Y*(A*Cos[a - b] - U*Sin[a - b])) +
(B*U*X*Cos[a - c]*Sin[a - b]*Sin[c])/(Y*(A*Cos[a - b] - U*Sin[a - 
b])) - (B*U*Cos[a - b]*Sin[a - c]*Sin[c])/(A*Cos[a - b] - U*Sin[a - b]) 
+
(B*U*X*Cos[a - b]*Sin[a - c]*Sin[c])/(Y*(A*Cos[a - b] - U*Sin[a - 
b])) - (A*B*Sin[a - b]*Sin[a - c]*Sin[c])/(A*Cos[a - b] - U*Sin[a - b]) 
+
(A*B*X*Sin[a - b]*Sin[a - c]*Sin[c])/(Y*(A*Cos[a - b] - U*Sin[a - b]))

By the way, this expression looks much nicer in Mathematica than in 
this mail here.

3) Seeing the common denominator we tell Mathematica to extract it
x2 = Collect[x1, A*Cos[a - b] - U*Sin[a - b]]

(1/(A*Cos[a - b] - U*Sin[a - b]))*((-A)*B*Cos[a - b]*Cos[c]*Sin[a - c] 
+ B*U*Cos[c]*Sin[a - b]*Sin[a - c] - V*W*Sin[b]*Sin[a - c] -
(A*B*X*Cos[a - b]*Cos[a - c]*Sin[c])/Y + (B*U*X*Cos[a - c]*Sin[a - 
b]*Sin[c])/Y - B*U*Cos[a - b]*Sin[a - c]*Sin[c] +
(B*U*X*Cos[a - b]*Sin[a - c]*Sin[c])/Y - A*B*Sin[a - b]*Sin[a - 
c]*Sin[c] + (A*B*X*Sin[a - b]*Sin[a - c]*Sin[c])/Y)

Again this expression looks much nicer in Mathematica than in this mail 
here.

4) Trying to extrax 1/Y using collect didn't improve things so we try a 
Simplify in the end

x3 = Simplify[x2]

-((1/(2*Y*(A*Cos[a - b] - U*Sin[a - b])))*(B*U*X*Cos[2*a - b] - 
B*U*Y*Cos[b] - B*U*X*Cos[2*a - b - 2*c] + B*U*Y*Cos[2*a - b - 2*c] + 
V*W*Y*Cos[a - b - c] -
V*W*Y*Cos[a + b - c] + A*B*X*Sin[2*a - b] + A*B*Y*Sin[b] - 
A*B*X*Sin[2*a - b - 2*c] + A*B*Y*Sin[2*a - b - 2*c]))

This seems to be a rather good result:

- one common denominator extracted
- all terms in the big bracket have the same structure A*B*C Trig[...]
- angles collected under the Trigfunctions

PS: here is a little additional exercise: how would you invert the 
replacements 2) efficiently?

Hope this helps
Best regards,
Wolfgang


"Nicolas Simon" <nicodumonastal at gmail.com> schrieb im Newsbeitrag 
news:jf696v$gdp$1 at smc.vnet.net...
>
> Hi !
>
> I want to simplify this formula :
>
> -((DK Pv2 Cos[a2 - alpha3] Cos[aV2] Sin[a2 - aV2])/(
>  DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3])) + (
> KF Pv2 Cos[aV2] Sin[a2 - alpha3] Sin[a2 - aV2])/(
> DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3]) - (
> DG3 P3 Sin[alpha3] Sin[a2 - aV2])/(
> DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3]) - (
> DK FV2 Pv2 Cos[a2 - alpha3] Cos[a2 - aV2] Sin[aV2])/(
> L2 (DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3])) + (
> FV2 KF Pv2 Cos[a2 - aV2] Sin[a2 - alpha3] Sin[aV2])/(
> L2 (DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3])) - (
> KF Pv2 Cos[a2 - alpha3] Sin[a2 - aV2] Sin[aV2])/(
> DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3]) + (
> FV2 KF Pv2 Cos[a2 - alpha3] Sin[a2 - aV2] Sin[aV2])/(
> L2 (DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3])) - (
> DK Pv2 Sin[a2 - alpha3] Sin[a2 - aV2] Sin[aV2])/(
> DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3]) + (
> DK FV2 Pv2 Sin[a2 - alpha3] Sin[a2 - aV2] Sin[aV2])/(
> L2 (DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3])).
>
> By manually regrouping the terms, the denominator disappears for a
> large number of fraction but I'm not able to reproduce this result
> with Simplify or others Mathematica tools to handle formula. Any
> suggestion of how I could do that with Mathematica ?
> Thank you for your help !
>
>
>
>
>
>
>
>
>
> Bonjour,
>
> Je souhaite simplifier cette formule :
>
> -((DK Pv2 Cos[a2 - alpha3] Cos[aV2] Sin[a2 - aV2])/(
>  DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3])) + (
> KF Pv2 Cos[aV2] Sin[a2 - alpha3] Sin[a2 - aV2])/(
> DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3]) - (
> DG3 P3 Sin[alpha3] Sin[a2 - aV2])/(
> DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3]) - (
> DK FV2 Pv2 Cos[a2 - alpha3] Cos[a2 - aV2] Sin[aV2])/(
> L2 (DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3])) + (
> FV2 KF Pv2 Cos[a2 - aV2] Sin[a2 - alpha3] Sin[aV2])/(
> L2 (DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3])) - (
> KF Pv2 Cos[a2 - alpha3] Sin[a2 - aV2] Sin[aV2])/(
> DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3]) + (
> FV2 KF Pv2 Cos[a2 - alpha3] Sin[a2 - aV2] Sin[aV2])/(
> L2 (DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3])) - (
> DK Pv2 Sin[a2 - alpha3] Sin[a2 - aV2] Sin[aV2])/(
> DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3]) + (
> DK FV2 Pv2 Sin[a2 - alpha3] Sin[a2 - aV2] Sin[aV2])/(
> L2 (DK Cos[a2 - alpha3] - KF Sin[a2 - alpha3])).
>
> En regroupant les bons termes le d=E9nominateur se simplifie pour un
> grand nombres de fractions mais je n'arrive pas a ce r=E9sultat avec 
> les
> outils de simplification (FullSimplify ou Simplify) ou les outils de
> manipulations de formule. Est ce que vous auriez une id=E9e de 
> comment
> faire comme pr=E9ciser certains "assumption" dans Simplify ?
> Merci de votre aide.
> 




  • Prev by Date: Re: Simplification de formule/ Simplification of formula
  • Next by Date: Re: without individual scaling?
  • Previous by thread: Re: Simplification de formule/ Simplification of formula
  • Next by thread: Re: Simplification de formule/ Simplification of formula