Question: How do I expand f(x,V(g(x))) in terms of x?

I have a collection of functions defined either in terms of a single variable - call it r - or in terms of (r and) the other functions of r.

To be more specific, there are two free functions B(r) and N(r), a function theta defined in terms of N(r) and B(r) (and their derivatives) and r, and a free function V(theta).

Finally I have a function, call it f, written in terms of B(r) and N(r) (and their derivatives), r, and V(theta) and its derivatives with respect to both theta and r.

I want to series expand f around r=0 in terms of B(0), B'(0), N(0), N'(0), etc., and derivatives of V with respect to theta (rather than r). Unfortunately what usually happens is when I series expand f using e.g. series(f(r),r,3) I'll get terms that look like

(D[1](diff(V(theta), theta)))(0, t)*N(0)^2*B(0)^3

(0,t) refers to (r,t) evaluated at r=0 since I'm expanding in r. t is just a coordinate which none of the functions actually depend on.

Since theta is written in terms of B(r) and N(r) (and their derivatives) I can also expand that in terms of N(0), B(0), D(B)(0), etc., and similarly I could expand V(theta) in terms of those and dV/dtheta (and I could expand dV/dtheta similarly, since dV/dtheta is what actually appears in the expansion of f), but those expansions don't get substituted in when I do the expansion for f, rather I just get unevaluated terms. How do I do the full series expansion of f(r) in Maple?

To reiterate, I want to express a series for f(r) including terms like the one above in terms purely of B(0), D(B)(0), N(0), D(N)(0), etc., and derivatives of V with respect to theta (rather than with respect to r). Hope that makes sense. Thanks for any help!

Please Wait...