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

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

Syntax

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

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(Double, Vector)
Adds a scaled vector to this instance.
Add(Vector)
Adds another vector to this vector.
Add(Matrix, Vector)
Adds the product of a Matrix and a Vector to this Vector.
Add(Double, Matrix, Vector)
Adds the scaled product of a Matrix and a Vector to this Vector.
Apply(RealFunction)
Applies a function to the writeable elements of a Vector.
Clone(CloningMethod)
Makes a copy of this instance using the specified method.
CloneData()
Gives this instance its own copy of its elements.
ComponentwiseDivide(Vector)
Divides the components of this instance by the corresponding components of another vector.
ComponentwiseMultiply(Vector)
Multiplies the components of this instance by the corresponding components of another vector.
CopyTo(Vector, Int32)
Copies the components of this instance to another Vector starting at the specified position.
CopyTo(Double[]())
Copies the components of this instance to another vector.
CopyTo(Vector)
Copies the components of this Vector to another vector.
DotProduct(Vector)
Returns the dot product of this vector with another vector.
Equals(Object)
Determines whether the specified Object is equal to the current Vector.
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 BandVector.
GetEnumerator()
Returns a BandVectorEnumerator for this GeneralVector.
GetHashCode()
Returns the hash code for this instance.
GetObjectData(SerializationInfo, StreamingContext)
Populates a SerializationInfo with the data needed to serialize the target object.
GetSubvector(Int32, Int32, Int32, Intent)
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
GetSubvector(Int32, Int32, Int32)
Returns a vector whose components are a subset of the components of this instance
GetSum()
Gets the sum of the components of the vector.
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.
Max()
Returns the value of the largest component in this instance.
MaxIndex()
Returns the index of the largest component in this instance.
MemberwiseClone()
Creates a shallow copy of the current Object.
Min()
Returns the value of the smallest component in this instance.
MinIndex()
Returns the index of the smallest component in this instance.
Multiply(Double)
Multiplies a vector by a given factor.
Multiply(Matrix)
Adds the scaled product of a Matrix and a Vector to this Vector.
Multiply(Matrix, MatrixOperationSide)
Multiplies a Vector by a Matrix.
Norm()
Returns the two-norm of the Vector.
Norm(Int32)
Returns the norm of the specified order of this Vector.
Norm(Double)
Returns the norm of the specified order of this Vector.
Normalize()
Scales the Vector 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 Vector.
OneNorm()
Returns the one-norm of this instance.
SetToZero()
Sets all the components of the Vector to 0.
SetValue(Double, Int32)
Sets the vector component at the specified position to the specified value.
SetValue(Double)
Sets all the writeable components of this instance to the specified value.
ShallowCopy()
Makes a shallow copy of this Vector.
Subtract(Vector)
Subtracts another Vector from this Vector.
Subtract(Matrix, Vector)
Subtracts the product of a Matrix and a Vector from this Vector.
static memberSwap(BandVector, BandVector)
Swaps the elements of two vectors.
SwapElements(Int32, Int32)
Exchanges two elements of the vector.
ToGeneralVector()
Makes a copy of this instance and returns it as a GeneralVector.
ToString()
Returns a String representation of this Vector.
ToString(String)
Converts the numeric value of this Vector instance to its equivalent string representation, using the specified format.
ToString(String, IFormatProvider)
Returns a String representation of this GeneralMatrix.
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 Vector to 0.

Constructors

IconTypeDescription
BandVectorNew(Int32, Int32, Int32)
Constructs a new BandVector with the specified length and non-zero range.
BandVectorNew(Int32, Int32, Int32, Double[]())
Constructs a new BandVector with the specified length and non-zero omponents.
BandVectorNew(Int32, Int32, Int32, Double[](), Boolean)
Constructs a new BandVector 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 Vector.
Length
Gets the number of elements in the Vector.
StartIndex
Gets the index of the first non-zero component in this vector.
StorageArray
Gets the Double array that stores the data for the instance.
StorageIncrement
Gets the increment between successive elements of this instance in the StorageArray.
StorageOffset
Gets the index of the first element of this instance in the StorageArray.

Remarks

Use the BandVector 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.Vector
    Extreme.Mathematics.LinearAlgebra.BandVector