TVec.Sign Method

Overload List

#SignatureDescription
1TMtxVec SignChanges elements sign.
└ indexed: TMtxVec Sign(Int32 Index, Int32 Len)
2TMtxVec Sign(TMtxVec X)Change all X object elements sign.
└ indexed: TMtxVec Sign(TMtxVec X, Int32 XIndex, Int32 Index, Int32 Len)

Overload 1: TMtxVec Sign

Changes elements sign.

Result: stored in self (calling object), returns self for chaining

Remarks:

Changes all calling object elements sign (v -> -v) in-place.

Examples
Vector a = new Vector();
a.SetIt(new double[] { -3.0, -1.0, 1.0, 2.0 });
a.Sign();
Vector expected = new Vector();
expected.SetIt(new double[] { 3.0, 1.0, -1.0, -2.0 });
if (!a.IsEqual(expected, 1e-10, TCompare.cmpAbsolute))
    throw new Exception("Vector.Sign: mismatch");
Vector a;
a.SetIt(false,new double[] {1,2,-3,4});
a.Sign; // a = new double[] {-1,-2,3,-4}

Indexed: TMtxVec Sign(Int32 Index, Int32 Len)

Change calling object elements [Index]..[Index+Len-1] sign in-place.

#NameTypeDescription
1IndexInt32start index
2LenInt32element count

Result: stored in self (calling object), returns self for chaining

Remarks:

An exception is raised if array borders are overrun or underrun.

Overload 2: TMtxVec Sign(TMtxVec X)

Change all X object elements sign.

#NameTypeDescription
1XTMtxVecsource TVec or TMtx

Result: stored in self (calling object), returns self for chaining

Remarks:

Store the results in calling object. Size and Dew.Math.TMtxVec.Complex properties of calling object are adjusted automatically.

Examples
Vector a = new Vector();
Vector x = new Vector();
x.SetIt(new double[] { -3.0, -1.0, 1.0, 2.0 });
a.Sign(x);
Vector expected = new Vector();
expected.SetIt(new double[] { 3.0, 1.0, -1.0, -2.0 });
if (!a.IsEqual(expected, 1e-10, TCompare.cmpAbsolute))
    throw new Exception("Vector.Sign: mismatch");

Indexed: TMtxVec Sign(TMtxVec X, Int32 XIndex, Int32 Index, Int32 Len)

Change X object elements [XIndex]..[XIndex+Len-1] sign.

#NameTypeDescription
1XTMtxVecsource TVec or TMtx
2XIndexInt32X start index
3IndexInt32start index
4LenInt32element count

Result: stored in self (calling object), returns self for chaining

Remarks:

Store the results in callingobject elements [Index]..[Index+Len-1]. An exception is raised if array borders are overrun or underrun.