Represents a ComplexVector that has one or more zero components at the beginning and/or at the end.

Namespace: Extreme.Mathematics.LinearAlgebra.Complex
Assembly: Extreme.Numerics (Extreme.Numerics)

Syntax

Visual Basic (Declaration)
Public NotInheritable Class ComplexBandVector _
	Inherits ComplexVector _
	Implements ICloneable, IEnumerable, ISerializable
C#
public sealed class ComplexBandVector : ComplexVector, ICloneable, IEnumerable, ISerializable
C++
public ref class ComplexBandVector sealed : public ComplexVector, ICloneable, IEnumerable, ISerializable

Methods

IconTypeDescription
AbsoluteMax()
Returns the value of the component in this instance that has the largest absolute value.
AbsoluteMaxIndex()
Returns the index of the component in this instance that has the largest absolute value.
AbsoluteMin()
Returns the value of the component in this instance that has the smallest absolute value.
AbsoluteMinIndex()
Returns the index of the component in this instance that has the smallest absolute value.
Add(DoubleComplex, ComplexVector)
Adds a scaled vector to this instance.
Add(ComplexVector)
Adds another ComplexVector to this ComplexVector.
Add(ComplexMatrix, ComplexVector)
Adds the product of a ComplexMatrix and a ComplexVector to this ComplexVector.
Add(DoubleComplex, ComplexMatrix, ComplexVector)
Adds the scaled product of a ComplexMatrix and a ComplexVector to this ComplexVector.
Apply(ComplexFunction)
Applies a function to the writeable elements of a ComplexVector.
Clone(CloningMethod)
Makes a copy of this instance using the specified method.
CloneData()
Gives this instance its own copy of its elements.
ComponentwiseDivide(ComplexVector)
Divides the components of this instance by the corresponding components of another vector.
ComponentwiseMultiply(ComplexVector)
Multiplies the components of this instance by the corresponding components of another vector.
Conjugate()
Returns a ComplexVector whose components are the complex conjugate of this vector's components.
CopyTo(ComplexVector, Int32)
Copies the components of this instance to another ComplexVector starting at the specified position.
CopyTo(DoubleComplex[]())
Copies the components of this instance to another vector.
CopyTo(ComplexVector)
Copies the components of this ComplexVector to another vector.
DotProduct(ComplexVector)
Returns the dot product of this vector with another vector.
Equals(Object)
Determines whether the specified Object is equal to the current ComplexVector.
Finalize()
Allows an Object to attempt to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection.
GetComponents()
Gets the components of the ComplexBandVector.
GetEnumerator()
Returns an IEnumerator instance for this ComplexBandVector.
GetHashCode()
Returns the hash code for this instance.
GetImaginaryPart()
Returns a real vector containing the imaginary components of the vector.
GetObjectData(SerializationInfo, StreamingContext)
Populates a SerializationInfo with the data needed to serialize the target object.
GetRealPart()
Returns a real vector containing the real components of the vector.
GetSubvector(Int32, Int32, Int32)
Returns a vector whose components are a subset of the components of this instance
GetSubvector(Range)
Returns a vector whose components are a subset of the components of this instance
GetSubvector(Int32, Int32)
Returns a vector whose components are a subset of the components of this instance
GetType()
Gets the Type of the current instance.
GetValue(Int32)
Gets the vector component at the specified position.
IsComponentWritable(Int32)
Returns a value that indicates whether the value of the component at the specified index can be changed.
MemberwiseClone()
Creates a shallow copy of the current Object.
Multiply(DoubleComplex)
Multiplies a vector by a given factor.
Multiply(ComplexMatrix)
Adds the scaled product of a ComplexMatrix and a ComplexVector to this ComplexVector.
Multiply(ComplexMatrix, MatrixOperationSide)
Multiplies a ComplexVector by a ComplexMatrix.
Norm()
Returns the two-norm of the ComplexVector.
Norm(Int32)
Returns the norm of the specified order of this ComplexVector.
Norm(Double)
Returns the norm of the specified order of this ComplexVector.
Normalize()
Scales the ComplexVector to make its two-norm equal to one.
NormInternal(Int32)
Returns the norm of the specified order of this instance.
NormInternal(Double)
Returns the norm of the specified order of this instance.
NormSquared()
Returns the square of the two-norm of this ComplexVector.
OneNorm()
Returns the one-norm of this instance.
SetValue(DoubleComplex, Int32)
Sets the vector component at the specified position to the specified value.
SetValue(DoubleComplex)
Sets all the writeable components of this instance to the specified value.
ShallowCopy()
Makes a shallow copy of this ComplexVector.
Subtract(ComplexVector)
Subtracts another ComplexVector from this ComplexVector.
Subtract(ComplexMatrix, ComplexVector)
Subtracts the product of a ComplexMatrix and a ComplexVector from this ComplexVector.
static memberSwap(ComplexBandVector, ComplexBandVector)
Swaps the elements of two vectors.
SwapElements(Int32, Int32)
Exchanges two elements of the vector.
ToConjugate()
Changes the components of the vector to their complex conjugate.
ToGeneralVector()
Makes a copy of this instance and returns it as a ComplexGeneralVector.
ToString()
Returns a String representation of this ComplexVector.
ToString(String)
Converts the numeric value of this ComplexVector instance to its equivalent string representation, using the specified format.
ToString(String, IFormatProvider)
Returns a String representation of this ComplexGeneralMatrix.
ToStringInternal(StringBuilder, String, IFormatProvider)
Writes a string representation of this instance to an instance of StringBuilder using the specified number format.
Zero()
Sets all the components of the ComplexVector to 0.

Constructors

IconTypeDescription
ComplexBandVectorNew(Int32, Int32, Int32)
Constructs a new ComplexBandVector with the specified length and non-zero range.
ComplexBandVectorNew(Int32, Int32, Int32, DoubleComplex[]())
Constructs a new ComplexBandVector with the specified length and non-zero omponents.
ComplexBandVectorNew(Int32, Int32, Int32, DoubleComplex[](), Boolean)
Constructs a new ComplexBandVector with the specified length and non-zero omponents.

Properties

IconTypeDescription
EndIndex
Gets the index of the last non-zero component in this vector.
Item(Int32)
Gets or sets a specific component of this vector.
Item(Range)
Gets or sets a range of components of the ComplexVector.
Length
Gets the number of elements in the ComplexVector.
StartIndex
Gets the index of the first non-zero component in this vector.

Remarks

Use the ComplexBandVector class to represent a vector with zero components at the beginning or at the end. The name derives from the fact that the rows and columns of a band matrix have this form.

Many of the standard methods for vectors have been optimized to take advantage of this special structure.

The StartIndex and EndIndex specify the index of the first and last non-zero element. These values must be specified in the constructor. Components with an index less than StartIndex or greater than EndIndex cannot be modified. Any attempt to do so will result in a ComponentReadOnlyException. You can verify if a component can be modified by calling the IsComponentWritable(Int32) method.

Inheritance Hierarchy

System.Object
  Extreme.Mathematics.LinearAlgebra.Complex.ComplexVector
    Extreme.Mathematics.LinearAlgebra.Complex.ComplexBandVector