NMath是一个适用于全部.NET语言,如C#、Visual Basic、F#和.NET的数学库,它包含了.NET平台上的面向对象数字计算的基础类。咱们将以连载的形式向你们介绍NMath的实用教程。本节内容展现向量的值运算。ide
向量的值运算spa
向量类具备如下只读属性:对象
length指在向量中获取数据元素的数量。教程
Stride是指向量在正在查看的数据块的连续元素之间的跨步。索引
DataBlock指对向量正在查看的数据块引用的获取。get
当v是DoubleComplexVector时:数学
Code Example – C# vectorit
int length = v.Length; int stride = v.Stride;DoubleComplexDataBlock block = v.DataBlock;
Code Example – VB vectorio
Dim Length As Integer = V.Length Dim Stride As Integer = V.Stride Dim Block As DoubleComplexDataBlock = V.DataBlock
访问和修改矢量值
向量类提供获取和设置元素值的标准索引操做符,v[i]就是返回向量v的数据视图的第i个元素。
注意索引从0开始,还能够使用set函数将向量的数据元素设置为指定的值。
当将v的内容更改成0和1的可选值时:
Code Example – C# vector
var v = new FloatVector(10, 0, 1); var evenElements = new Range( 0, Position.End, 2 ); var oddElements = new Range( 1, Position.End, 2 ); v.Set( evenElements, 0 ); v.Set( oddElements, 1 );
Code Example – VB vector
Dim V As New FloatVector(10, 0, 1) Dim EvenElements As New Range(0, Position.End, 2) Dim OddElements As New Range(1, Position.End, 2) V.Set(EvenElements, 0) V.Set(OddElements, 1)
注意:当返回向量引用数据的向量视图时,采用的任何方法均可以用于修改原始向量的值。
清除和调整向量大小
向量类提供两种方法用于在建立向量后更改其长度:
clear:将全部数据元素的值重置为零。
resize:将向量的大小更改成指定的长度,根据须要更改。
resizeAndClear:执行与resize相同的功能,但也会将全部剩余数据元素的值重置为零。
附加向量
能够使用附加的方法将新元素添加到向量的末尾,将单个元素添加到向量的末尾:
Code Example – C# vector
var v = new FloatVector( 10, 0, 0.5F ); float x = 5.5F; v.Append( x );
Code Example – VB vector
Dim V As New FloatVector(10, 0, 0.5F) Dim X As Single = 5.5F V.Append(X)
将另外一个向量附加到向量的末尾:
Code Example – C# vector
var v = new DoubleVector( 10, 0, 1 ); var w = new DoubleVector( 5, 11, 1 ); v.Append( w );
Code Example – VB vector
Dim V As New DoubleVector(10, 0, 1) Dim W As New DoubleVector(5, 11, 1) V.Append(W)
注意:新的向量是由附加方法分配的,且数据是被复制的。