[Newbie:] How to discard higher orders of variables?
Subject: [Newbie:] How to discard higher orders of variables?
From: Daniel Lakeland
Date: Wed, 11 Jul 2007 19:17:40 -0700
On Wed, Jul 11, 2007 at 09:54:23PM -0400, Stavros Macrakis wrote:
> Another technique to consider for multiple variables <<1 is
>
> taylor( ..., [x,y,z], 0, 5)
>
> which truncates at terms beyond x^a*y^b*z^c where a+b+c > 5
Good thought. In fact here's some interesting results from the
original problem:
(%i23) det : determinant(Q);
(%o23) (kappa^2-Omega^2)*((1-nu)*(3*beta^2+1)*kappa^2/2-Omega^2)
*(-Omega^2+beta^2*(kappa^4+1)+1)
-(-beta^2*kappa^3-nu*kappa)^2*((1-nu)*(3*beta^2+1)*kappa^2/2-Omega^2)
(%i24) factor(det);
(%o24) -(2*Omega^2+3*nu*beta^2*kappa^2-3*beta^2*kappa^2+nu*kappa^2-kappa^2)
*(Omega^4-beta^2*kappa^4*Omega^2-kappa^2*Omega^2-beta^2*Omega^2
-Omega^2-beta^4*kappa^6+beta^2*kappa^6-2*nu*beta^2*kappa^4
+beta^2*kappa^2-nu^2*kappa^2+kappa^2)
/2
/* So det is a product of two factors... let's take it apart and solve
each one seperately*/
(%i25) pickapart(%,3);
(%t25) 2*Omega^2+3*nu*beta^2*kappa^2-3*beta^2*kappa^2+nu*kappa^2-kappa^2
(%t26) Omega^4-beta^2*kappa^4*Omega^2-kappa^2*Omega^2-beta^2*Omega^2-Omega^2
-beta^4*kappa^6+beta^2*kappa^6-2*nu*beta^2*kappa^4
+beta^2*kappa^2-nu^2*kappa^2+kappa^2
(%o26) -%t25*%t26/2
(%i27) solve(%t25,kappa);
(%o27) [kappa = -sqrt(2)*Omega/(sqrt(1-nu)*sqrt(3*beta^2+1)),
kappa = sqrt(2)*Omega/(sqrt(1-nu)*sqrt(3*beta^2+1))]
/* These are the simplest expressions for kappa that solve the
determinant equation and come from the first factor, we know we can
get several more solutions, but that they are extremely long, so
instead lets use a taylor expansion of the remaining factor*/
(%i29) taylor(%t26,[kappa,Omega,beta],0,4);
(%o29) -Omega^2+(-nu^2+1)*kappa^2+((-Omega^2+beta^2)*kappa^2
+Omega^4-beta^2*Omega^2)
(%i30) solve(%,kappa);
(%o30) [kappa = -Omega*sqrt(Omega^2/(Omega^2-beta^2+nu^2-1)
-beta^2/(Omega^2-beta^2+nu^2-1)
-1/(Omega^2-beta^2+nu^2-1)),
kappa = Omega*sqrt(Omega^2/(Omega^2-beta^2+nu^2-1)
-beta^2/(Omega^2-beta^2+nu^2-1)
-1/(Omega^2-beta^2+nu^2-1))]
/* These are two approximate solutions for kappa based on a truncated
taylor series, so long as kappa, Omega, and beta are all relatively
small, these should be close to the correct value. Let's simplify this.*/
ratsimp(%o30);
(%o45) [kappa = -Omega*sqrt((Omega^2-beta^2-1)/(Omega^2-beta^2+nu^2-1)),
kappa = Omega*sqrt((Omega^2-beta^2-1)/(Omega^2-beta^2+nu^2-1))]
So the 4 approximate expressions for kappa are:
append(%o27,%o45);
(%o46) [kappa = -sqrt(2)*Omega/(sqrt(1-nu)*sqrt(3*beta^2+1)),
kappa = sqrt(2)*Omega/(sqrt(1-nu)*sqrt(3*beta^2+1)),
kappa = -Omega*sqrt((Omega^2-beta^2-1)/(Omega^2-beta^2+nu^2-1)),
kappa = Omega*sqrt((Omega^2-beta^2-1)/(Omega^2-beta^2+nu^2-1))]
Dunno if those help, but the process was sufficiently entertaining,
and hopefully informative for some readers :-)
--
Daniel Lakeland
dlakelan at street-artists.org
http://www.street-artists.org/~dlakelan