Question: convert(ode,...) and PDEtools[dchange] disagree...

I converted an ode using the built-in "convert" tool to check some calculations I had done by hand. To my surprise, there was an inconsistency. I converted the ode using PDEtools[dchange], reproducing the steps I had followed manually, and they checked out. So my question is: is there a sign error in convert? (and therefore a bug) or are both conversions correct, and if so are there any lessons to be learned? (is it related to the equation's symmetries?)

Thanks for your comments.

Below is an illustration.

ode := (a+1-y(a))*diff(y(a),a) = y(a)^2/a-y(a);

### Using convert
ode_converted := convert(ode,FirstKind,keep);

### using PDEtools[dchange]

tr := {y(a) = a+1-1/u(a)};
PDEtools[dchange](tr,ode,[u]);
diff(u(a),a) = expand(solve(%,diff(u(a),a)));
ode_transformed:= collect(%,u);


 

The odes differ only by the sign in front of the coefficient of the squared term, the other coefficients are identical.

Please Wait...