numgo

package
v1.0.2109 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 20, 2021 License: MIT Imports: 4 Imported by: 0

Documentation

Overview

numgo project numgo.go

numgo project numgo.go

numgo document

numgo project numgo.go

Index

Constants

View Source
const (
	PI = 3.141592653589793
)

Variables

This section is empty.

Functions

func ComplexAddReal

func ComplexAddReal(r float64, cmp complex128) complex128

********************************************** 功能:复数加上一个实数 输入:

r:float64:实数
cmp:complex128:复数

输出:

complex128;复数

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func ComplexAngle

func ComplexAngle(cmp complex128) float64

********************************************** 功能:返回复数的角度(主值) 输入:

cmp:complex128 复数

输出:

float64,角度的主值

说明:复数Z=a+bi化成三角式r(cosθ+isinθ),可简写作r∠θ,

其中模(绝对值)r=√(a²+b²);复角θ由tanθ=b/a解出并在0≤θ<360°范围内取值(主值)

编辑:wang_jp 时间:2020年10月16日 **********************************************

func ComplexConjugate

func ComplexConjugate(cmp complex128) complex128

********************************************** 功能:返回复数的共轭复数 输入:

cmp:complex128 复数

输出:

complex128

说明:复数 a+ib 的共轭复数是 a-ib 编辑:wang_jp 时间:2020年10月16日 **********************************************

func ComplexDivByReal

func ComplexDivByReal(r float64, cmp complex128) complex128

********************************************** 功能:实数除以一个复数 输入:

r:float64:实数
cmp:complex128:复数

输出:

complex128;复数

说明:如果被除数为0,输出结果为0 编辑:wang_jp 时间:2020年10月16日 **********************************************

func ComplexMulReal

func ComplexMulReal(r float64, cmp complex128) complex128

********************************************** 功能:实数乘以一个复数 输入:

r:float64:实数
cmp:complex128:复数

输出:

complex128;复数

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func ComplexSubByReal

func ComplexSubByReal(r float64, cmp complex128) complex128

********************************************** 功能:实数减去一个复数 输入:

r:float64:实数
cmp:complex128:复数

输出:

complex128;复数

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func ComplexSubReal

func ComplexSubReal(r float64, cmp complex128) complex128

********************************************** 功能:复数减去一个实数 输入:

r:float64:实数
cmp:complex128:复数

输出:

complex128;复数

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func ComplexsIsEqual

func ComplexsIsEqual(a, b complex128) bool

********************************************** 功能:比较两个复数是否相等 输入:

a,b:complex128:复数

输出:

如果两个复数的实部和虚部都相等,返回true,否则返回false

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func Real2Complex

func Real2Complex(a float64) complex128

********************************************** 功能:实数转换为复数 输入:

a:float64 实数

输出:

complex128

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func UnitRoot

func UnitRoot(n, k int, inv ...int) complex128

********************************************** 功能:单位根 输入:n,k int

inv int:可选,用于对单位根取共轭。-1或者1,不填写时默认为1

输出:

complex128,单位根

说明:单位根指模为1的根,一般的x的n个单位根可以表示为:x=cos(2*pi*k/n)+sin(2*pi*k/n)i,

其中:k=0,1,2,..,n-1,i是虚数单位

编辑:wang_jp 时间:2020年11月9日 **********************************************

Types

type Array

type Array []float64

func NewArray

func NewArray(n int) Array

********************************************** 功能:初始化一个新数组 输入:n:数组的长度 输出:元素全为0的长度为n的数组 说明: 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) AddArray

func (a Array) AddArray(b Array) (Array, error)

********************************************** 功能:数组加上另一个数组 输入:一个同维度的数组 输出: 说明:数组中的每个下标上对应的元素相加 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) AddScalar

func (data Array) AddScalar(scalar float64)

********************************************** 功能:每个元素都加上一个标量 输入:scalar:标量值 输出: 说明: 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) Average

func (data Array) Average() float64

********************************************** 功能:算术平均值 输入:无 输出:平均值 说明:当数据呈对称分布或接近对称分布时,均值、中位数、众数相等或接近相等,这时应选择均值作为集中

趋势的代表值,因为均值包含了全部数据的信息

编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) BubbleSort

func (arr Array) BubbleSort(confg ...bool) Array

********************************************** 功能:冒泡排序 输入:confg[0] 顺序,false:从小到大(默认),true:从大到小

confg[1] 是否替换原数组,false:不替换,true:替换

输出:无 编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) CalcAdvangceStatistic

func (data Array) CalcAdvangceStatistic() (avg, sd, std, se, ske, kur float64)

********************************************** 功能:高级统计功能 输入:待计算数组 输出:平均值、标准偏差、样本标准变差、标准差、偏度、峰度 编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) Companion

func (a Array) Companion() (Matrix, error)

********************************************** 功能: 生成伴随矩阵 输入: 无 输出: 数组的伴随矩阵(N-1 x N-1维度方阵)

伴随矩阵的第一行是:-a[1:]/a[0],第二行开始的对角线都是1,其余为0

说明: a 数组的长度N必须大于等于2,a[0]必须非0 编辑: wang_jp 时间: 2020年10月15日 **********************************************

func (Array) Copy

func (arr Array) Copy() Array

********************************************** 功能:复制一个新的数组 输入:无 输出:Array;新的数组 说明: 编辑:wang_jp 时间:2020年10月20日 **********************************************

func (Array) Cv

func (data Array) Cv() (cv float64)

********************************************** 功能:变异系数 输入: 输出:变异系数 说明:变异系数,又称“离散系数”(英文:coefficient of variation),是概率分布离散程度的一个归一化量度,

其定义为标准差与平均值之比。变异系数也被称为标准离差率或单位风险

编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) DivArray

func (a Array) DivArray(b Array) (Array, error)

********************************************** 功能:数组除以另一个数组 输入:一个同维度的数组 输出: 说明:数组中的每个下标上对应的元素相除,如果被除数元素为0,则结果元素为0 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) DivByScalar

func (data Array) DivByScalar(scalar float64)

********************************************** 功能:每个(非零)元素都被一个标量除 输入:scalar:标量值 输出: 说明: 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) DivScalar

func (data Array) DivScalar(scalar float64)

********************************************** 功能:每个元素都除以一个标量 输入:scalar:标量值 输出: 说明: 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) Fft

func (a Array) Fft(inv ...bool) Array

********************************************** 功能:傅里叶变换 输入:inv ...bool:省略或者false:傅里叶变换;true:傅里叶逆变换 输出: 说明:尚未完成 编辑:wang_jp 时间:2020年11月09日 **********************************************

func (Array) Group

func (data Array) Group(umin, umax float64, grp ...int) (float64, Array, map[string]float64)

********************************************** 功能:对数据进行分组 输入:umin, umax float64:用户自定义的最小和最大分组区间,

	如果不使用自定义,请全部输入0.0
 grp int:可选的分组数。
 如果不输入分组数,数据长度0~30分为5组,30~300分为10组,300以上分为100组

输出:组距、分组Map1,分组Map2 说明:Map1以自然数为下标,以组内的数据量为内容

Map2以数据分组界限为下标,以组内数据量占数据总数的百分比为内容

编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) IsAllZero

func (a Array) IsAllZero() bool

********************************************** 功能:数组中的元素是否全为零 输入: 输出:true or false 说明:数组中的元素全为0输出true,否则为false

空数组当成全为0的数组

编辑:wang_jp 时间:2020年10月20日 **********************************************

func (Array) IsEqual

func (a Array) IsEqual(b Array) bool

********************************************** 功能:两个数组是否相等 输入:数组B 输出:数组相等输出true,否则false 说明: 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) Kur

func (data Array) Kur() (kur float64)

********************************************** 功能:峰度 输入: 输出:峰度 编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) Max

func (arr Array) Max() float64

******************************************** //功能:求最大值 //参数:无 //说明: //作者:wangjp //时间:2020年5月29日 *********************************************

func (Array) Mean

func (arr Array) Mean() float64

******************************************** //功能:数组求平均 //参数:无 //说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (Array) Median

func (data Array) Median() float64

********************************************** 功能:计算中位数 输入: 输出:中位数 说明:特别适用于偏态分布,对于对称分布也可以应用。对于偏态分部,是概率分布图最高峰所在位置。

数组长度必须大于2

编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) Midrange

func (data Array) Midrange() float64

********************************************** 功能:中程数 输入: 输出:中程数 说明:(最大值 + 最小值)/2 编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) Min

func (arr Array) Min() float64

******************************************** //功能:求最小值 //参数:无 //说明: //作者:wangjp //时间:2020年5月29日 *********************************************

func (Array) Mode

func (data Array) Mode(grp ...int) (float64, float64, map[string]float64)

********************************************** 功能:计算众数 输入:待计算数组,分组数量(不设置时根据数组长度自动分为10组或者100组) 输出:众数、组距、分组Map 编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) MoveWindowFilter

func (data Array) MoveWindowFilter(n int, fillvlue ...string) Array

********************************************* //功能: 移动窗口滤波 //输入: n:int,滤波窗口长度,1<n<len(data) // fillvalue:string, 填充值方法{"mean","median"},省略时为"mean" //输出: //说明: n<=1或者n>len(data)时,不进行滤波,直接返回原数据 // "median"时,n必须大于2,否则用"mean"方法 //编辑: wangjp //时间: 2020年10月14日 *********************************************

func (Array) MulArray

func (a Array) MulArray(b Array) (Array, error)

********************************************** 功能:数组乘以另一个数组 输入:一个同维度的数组 输出: 说明:数组中的每个下标上对应的元素相乘 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) MulScalar

func (data Array) MulScalar(scalar float64)

********************************************** 功能:每个元素都乘以一个标量 输入:scalar:标量值 输出: 说明: 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) Poly

func (seq_of_zeros Array) Poly() (Array, error)

********************************************** 功能:用给定的根序列求多项式的系数。 输入: 输出:c:Array,长度为N+1的矩阵,c[0]始终为1.0 说明:c[0] * x**(N) + c[1] * x**(N-1) + ... + c[N-1] * x + c[N]

对于给定的零序列,返回其前导系数为1的多项式的系数(序列中必须包含多个根是
其重数的许多倍)

编辑:wang_jp 时间:2020年10月20日 **********************************************

func (Array) Polynominal

func (X Array) Polynominal() Matrix

********************************************** 功能:将数组作为多项式的系数列出多项式的行列式 输入: 输出:Matrix,N x N+1的矩阵 说明:a[0] * x**(N) + a[1] * x**(N-1) + ... + a[N-1] * x + a[N]=0

上式中,c[0]始终为1,则可以转换为:
a[1] * x**(N-1) + ... + a[N-1] * x + a[N]= - a[0] * x**(N)
输出的c矩阵为:
	x[0]**(N-1)    x[0]**(N-2) ...  x[0]**(1)   x[0]**(0)   -x[0]**(N)
	x[1]**(N-1)    x[1]**(N-2) ...  x[1]**(1)   x[1]**(0)   -x[1]**(N)
	...       ...           ...     ...     ...
	x[N-1]**(N-1) x[N-1]**(N-2) ... x[N-1]**(1) x[N-1]**(0) -x[N-1]**(N)
N 是输入数组的长度

编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) Product

func (arr Array) Product() float64

******************************************** //功能:数组乘积 //参数:无 //说明: //作者:wangjp //时间:2020年5月29日 *********************************************

func (Array) Quartile

func (data Array) Quartile(q int, group ...int) float64

********************************************** 功能:四分位数(quartile) 输入:[q int] 分位标记,可选-1、0、1、2、3、4,

	-1:Qd,四分位差,Qd=Q3-Q1,亦写为IQR
	0:Lower,箱型图最小值,lower=Q1-1.5*Qd
	1:Q1,下四分位值
	2:Q2,等于Median
	3:Q3,上四分位值
	4:Upper,箱型图的最大值,upper=Q3+1.5*Qd
[group ...int] 可选的分组数,不选时采用数组长度自然分组

输出:四分位数 说明:将各个变量值按大小顺序排列,然后将此数列分成四等份

数组长度必须大于4

编辑:wang_jp 时间:2020年7月5日 **********************************************

func (Array) Quartiles

func (data Array) Quartiles(group ...int) (Lower, Q1, Q2, Q3, Upper, IQR float64)

********************************************** 功能:四分位数(quartiles) 输入:[group ...int] 可选的分组数,不选时采用数组长度自然分组 输出:

Lower:箱型图最小值,lower=Q1-1.5*Qd
Q1:下四分位值
Q2:等于Median
Q3:上四分位值
Upper:箱型图的最大值,upper=Q3+1.5*Qd
IQR:四分位差,Qd=Q3-Q1,亦写为Qd

说明:数组长度必须大于4 编辑:wang_jp 时间:2020年8月26日 **********************************************

func (Array) Range

func (data Array) Range() float64

********************************************** 功能:数据范围(极差或全距) 输入: 输出:数据范围 说明:最大值与最小值之间的差值,用于描述X的数字分散程度,越小则数字之间越紧密 编辑:wang_jp 时间:2019年12月6日 *********************************************

func (Array) Reverse

func (a Array) Reverse()

********************************************** 功能:将数组反转 输入: 输出: 说明: 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) Sd

func (data Array) Sd() (sd float64)

********************************************** 功能:标准差(均方差) 输入: 输出:标准差 说明:标准差(Standard Deviation) ,中文环境中又常称均方差,是离均差平方的算术平均数的平方根,

用σ表示。标准差是方差的算术平方根。标准差能反映一个数据集的离散程度。

编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) Se

func (data Array) Se() (se float64)

********************************************** 功能:标准误差(Standard error) 输入: 输出:标准误差 编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) Ske

func (data Array) Ske() (ske float64)

********************************************** 功能:偏度 输入: 输出:偏度 编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) Std

func (data Array) Std() (std float64)

********************************************** 功能:样本标准偏差 输入: 输出:样本标准偏差 编辑:wang_jp 时间:2019年12月6日 **********************************************

func (Array) SubArray

func (a Array) SubArray(b Array) (Array, error)

********************************************** 功能:数组减去另一个数组 输入:一个同维度的数组 输出: 说明:数组中的每个下标上对应的元素相减 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) SubByScalar

func (data Array) SubByScalar(scalar float64)

********************************************** 功能:每个元素都被一个标量减 输入:scalar:标量值 输出: 说明: 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) SubScalar

func (data Array) SubScalar(scalar float64)

********************************************** 功能:每个元素都减去一个标量 输入:scalar:标量值 输出: 说明: 编辑:wang_jp 时间:2020年10月15日 **********************************************

func (Array) Sum

func (arr Array) Sum() float64

******************************************** //功能:数组求和 //参数:无 //说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (Array) Swap

func (a Array) Swap(k1, k2 int)

********************************************** 功能:交换两个元素 输入:k1,k2 int:需要交换的两个元素下标 输出: 说明: 编辑:wang_jp 时间:2020年11月09日 **********************************************

func (Array) Variance

func (data Array) Variance() float64

********************************************** 功能:方差(样本值与平均值的差的平方) 输入: 输出:方差 说明:数列中每个元素与均值之差的平方和 编辑:wang_jp 时间:2019年12月6日 **********************************************

type ComplexArray

type ComplexArray []complex128 //复数数组

func RealArr2ComplexsArr

func RealArr2ComplexsArr(arr Array) ComplexArray

********************************************** 功能:实数数组转换为复数数组 输入:

arr:[]float64 实数

输出:

ComplexArray

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func (ComplexArray) Abs

func (cmps ComplexArray) Abs() Array

********************************************** 功能:获取复数数组各个元素的模(绝对值) 输入: 输出:实数数组 编辑:wang_jp 时间:2020年10月21日 **********************************************

func (ComplexArray) AddReal

func (cmps ComplexArray) AddReal(r float64, inplace ...bool) ComplexArray

********************************************** 功能:实数与一个复数数组中的每一个元素相加 输入:

r:float64:实数
cmps:ComplexArray:复数

输出:

ComplexArray;复数

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func (ComplexArray) Angle

func (cmps ComplexArray) Angle() Array

********************************************** 功能:获取复数数组各个元素的角度(主值) 输入: 输出:实数数组 说明:复数Z=a+bi化成三角式r(cosθ+jsinθ),可简写作r∠θ,

其中模(绝对值)r=√(a²+b²);复角θ由tanθ=b/a解出并在0≤θ<360°范围内取值(主值)

编辑:wang_jp 时间:2020年10月16日 **********************************************

func (ComplexArray) Conjugate

func (cmps ComplexArray) Conjugate(inplace ...bool) ComplexArray

********************************************** 功能:将数组中的所有元素取共轭 输入:inplace bool:是否更改原始数组 输出:所有元素共轭后的数组 说明:复数 a+ib 的共轭复数是 a-ib 编辑:wang_jp 时间:2020年10月21日 **********************************************

func (ComplexArray) Copy

func (cmps ComplexArray) Copy() ComplexArray

********************************************** 功能:复制一个新的数组 输入:无 输出:ComplexArray;新的复数数组 说明: 编辑:wang_jp 时间:2020年10月20日 **********************************************

func (ComplexArray) Div

func (cmps ComplexArray) Div(b ComplexArray, inplace ...bool) ComplexArray

********************************************** 功能:两个复数数组中的每一个元素相除 输入:

b:ComplexArray:复数
inplace:bool: 是否改变原始数据,true是,false否

输出:

ComplexArray;复数

说明:如果被除数组的实部和虚部都是0,则使结果元素等于被除数

 如果两个数组的长度不相同,将短的扩展为长的
	扩展被除数时,新扩展的元素为:0+0i
	扩展除数时,新扩展的元素为:1+0i

编辑:wang_jp 时间:2020年10月16日 **********************************************

func (ComplexArray) DivByReal

func (cmps ComplexArray) DivByReal(r float64, inplace ...bool) ComplexArray

********************************************** 功能:实数除以一个复数数组中的每一个元素 输入:

r:float64:作为被除数的实数
inplace:bool: 是否改变原始数据,true是,false否

输出:

ComplexArray;复数

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func (ComplexArray) Fft

func (cmps ComplexArray) Fft(args ...bool) ComplexArray

********************************************** 功能:傅里叶变换 输入:args ...bool:可配置参数,

args[0]:inplace,true:改变源数组,false:不改变源数组.不填写时不改变源数组
args[1]:false:傅里叶变换,true:傅里叶逆变换.不填写时为傅里叶变换

输出: 说明: 编辑:wang_jp 时间:2020年11月09日 **********************************************

func (ComplexArray) IsAllReal

func (cmps ComplexArray) IsAllReal() bool

********************************************** 功能:判断是否全为实数,即每个元素的虚部全为0 输入: 输出:是true,否false 编辑:wang_jp 时间:2020年10月21日 **********************************************

func (ComplexArray) IsAllZero

func (a ComplexArray) IsAllZero() bool

********************************************** 功能:数组中的元素是否全为零 输入: 输出:true or false 说明:数组中的元素全为0输出true,否则为false

空数组当成全为0的数组

编辑:wang_jp 时间:2020年10月20日 **********************************************

func (ComplexArray) IsEqual

func (a ComplexArray) IsEqual(b ComplexArray) bool

********************************************** 功能:比较两个复数数组是否相等 输入:

a,b:ComplexArray:复数数组切片

输出:

如果两个数组长度相等且每个元素的实部和虚部都相等,返回true,否则返回false

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func (ComplexArray) MulReal

func (cmps ComplexArray) MulReal(r float64, inplace ...bool) ComplexArray

********************************************** 功能:复数数组元素同时乘以一个实数 输入:

r:float64;实数
inplace:bool: 是否改变原始数据,true是,false否

输出:

ComplexArray;复数数组

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func (ComplexArray) Poly

func (seq_of_zeros ComplexArray) Poly() (ComplexArray, error)

********************************************** 功能:用给定的根序列求多项式的系数。 输入: 输出:c:ComplexArray,长度为N+1的矩阵,c[0]始终为1.0 说明:c[0] * x**(N) + c[1] * x**(N-1) + ... + c[N-1] * x + c[N]

对于给定的零序列,返回其前导系数为1的多项式的系数(序列中必须包含多个根是
其重数的许多倍)

编辑:wang_jp 时间:2020年10月20日 **********************************************

func (ComplexArray) Polynominal

func (X ComplexArray) Polynominal() ComplexMatrix

********************************************** 功能:将数组作为多项式的系数列出多项式的行列式 输入: 输出:Matrix,N x N+1的矩阵 说明:a[0] * x**(N) + a[1] * x**(N-1) + ... + a[N-1] * x + a[N]=0

上式中,c[0]始终为1,则可以转换为:
a[1] * x**(N-1) + ... + a[N-1] * x + a[N]= - a[0] * x**(N)
输出的c矩阵为:
	x[0]**(N-1)    x[0]**(N-2) ...  x[0]**(1)   x[0]**(0)   -x[0]**(N)
	x[1]**(N-1)    x[1]**(N-2) ...  x[1]**(1)   x[1]**(0)   -x[1]**(N)
	...       ...           ...     ...     ...
	x[N-1]**(N-1) x[N-1]**(N-2) ... x[N-1]**(1) x[N-1]**(0) -x[N-1]**(N)
N 是输入数组的长度

编辑:wang_jp 时间:2020年10月15日 **********************************************

func (ComplexArray) Prod

func (cmps ComplexArray) Prod() complex128

********************************************** 功能:复数数组的乘积 输入:

cmps:ComplexArray:复数数组切片

输出:

complex128;复数

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func (ComplexArray) RealCopy

func (cmps ComplexArray) RealCopy() Array

********************************************** 功能:获取复数数组各个元素实部的副本 输入: 输出:实数数组 编辑:wang_jp 时间:2020年10月21日 **********************************************

func (ComplexArray) SubByReal

func (cmps ComplexArray) SubByReal(r float64, inplace ...bool) ComplexArray

********************************************** 功能:实数与一个复数数组中的每一个元素相减 输入:

r:float64:作为除数的实数
inplace:bool: 是否改变原始数据,true是,false否

输出:

ComplexArray;复数

说明: 编辑:wang_jp 时间:2020年10月16日 **********************************************

func (ComplexArray) Swap

func (a ComplexArray) Swap(k1, k2 int)

********************************************** 功能:交换两个元素 输入:k1,k2 int:需要交换的两个元素下标 输出: 说明: 编辑:wang_jp 时间:2020年11月09日 **********************************************

type ComplexMatrix

type ComplexMatrix []ComplexArray //复数矩阵

func InitComplexMatrix

func InitComplexMatrix(m, n int) ComplexMatrix

******************************************** //功能: 初始化一个新矩阵 //参数: m为行数,n为列数 //返回: m x n的矩阵,矩阵的元素全为0 //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func InitComplexMatrixAsIdentity

func InitComplexMatrixAsIdentity(n int) ComplexMatrix

******************************************** //功能:初始化输出n阶单位矩阵 //参数: 单位矩阵的阶数n //输出: n x n的单位矩阵 //说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (ComplexMatrix) Abs

func (cmpm ComplexMatrix) Abs() Matrix

********************************************** 功能:获取矩阵中各个元素的模(绝对值) 输入: 输出:实数矩阵 编辑:wang_jp 时间:2020年10月21日 **********************************************

func (ComplexMatrix) Add

******************************************** //功能:两个矩阵相加 //参数:矩阵B //输出:矩阵的和,错误信息 //说明:两个矩阵都必须是m x n的矩阵,结果也是m x n的矩阵 //作者:wangjp //时间:2020年10月14日 *********************************************

func (ComplexMatrix) Angle

func (cmpm ComplexMatrix) Angle() Matrix

********************************************** 功能:获取矩阵中各个元素的角度(主值) 输入: 输出:实数矩阵 说明:复数Z=a+bi化成三角式r(cosθ+jsinθ),可简写作r∠θ,

其中模(绝对值)r=√(a²+b²);复角θ由tanθ=b/a解出并在0≤θ<360°范围内取值(主值)

编辑:wang_jp 时间:2020年10月16日 **********************************************

func (ComplexMatrix) Cols

func (m ComplexMatrix) Cols() int

******************************************** //功能: 获取矩阵的列数 //参数: 无 //返回: 矩阵列数 //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (ComplexMatrix) Conjugate

func (cmpm ComplexMatrix) Conjugate(inplace ...bool) ComplexMatrix

********************************************** 功能:将矩阵中的所有元素取共轭 输入:inplace bool:是否更改原始矩阵 输出:所有元素共轭后的矩阵 说明:复数 a+ib 的共轭复数是 a-ib 编辑:wang_jp 时间:2020年10月21日 **********************************************

func (ComplexMatrix) Copy

func (mat ComplexMatrix) Copy() ComplexMatrix

******************************************** //功能:复制一个矩阵 //参数: //输出:新的矩阵 //说明: //作者:wangjp //时间:2020年10月19日 *********************************************

func (ComplexMatrix) ElemTransRowMulK

func (m ComplexMatrix) ElemTransRowMulK(r int, k complex128)

******************************************** //功能:矩阵初等行变换(Elementary Transformation)-某行乘以常数 //参数: 行号r

需要乘的参数k

//说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (ComplexMatrix) ElemTransRowMulKAddToRow

func (m ComplexMatrix) ElemTransRowMulKAddToRow(r1, r2 int, k complex128)

******************************************** //功能:矩阵初等行变换(Elementary Transformation)-数k乘第 r2 行加到第 r1 行 //参数: 行号r1和r2

需要乘的参数k

//说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (ComplexMatrix) ElemTransRowSwap

func (m ComplexMatrix) ElemTransRowSwap(r1, r2 int)

******************************************** //功能:矩阵初等行变换(Elementary Transformation)-交换两行 //参数:两行的行号 //说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (ComplexMatrix) Inverse

func (m ComplexMatrix) Inverse() (ComplexMatrix, error)

******************************************** //功能:求矩阵的逆矩阵 //参数: //输出:矩阵的逆矩阵,状态(求逆矩阵成功true,不成功false) //说明:矩阵必须为方阵 //作者:wangjp //时间:2020年3月24日 *********************************************

func (ComplexMatrix) IsEqual

func (a ComplexMatrix) IsEqual(b ComplexMatrix) bool

******************************************** //功能: 判断两个矩阵是否相等 //参数: 被比较的矩阵 //返回: 两个矩阵相同返回true,不同返回false //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (ComplexMatrix) IsSquareMatix

func (m ComplexMatrix) IsSquareMatix() bool

******************************************** //功能: 是否方阵 //参数: 无 //返回: 如果是方阵(行和列相同),返回true,否则false //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (ComplexMatrix) LeftSquare2Identity

func (m ComplexMatrix) LeftSquare2Identity(confg ...bool) (ComplexMatrix, error)

******************************************** //功能:进行初等行变换将矩阵左侧方阵部分转换为单位矩阵 //参数:confg[0]:true:替换原始矩阵,false:不替换原始矩阵 // confg[1]:true:矩阵不可逆时返回错误,false:矩阵不可逆时继续进行 //输出:左侧方阵转换为单位方阵的矩阵 //说明:矩阵的行数不可大于列数 //作者:wangjp //时间:2020年10月19日 *********************************************

func (ComplexMatrix) LeftSquare2Triu

func (m ComplexMatrix) LeftSquare2Triu(confg ...bool) (ComplexMatrix, error)

******************************************** //功能:对矩阵进行初等行变换,对左侧方阵部分求上三角矩阵 //参数:confg[0]:true:替换原始矩阵,false:不替换原始矩阵 // confg[1]:true:矩阵不可逆时返回错误,false:矩阵不可逆时继续进行 //输出:上三角方阵 //说明:矩阵的行数不可大于列数 // 做行变换将左侧方阵部分转换为上三角阵 // 主对角线以下都是零的方阵称为上三角矩阵。 // 上三角矩阵具有行列式为对角线元素相乘、上三角矩阵乘以系数后也是上三角矩阵、 // 上三角矩阵间的加减法和乘法运算的结果仍是上三角矩阵等性质。 //作者:wangjp //时间:2020年10月19日 *********************************************

func (ComplexMatrix) MeanRow

func (m ComplexMatrix) MeanRow() []complex128

******************************************** //功能:对矩阵的每行求平均 //参数:无 //说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (ComplexMatrix) Mul

******************************************** //功能:求矩阵乘积 //参数:矩阵A和矩阵B //输出:矩阵的乘积,错误信息 //说明:第一个矩阵a是m×s型的,第二个矩阵b是s×n型的,结果阵Result是m×n型的,如果a矩阵的列与b矩阵 // 的行不相等,则输出错误信息 //作者:wangjp //时间:2020年3月24日 *********************************************

func (ComplexMatrix) MulScalar

func (m ComplexMatrix) MulScalar(scalar complex128)

******************************************** //功能: 矩阵乘以一个系数 //参数: 系数 //返回: 无 //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (ComplexMatrix) Print

func (m ComplexMatrix) Print(title ...string)

******************************************** //功能:将矩阵逐行打印输出,可选添加标题 //参数: 可选的标题 //说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (ComplexMatrix) Rows

func (m ComplexMatrix) Rows() int

******************************************** //功能: 获取矩阵的行数 //参数: 无 //返回: 矩阵行数 //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (ComplexMatrix) RowsAndCols

func (m ComplexMatrix) RowsAndCols() (rows, cols int)

******************************************** //功能: 获取矩阵的行数和列数 //参数: 无 //返回: 矩阵行数和列数 //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (ComplexMatrix) Sub

******************************************** //功能:两个矩阵相减 //参数:矩阵B //输出:矩阵的差,错误信息 //说明:两个矩阵都必须是m x n的矩阵,结果也是m x n的矩阵 //作者:wangjp //时间:2020年10月14日 *********************************************

func (ComplexMatrix) SubFromIdentityMatrix

func (m ComplexMatrix) SubFromIdentityMatrix() (ComplexMatrix, error)

******************************************** //功能:用单元矩阵减去该矩阵 //参数:无 //说明: //作者:wangjp //时间:2020年10月14日 *********************************************

func (ComplexMatrix) SumRow

func (m ComplexMatrix) SumRow() []complex128

******************************************** //功能:对矩阵的每行求和 //参数:无 //说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (ComplexMatrix) Transpose

func (m ComplexMatrix) Transpose() ComplexMatrix

******************************************** //功能: 矩阵转置 //参数: 无 //返回: 转置后的矩阵 //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

type Matrix

type Matrix []Array

func InitAsIdentity

func InitAsIdentity(n int) Matrix

******************************************** //功能:初始化输出n阶单位矩阵 //参数: 单位矩阵的阶数n //输出: n x n的单位矩阵 //说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func InitMatrix

func InitMatrix(m, n int) Matrix

******************************************** //功能: 初始化一个新矩阵 //参数: m为行数,n为列数 //返回: m x n的矩阵,矩阵的元素全为0 //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (Matrix) Add

func (ma Matrix) Add(mb Matrix) (Matrix, error)

******************************************** //功能:两个矩阵相加 //参数:矩阵B //输出:矩阵的和,错误信息 //说明:两个矩阵都必须是m x n的矩阵,结果也是m x n的矩阵 //作者:wangjp //时间:2020年10月14日 *********************************************

func (Matrix) Cols

func (m Matrix) Cols() int

******************************************** //功能: 获取矩阵的列数 //参数: 无 //返回: 矩阵列数 //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (Matrix) Copy

func (mat Matrix) Copy() Matrix

******************************************** //功能:复制一个矩阵 //参数: //输出:新的矩阵 //说明: //作者:wangjp //时间:2020年10月19日 *********************************************

func (Matrix) ElemTransRowMulK

func (m Matrix) ElemTransRowMulK(r int, k float64)

******************************************** //功能:矩阵初等行变换(Elementary Transformation)-某行乘以常数 //参数: 行号r

需要乘的参数k

//说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (Matrix) ElemTransRowMulKAddToRow

func (m Matrix) ElemTransRowMulKAddToRow(r1, r2 int, k float64)

******************************************** //功能:矩阵初等行变换(Elementary Transformation)-数k乘第 r2 行加到第 r1 行 //参数: 行号r1和r2

需要乘的参数k

//说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (Matrix) ElemTransRowSwap

func (m Matrix) ElemTransRowSwap(r1, r2 int)

******************************************** //功能:矩阵初等行变换(Elementary Transformation)-交换两行 //参数:两行的行号 //说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (Matrix) Inverse

func (m Matrix) Inverse() (Matrix, error)

******************************************** //功能:求矩阵的逆矩阵 //参数: //输出:矩阵的逆矩阵,状态(求逆矩阵成功true,不成功false) //说明:矩阵必须为方阵 //作者:wangjp //时间:2020年3月24日 *********************************************

func (Matrix) IsEqual

func (a Matrix) IsEqual(b Matrix) bool

******************************************** //功能: 判断两个矩阵是否相等 //参数: 被比较的矩阵 //返回: 两个矩阵相同返回true,不同返回false //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (Matrix) IsSquareMatix

func (m Matrix) IsSquareMatix() bool

******************************************** //功能: 是否方阵 //参数: 无 //返回: 如果是方阵(行和列相同),返回true,否则false //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (Matrix) LeftSquare2Identity

func (m Matrix) LeftSquare2Identity(confg ...bool) (Matrix, error)

******************************************** //功能:进行初等行变换将矩阵左侧方阵部分转换为单位矩阵 //参数:confg[0]:true:替换原始矩阵,false:不替换原始矩阵 // confg[1]:true:矩阵不可逆时返回错误,false:矩阵不可逆时继续进行 //输出:左侧方阵转换为单位方阵的矩阵 //说明:矩阵的行数不可大于列数 //作者:wangjp //时间:2020年10月19日 *********************************************

func (Matrix) LeftSquare2Triu

func (m Matrix) LeftSquare2Triu(confg ...bool) (Matrix, error)

******************************************** //功能:对矩阵进行初等行变换,对左侧方阵部分求上三角矩阵 //参数:confg[0]:true:替换原始矩阵,false:不替换原始矩阵 // confg[1]:true:矩阵不可逆时返回错误,false:矩阵不可逆时继续进行 //输出:上三角方阵 // 错误信息 //说明:矩阵的行数不可大于列数 // 做行变换将左侧方阵部分转换为上三角阵 // 主对角线以下都是零的方阵称为上三角矩阵。 // 上三角矩阵具有行列式为对角线元素相乘、上三角矩阵乘以系数后也是上三角矩阵、 // 上三角矩阵间的加减法和乘法运算的结果仍是上三角矩阵等性质。 //作者:wangjp //时间:2020年10月19日 *********************************************

func (Matrix) MeanRow

func (m Matrix) MeanRow() []float64

******************************************** //功能:对矩阵的每行求平均 //参数:无 //说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (Matrix) Mul

func (ma Matrix) Mul(mb Matrix) (Matrix, error)

******************************************** //功能:求矩阵乘积 //参数:矩阵A和矩阵B //输出:矩阵的乘积,错误信息 //说明:第一个矩阵a是m×s型的,第二个矩阵b是s×n型的,结果阵Result是m×n型的,如果a矩阵的列与b矩阵 // 的行不相等,则输出错误信息 //作者:wangjp //时间:2020年3月24日 *********************************************

func (Matrix) MulScalar

func (m Matrix) MulScalar(scalar float64)

******************************************** //功能: 矩阵乘以一个系数 //参数: 系数 //返回: 无 //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (Matrix) Print

func (m Matrix) Print(title ...string)

******************************************** //功能:将矩阵逐行打印输出,可选添加标题 //参数: 可选的标题 //说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (Matrix) Rows

func (m Matrix) Rows() int

******************************************** //功能: 获取矩阵的行数 //参数: 无 //返回: 矩阵行数 //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (Matrix) RowsAndCols

func (m Matrix) RowsAndCols() (rows, cols int)

******************************************** //功能: 获取矩阵的行数和列数 //参数: 无 //返回: 矩阵行数和列数 //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

func (Matrix) Sub

func (ma Matrix) Sub(mb Matrix) (Matrix, error)

******************************************** //功能:两个矩阵相减 //参数:矩阵B //输出:矩阵的差,错误信息 //说明:两个矩阵都必须是m x n的矩阵,结果也是m x n的矩阵 //作者:wangjp //时间:2020年10月14日 *********************************************

func (Matrix) SubFromIdentityMatrix

func (m Matrix) SubFromIdentityMatrix() (Matrix, error)

******************************************** //功能:用单元矩阵减去该矩阵 //参数:无 //说明: //作者:wangjp //时间:2020年10月14日 *********************************************

func (Matrix) SumRow

func (m Matrix) SumRow() []float64

******************************************** //功能:对矩阵的每行求和 //参数:无 //说明: //作者:wangjp //时间:2020年3月24日 *********************************************

func (Matrix) Transpose

func (m Matrix) Transpose() Matrix

******************************************** //功能: 矩阵转置 //参数: 无 //返回: 转置后的矩阵 //说明: //作者: wangjp //时间: 2020年10月14日 *********************************************

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL