| ESBCot Function |
Unit
QESBPCSMath
Declaration
Function ESBCot(const Angle: Extended): Extended;
| Parameters |
| Angle | Angle in Radians. |
Category
Arithmetic Routines for FloatsImplementation
function ESBCot (const Angle: Extended): Extended;
function FCot (Angle: Extended): Extended;
asm
fld [Angle] // St(0) <- Angle
ffree st(7) // Ensure st(7) is free
fptan // St(1) <- Tan (Angle), St(0) <- 1
fdivrp // St(0) <- St(0)/St(1) which is Cot
fwait
end;
begin
if FloatIsZero (Angle) then
raise EMathError.Create (rsDivideByZero);
if abs (Angle) >= TwoToPower63 then // must be less then 2^63
raise EMathError.Create (rsAngleTooLarge);
Result := FCot (Angle);
End; |
|
|