- unsigned result = 0;
- symbol x("x"), y("y"), a("a"), b("b");
- ex e1, e2, e, d;
-
- // test atan2
- e1 = y*pow(x, 2) + a*x + b;
- e2 = x*pow(y, 2) + b*y + a;
- e = atan2(e1,e2);
- /*
- d = pow(y,2)*(-b-y*pow(x,2)-a*x)/(pow(b+y*pow(x,2)+a*x,2)+pow(x*pow(y,2)+b*y+a,2))
- +(2*y*x+a)/((x*pow(y,2)+b*y+a)*(1+pow(b*y*pow(x,2)+a*x,2)/pow(x*pow(y,2)+b*y+a,2)));
- */
- /*
- d = ((a+2*y*x)*pow(y*b+pow(y,2)*x+a,-1)-(a*x+b+y*pow(x,2))*
- pow(y*b+pow(y,2)*x+a,-2)*pow(y,2))*
- pow(1+pow(a*x+b+y*pow(x,2),2)*pow(y*b+pow(y,2)*x+a,-2),-1);
- */
- /*
- d = pow(1+pow(a*x+b+y*pow(x,2),2)*pow(y*b+pow(y,2)*x+a,-2),-1)
- *pow(y*b+pow(y,2)*x+a,-1)*(a+2*y*x)
- +pow(y,2)*(-a*x-b-y*pow(x,2))*
- pow(pow(y*b+pow(y,2)*x+a,2)+pow(a*x+b+y*pow(x,2),2),-1);
- */
- d = pow(y,2)*pow(pow(b+y*pow(x,2)+x*a,2)+pow(y*b+pow(y,2)*x+a,2),-1)*
- (-b-y*pow(x,2)-x*a)+
- pow(pow(b+y*pow(x,2)+x*a,2)+pow(y*b+pow(y,2)*x+a,2),-1)*
- (y*b+pow(y,2)*x+a)*(2*y*x+a);
- result += check_diff(e, x, d);
-
- return result;
+ unsigned result = 0;
+ symbol x("x"), y("y"), a("a"), b("b");
+ ex e1, e2, e, d;
+
+ // test atan2
+ e1 = y*pow(x, 2) + a*x + b;
+ e2 = x*pow(y, 2) + b*y + a;
+ e = atan2(e1,e2);
+
+ d = pow(y,2)*pow(pow(b+y*pow(x,2)+x*a,2)+pow(y*b+pow(y,2)*x+a,2),-1)*
+ (-b-y*pow(x,2)-x*a)
+ +pow(pow(b+y*pow(x,2)+x*a,2)+pow(y*b+pow(y,2)*x+a,2),-1)*
+ (y*b+pow(y,2)*x+a)*(2*y*x+a);
+ result += check_diff(e, x, d);
+
+ return result;