翻譯|使用教程|編輯:況魚杰|2019-06-11 11:53:33.090|閱讀 416 次
概述:NMath是NMath套包中基礎(chǔ)的.NET函數(shù)庫(kù),它包含了復(fù)數(shù)類,通用向量與矩陣類,結(jié)構(gòu)化稀疏矩陣類與因式分解,通用稀疏矩陣類與因式分解,通用矩陣分解,最小二乘解,隨機(jī)數(shù)生成器,快速傅里葉變換(FFT算法) ,數(shù)值積分與微分方法,函數(shù)最小化,曲線擬合,求根法,線性與非線性編程等內(nèi)容。本教程展示NMath中向量的值運(yùn)算。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
NMath是一個(gè)適用于所有.NET語(yǔ)言,如C#、Visual Basic、F#和.NET的數(shù)學(xué)庫(kù),它包含了.NET平臺(tái)上的面向?qū)ο髷?shù)字計(jì)算的基礎(chǔ)類。我們將以連載的形式向大家介紹NMath的實(shí)用教程。本節(jié)內(nèi)容展示向量的值運(yùn)算。
向量的值運(yùn)算
向量類具有以下只讀屬性:
length指在向量中獲取數(shù)據(jù)元素的數(shù)量。
Stride是指向量在正在查看的數(shù)據(jù)塊的連續(xù)元素之間的跨步。
DataBlock指對(duì)向量正在查看的數(shù)據(jù)塊引用的獲取。
當(dāng)v是DoubleComplexVector時(shí):
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
訪問(wèn)和修改矢量值
向量類提供獲取和設(shè)置元素值的標(biāo)準(zhǔn)索引操作符,v[i]就是返回向量v的數(shù)據(jù)視圖的第i個(gè)元素。
注意索引從0開(kāi)始,還可以使用set函數(shù)將向量的數(shù)據(jù)元素設(shè)置為指定的值。
當(dāng)將v的內(nèi)容更改為0和1的可選值時(shí):
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)
注意:當(dāng)返回向量引用數(shù)據(jù)的向量視圖時(shí),采用的任何方法都可以用于修改原始向量的值。
清除和調(diào)整向量大小
向量類提供兩種方法用于在創(chuàng)建向量后更改其長(zhǎng)度:
clear:將所有數(shù)據(jù)元素的值重置為零。
resize:將向量的大小更改為指定的長(zhǎng)度,根據(jù)需要更改。
resizeAndClear:執(zhí)行與resize相同的功能,但也會(huì)將所有剩余數(shù)據(jù)元素的值重置為零。
附加向量
可以使用附加的方法將新元素添加到向量的末尾,將單個(gè)元素添加到向量的末尾:
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)
將另一個(gè)向量附加到向量的末尾:
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)
注意:新的向量是由附加方法分配的,且數(shù)據(jù)是被復(fù)制的。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn