An intermediate step in my analysis requires me to work in polar coordinates, but I would like to convert the results back into cartesian coordinates. The conversion is very simple but tedious for complex expressions. I expected to use substitutions, but it isn't panning out for me
polarf[{r_, phi_}] := r^6 Sin[phi]^2 Cos[phi]^2
cartesianf[{k1_, k2_}] :=
polarf[{r, phi}] /. r^2 Sin[phi]^2 -> k2^2 /.
r^2 Cos[phi]^2 -> k1^2 /. r^2 -> k1^2 + k2^2
cartesianf[{k1, k2}]
gives me back my original expression:
r^6 Cos[phi]^2 Sin[phi]^2
I'm pretty sure there is a way to get Mathematica to spit out
(k1^2 + k2^2) k1^2 k2^2
or something similar. But how? My searches of Google, Mathematica documentation, and this site have not turned up an answer.

CoordinatesToCartesianandCoordinatesFromCartesian? – VLC Oct 2 '12 at 16:05cartesianf[{k1_,k2_}] := polarf[{Sqrt[k1^2+k2^2],ArcTan[k1,k2]}](however you then need aFullSimplifyto arrive at the form you want:FullSimplify[cartesianf[{k1,k2}]]) – celtschk Oct 2 '12 at 16:14phi, then ofr:polarf[{r, phi}] /. { Cos[phi] -> k1/r, Sin[phi] -> k2/r } /. { r -> Sqrt[k1^2+k2^2] }. Then you also don't needFullSimplify. – celtschk Oct 2 '12 at 16:18