AHSEsim.Numerics 作为风力机气动-水动力-伺服-弹性仿真软件AHSEsim的基础数学框架,适用于工程技术人员的c#线性代数库。该库基与Mathnet库开发,并增加更多的特性和MKL支持
$ dotnet add package AhseSim.NumericsZeros.AllowSkip).Vector<double>..Generic in the namespaces and flattened solver namespaces.matrix function.SkipZeros instead of the cryptic nz suffix for clarity..*, ./, .% where supported (F#)ConjugateDotProduct in addition to DotProduct.Matrix.ConjugateTransposeAndMultiply and variants.Matrix<T> member methods (replacing the extension methods). Discrete implementations no longer visible.Solve methods to matrix type.OfColumnVectors).Matrix<double>.Build.DenseOfEnumerable(...).Build.SameAs(...))Matrix.SetSubMatrix.double)Providers namespace and are fully generic again.Control.UseNativeMKL(), Control.UseManaged().MeanVariance and MeanStandardDeviation methods (often used together).Ranks, QuantileRank and EmpiricalCDF.SystemRandomSource.SystemRandomSource.Doubles routine with lower randomness guarantees.SystemRandomSource.Default and MersenneTwister.Default instances to skip expensive initialization.Random module, also including default and shared instances.Fit class, supporting more simple scenarios..LinearRegression namespace with more options.Differentiate2 instead of DifferentiateAll.Integrate(a,b) in addition to existing indefinite Integrate(t).Interpolate facade, e.g. "Spline" is a well known name.GammaLowerRegularizedInv.Distance: euclidean, manhattan, chebychev distance of arrays or generic vectors. SAD, MAE, SSD, MSE metrics. Pearson's, Canberra and Minkowski distance. Hamming distance.System.Numerics for complex numbers, among others, which is not available in profile 136..Data packages (see list on top)..Signed suffix.Transform class.Atanh(2), where incidentally MATLAB and Mathematica do not agree on the sign either).Func suffix instead of just F if they return a function.AlmostEqual with numbers-between/ULP semantics, please do review your code to make sure you're still using the expected variant!. If you use the decimal-places semantics, you may need to decrement the digits argument to get the same behavior as before.ArgumentNullException if an unexpected null argument would not have caused an immediate NullReferenceException.ArgumentOutOfRangeExceptions where thrown with wrong arguments (i.e. no parameter name) now throw ArgumentException instead.ArrayStatistics.Variance on arrays longer than 46341 entries.Stable distribution. ~Artyom BaranovskiyToString methods no longer render the whole structure to a string for large data, among others because they used to wreak havoc in debugging and interactive scenarios like F# FSI. Instead, ToString now only renders an excerpt of the data, together with a line about dimension, type and in case of sparse data a sparseness indicator. The intention is to give a good idea about the data in a visually useful way. How much data is shown can be adjusted in the Control class. See also ToTypeString and ToVector/MatrixString.