# How to apply a rule to factors matching a certain form

Suppose we have many expressions involving irrational ArcTan expressions (such as ArcTan[Sqrt,5]) along with other irrational factors (such as 1/Sqrt).

I want to simplify all of these ArcTans. For example, I might want to apply N to them to get their decimal approximation, or I might want to apply Rationalize as in

N@ArcTan[Sqrt, 5]
(* out: 1.23732 *)

Rationalize[ArcTan[Sqrt, 5]/Pi, .0001] Pi
(* out: 13 Pi/33 *)


However, I would like to be able to implement either of these options throughout large expressions involving many ArcTan functions and not act on any other forms.

Simple example would be:

m = 1/Sqrt+ Sqrt ArcTan[Sqrt, 5]


How can I apply a rule or something to m that will allow me to implement one of these types of solutions to the ArcTan but not act on the other irrational factors?

• Something like m /. ArcTan[Times[x_, y_]] :> ArcTan[fff[x], ggg[y]] /; ! Element[x | y, Rationals] may work – Dr. belisarius Mar 12 '14 at 21:56
• It may, but I haven't yet been able to construct fff and ggg correctly to implement it this way. – Steve Mar 13 '14 at 14:29
• For example m = 1/Sqrt + Sqrt ArcTan[Sqrt, 5]; f[u_] := u /. ArcTan[Times[x_, y_]] :> (Rationalize[ArcTan[Times[x, y]]/Pi, .0001] Pi) /; ! Element[x | y, Rationals]; f[m] – Dr. belisarius Mar 13 '14 at 14:48

Providing an m equation:

m = 1/Sqrt+ Sqrt ArcTan[Sqrt, 5]


$\frac{1}{\sqrt{3}}+\sqrt{2} \tan ^{-1}\left(\frac{5}{\sqrt{3}}\right)$

You can implement this type of solution:

f[u_] := u /.
ArcTan[x_ y_] :> π Rationalize[ArcTan[x y]/π, 0.0001];
f[m]


$\frac{13 \pi \sqrt{2}}{33}+\frac{1}{\sqrt{3}}$