sub p2r { (my $r, my $theta) = @_; return ($r * cos($theta), $r * sin($theta)); # (x,y) } sub r2p { (my $x, my $y) = @_; my $theta = atan2($y, $x); my $r = ($x **2 + $y **2) ** (0.5); return ($r, $theta); }