'''Purpose:''' Explain the math function '''atan'''. ---- The call, [expr { atan( $x ) }] returns the arcus tangent (inverse tangent) of the number, $x. The resulting angle is measured in radians. ---- The most common reason for computing an arctangent is to determine the angle from the positive x-axis to a vector in the plane, but for that purpose it is much better to use [atan2]. Consider the point (x,y) = (-1,1). The angle to this point is 3/4*pi and the tangent for this vector is -1, but % expr atan(-1) -0.785398 i.e., the angle -1/4*pi, on account on the fact that this angle also has tangent -1. [atan2] can distinguish the two: % expr atan2(1,-1) 2.35619 % expr atan2(-1,1) -0.785398 ---- atan provides a handy way to ask Tcl for the value of pi: See [pi] % expr {atan(1) * 4} 3.1415926535897931 Actually, using acos() is (slightly) more efficient: % set tcl_precision 17 17 % expr {acos(-1)} 3.1415926535897931 ''Does anyone have any data on which method is preferable from a numerical point of view?'' [IDG] Both contain the assumption that the transcendental functions are accurate to the last ulp. In many math libraries this is not so. I think you are safer with a string representation set pi 3.1415926535897931 ---- atan is also available in [Tclx]. ---- [Math function help] - [Arts and Crafts of Tcl-Tk Programming] - [Category Mathematics]