Getting g(x) from g(x)*h(y)



Thanks, Richard.

The problem is that I need to separate all y-dependent terms. When the expression
is polynomial, this is no problem, but terms like exp(y) or y*log(y) are.

I am now playing with an iterative loop that uses op(), args() and freeof()
so that I get [-b,x,y,log(y)] and then use freeof to get -b*x and y*log(y)


This problem appears when you try to solve the determining equations to get a lie algebra
of a nonlinear ode. In general for f : g(x)*h(y), g(x) contains derivatives like a'(x) whose solution
gives the coefficients of the symmetry generators.
So when f : a''(x)*y*log(y) + a'(x)*y - y , then I get a''(x)=0 and a'(x)-1=0 -> a(x)=%c1*x+%c2.

each different g(y) term produces an equation (ode or algebraic) that needs to be solved.  

When you have the symmetry generators, it is then possible (but not guaranteed) to solve
the nonlinear ode.


Nijso



-----Original Message-----
From: Richard Hennessy [mailto:rvh2007 at comcast.net]
Sent: Sat 11/8/2008 11:32 PM
To: Beishuizen, N.A. (CTW); maxima at math.utexas.edu
Subject: Re: [Maxima] Getting g(x) from g(x)*h(y)
 
"I want to obtain a list of the coefficient before 'the term that depends on y', so I want as a result:

[a, -b*x, c, d]"


I can get this.

f:a*y*log(y) - b*x*y^2 + c*y + d$

makelist(ratcoeff(f,y,i), i,0,2);

>- [d,a*log(y)+c,-b*x]

Hope this helps. 

Rich