static RCP<const Basic> diff(const ATan2 &self, const RCP<const Symbol> &x) { return mul(div(pow(self.get_den(), i2), add(pow(self.get_den(), i2), pow(self.get_num(), i2))), div(self.get_num(), self.get_den())->diff(x)); }
void bvisit(const ATan2 &x) { mpfr_class t(mpfr_get_prec(result_)); apply(t.get_mpfr_t(), *(x.get_num())); apply(result_, *(x.get_den())); mpfr_atan2(result_, t.get_mpfr_t(), result_, rnd_); }