Dew MtxVec NET
TMtxVec.FixAngle Methods
Summary
Sets angle in [-2p,2p].

Class
TMtxVec

Declaration
Function FixAngle: TMtxVec;
Result
ThetaRad within [-2p,2p] interval. Calling this function prior to passing the value to trigonometric functions can significantly improve numerical accuracy. For arguments larger than 10000, the computation of sine/cosine is speeded up by about 10x for SSE2/SSE3. The performance gains for classic FPU math are also significant. The cost of this function call is approx 30% of the cost of the sine function.

It is important to mention that the sine/cosine appear within many other functions especially complex versions of trigonometric functions. FixAngle method is never used implicitely within TMtxVec methods. To achieve maximum performance make sure that the arguments passed to complex trigonometric functions are "small" or scaled down.

The vector must be real.



Declaration
Function FixAngle(Src: TMtxVec; SrcIndex, Index, Len: integer): TMtxVec;

Description
Sets angle in [-2p,2p] for Src elements [SrcIndex]..[SrcIndex+Len-1] and store the results in the calling object elements [Index]..[Index+Len-1]. Size and Complex properties of the calling object must be set explicitly. An exception is raised if ConditionCheck is True and array borders are overrun.
Declaration
Function FixAngle(Src: TMtxVec): TMtxVec;

Description
Sets angle in [-2p,2p] for all Src elements and store the results in the calling object. Size and Complex properties of the calling vector are set implicitly to match the Src object.
Declaration
Function FixAngle(Index, Len: integer): TMtxVec;

Description
FixAngle for calling object complex elements [Index]..[Index+Len-1] in-place. An exception is raised if calling object Complex property is True or if array borders are overrun/underrun.

Copyright 2008 Dew Research
http://www.dewresearch.com