.NET的数学库NMath实用教程——向量的值运算

 

NMath是一个适用于所有.NET语言,如C#、Visual Basic、F#和.NET的数学库,它包含了.NET平台上的面向对象数字计算的基础类。我们将以连载的形式向大家介绍NMath的实用教程。本节内容展示向量的值运算。

点击下载最新版NMath


向量的值运算

向量类具有以下只读属性:

  • length指在向量中获取数据元素的数量。

  • Stride是指向量在正在查看的数据块的连续元素之间的跨步。

  •  DataBlock指对向量正在查看的数据块引用的获取。

当v是DoubleComplexVector时:

Code Example – C# vector

int length = v.Length;
int stride = v.Stride;DoubleComplexDataBlock block = v.DataBlock;

Code Example – VB vector

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)

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值