Posted
over 16 years
ago
The algorithm on how the Mean, Variance and Sigma are incrementally computed in the statisics accumulator (MathNet.Numerics.Statistics.Accumulator) has been improved last week in Iridium revision 503 to provide better numeric stability when dealing
... [More]
with samples with a very large mean but only a small variance.For example, the variance of normally distributed samples with mean 10^9 but a variance of only 1 can now be accurately estimated. The previous implementation has been very unstable in that case. The new algorithm continues to support removing samples from the accumulator (and updates the estimates accordingly). [Less]
|
Posted
over 16 years
ago
by
Christoph Rüegg
I have much more time for Math.NET from now on than in the past. As a first step I've finally collected and summarized all Math.NET Iridium features in a list:
http://numerics.mathdotnet.com/doc/Features.ashx
Beside of the continuous Iridium work I also plan to finally bring Math.NET Classic (traditional symbolic computer algebra) back to live.
|
Posted
over 16 years
ago
Iteration 16 of Math.NET Iridium (Numerics) is now available, as 2008 August Release with Version 2008.8.16.470. Grab it here.Please continue
reporting issues and bugs you find, it's very useful and helps making
the whole project better. We've also
... [More]
setup a UserVoice page for you to suggest or vote for new features or enhancement. Team: Christoph Rüegg, Joannès Vermorel, Matthew KitchinSummary:Bugs: 4 bugs have been fixed.Completely revised and extended interpolation toolkit.New complex matrix and vector type (Complex Linear Algebra will follow in the next iteration).Slightly enhanced real matrix and vector types .QR decompositions are now unique (positive real R diagonal).Complex type now has a public constructor, more intuitive.New Digamma (Psi) special function.Various other small changes.For more details have a look at the download page or at the Iridium tracker change log. [Less]
|
Posted
over 16 years
ago
by
Christoph Rüegg
Iteration 16 of Math.NET Iridium (Numerics) is now available, as 2008 August Release with Version 2008.8.16.470. Grab it here.
Please continue reporting issues and bugs you find, it’s very useful and helps making the whole project better. We’ve also
... [More]
setup a UserVoice page for you to suggest or vote for new features or enhancement.
Team: Christoph Rüegg, Joannès Vermorel, Matthew Kitchin
Summary:
Bugs: 4 bugs have been fixed.
Completely revised and extended interpolation toolkit.
New complex matrix and vector type (Complex Linear Algebra will follow in the next iteration).
Slightly enhanced real matrix and vector types .
QR decompositions are now unique (positive real R diagonal).
Complex type now has a public constructor, more intuitive.
New Digamma (Psi) special function.
Various other small changes.
For more details have a look at the download page or at the Iridium tracker change log. [Less]
|
Posted
almost 17 years
ago
by
Christoph Rüegg
The next release of Math.NT Iridium, Iteration 16, comes with a revised interpolation architecture and implementation.
Up to now, the interpolation classes have been a bit akward to use, partially because of the SampleList collection class you had
... [More]
to use, and because of the design in general. It also provided only two interpolation algorithms, which are both somewhat outdated these days.
The new implementation provides some newer more stable algorithms (like Floater and Hormann’s algorithm for pole-free rational interpolation) together with a cleaner design. Additionally, some of the algoriths can also provide the first and second derivative and in the case of splines even a definite integration. There is also a new facade/portal class that reduces building an interpolation to one simple method call. Usually you would just use this facade class to build/precompute an interpolation, but all the algorithms are also publicly available in the Algorithms-namespace, so if you know what you’re doing you can use them directly.
Sample code, which uses a pole-free rational barycentric interpolation (the default algorithm) with 5 given sample pairs (t, x(t)):
double[] t = new double[] { -2, -1, 0, 1, 2};double[] x = new double[] { 1, 2, -1, 0, 1};IInterpolationMethod method = Interpolation.Create(t, x);double res = method.Interpolate(0.5);
Simple, isn’t it?
Unfortunately it was not possible to fit the new design into the old classes, so the new classes and interfaces replace the old classes completely. These old classes are still there for now and continue to work, but they’re marked as obsolete and we recommend strongly to upgrade your code base to the new architecture.
The new architecture has already been checked in to the source repository. If you’re interested, please have a look at it and provide feedback - it’s not released yet so we can still change it completely :). [Less]
|
Posted
almost 17 years
ago
The next release of Math.NT Iridium, Iteration 16, comes with a revised interpolation architecture and implementation.Up to now, the interpolation classes have been a bit akward to use, partially because of the SampleList collection class you had to
... [More]
use, and because of the design in general. It also provided only two interpolation algorithms, which are both somewhat outdated these days.The new implementation provides some newer more stable algorithms (like Floater and Hormann's algorithm for pole-free rational interpolation) together with a cleaner design. Additionally, some of the algoriths can also provide the first and second derivative and in the case of splines even a definite integration. There is also a new facade/portal class that reduces building an interpolation to one simple method call. Usually you would just use this facade class to build/precompute an interpolation, but all the algorithms are also publicly available in the Algorithms-namespace, so if you know what you're doing you can use them directly.Sample code, which uses a pole-free rational barycentric interpolation (the default algorithm) with 5 given sample pairs (t, x(t)):double[] t = new double[] { -2, -1, 0, 1, 2};double[] x = new double[] { 1, 2, -1, 0, 1};IInterpolationMethod method = Interpolation.Create(t, x);double res = method.Interpolate(0.5);Simple, isn't it?Unfortunately it was not possible to fit the new design into the old classes, so the new classes and interfaces replace the old classes completely. These old classes are still there for now and continue to work, but they're marked as obsolete and we recommend strongly to upgrade your code base to the new architecture.The new architecture has already been checked in to the source repository. If you're interested, please have a look at it and provide feedback - it's not released yet so we can still change it completely :). [Less]
|
Posted
about 17 years
ago
Iteration 14 of Math.NET Iridium (Numerics) is now available, as 2008 April Release with Version 2008.4.14.425. Grab it here.Sorry for the very short release cycle (just one week after iteration 12). The reason is that I won't be able to work on
... [More]
Math.NET for the next three weeks and that some of the fixes and changes are important enough to not let you wait three weeks for no reason.Please continue reporting issues and bugs you find, it's very useful and helps making the whole project better. There's also a big chance that the issue will actually be fixed: in the last few releases we always managed to fix all bugs we were aware of at that point. Thanks!Team: Christoph Rüegg, Joannès Vermorel, Matthew KitchinSummary:Bugs: All known 3 bugs have been fixed.Better special function precision (Gamma, Beta, Erf, Distributions etc): now up to 12 - 14 digits. New direct/real gamma function, new harmonic number function.Interpolation: usability enhancements (better double-array support, less user code) New Features:IRID-122: Core - New direct Gamma function (additional to GammaLn) with negative value supportIRID-123: Core - New Special Function: Harmonic NumbersEnhancements:IRID-121: Core - Better numerical precision for Gamma functionIRID-125: Interpolation - Additional interpolation and sample list constructors for double arrays.IRID-126: Interpolation - Better interpolation order access and defaultsFixed Bugs:IRID-119: Interpolation - Polynomial Extrapolation in positive direction throws IndexOutOfRangeExceptionIRID-120: Linear Algebra - Infinite recursionIRID-124: Linear Algebra - Matrix.CopyToArray - wrong indexer in inner loop condition.For more details have a look at the Iridium tracker change log. [Less]
|
Posted
about 17 years
ago
by
Christoph Rüegg
Iteration 14 of Math.NET Iridium (Numerics) is now available, as 2008 April Release with Version 2008.4.14.425. Grab it here.
Sorry for the very short release cycle (just one week after iteration 12). The reason is that I won't be able to work on
... [More]
Math.NET for the next three weeks and that some of the fixes and changes are important enough to not let you wait three weeks for no reason.
Please continue reporting issues and bugs you find, it's very useful and helps making the whole project better. There's also a big chance that the issue will actually be fixed: in the last few releases we always managed to fix all bugs we were aware of at that point. Thanks!
Team: Christoph Rüegg, Joannès Vermorel, Matthew Kitchin
Summary:
Bugs: All known 3 bugs have been fixed.
Better special function precision (Gamma, Beta, Erf, Distributions etc): now up to 12 - 14 digits.
New direct/real gamma function, new harmonic number function.
Interpolation: usability enhancements (better double-array support, less user code)
New Features:
IRID-122: Core - New direct Gamma function (additional to GammaLn) with negative value support
IRID-123: Core - New Special Function: Harmonic Numbers
Enhancements:
IRID-121: Core - Better numerical precision for Gamma function
IRID-125: Interpolation - Additional interpolation and sample list constructors for double arrays.
IRID-126: Interpolation - Better interpolation order access and defaults
Fixed Bugs:
IRID-119: Interpolation - Polynomial Extrapolation in positive direction throws IndexOutOfRangeException
IRID-120: Linear Algebra - Infinite recursion
IRID-124: Linear Algebra - Matrix.CopyToArray - wrong indexer in inner loop condition.
For more details have a look at the Iridium tracker change log. [Less]
|
Posted
about 17 years
ago
Iteration 12 of Math.NET Iridium (Numerics) is now available, as 2008 March Release with Version 2008.3.12.405. Grab it here.Team: Christoph Rüegg, Joannès Vermorel, Matthew KitchinNew Contributions: Mike ShugaiSummary:Bugs: All know 3 bugs have been
... [More]
fixed.Linear Algera: Matrix Kronecker product, new Vector class, performance work (caching).Core: New Sinc function, Neper/Decibel ratio routines.Probability Distributions:
New distributions: Student's T-Distribution, F-Distribution, Skew-Alpha Stable Distribution. Assemblies no longer signed with a certificate (because verification caused network access).New Features:IRID-113: Core - Neper and Decibel Helper and FactorsIRID-116: Core - Sinc FunctionIRID-111: Linear Algebra - Matrix Kronecker Tensor ProductRID-59: Linear Algebra - New Vector class (related to the Matrix class)IRID-99: Probability Distributions - New Distribution: Skew Alpha Stable DistributionIRID-108: Probability Distributions - New Distribution: F-DistributionIRID-109: Probability Distributions - New Distribution: Student's-TEnhancements:IRID-106: Linear Algebra - Cache for on-demand computations (like decompositions)Fixed Bugs:IRID-107: Core - Complex: Unexpected power behavior at zeroIRID-97: Linear Algebra - Matrix.Identity allocation bug in non-square casesIRID-98: Probability Distributions - ArbitraryDistribution NextInt32 does not consider offset.Other:IRID-110: Remove Certificate Signing (cert validation causes network access)For more details have a look at the Iridium tracker change log. [Less]
|
Posted
about 17 years
ago
by
Christoph Rüegg
Iteration 12 of Math.NET Iridium (Numerics) is now available, as 2008 March Release with Version 2008.3.12.405. Grab it here.
Team: Christoph Rüegg, Joannès Vermorel, Matthew KitchinNew Contributions: Mike Shugai
Summary:
Bugs: All know 3 bugs
... [More]
have been fixed.
Linear Algera: Matrix Kronecker product, new Vector class, performance work (caching).
Core: New Sinc function, Neper/Decibel ratio routines.
Probability Distributions:New distributions: Student's T-Distribution, F-Distribution, Skew-Alpha Stable Distribution.
Assemblies no longer signed with a certificate (because verification caused network access).
New Features:
IRID-113: Core - Neper and Decibel Helper and Factors
IRID-116: Core - Sinc Function
IRID-111: Linear Algebra - Matrix Kronecker Tensor Product
RID-59: Linear Algebra - New Vector class (related to the Matrix class)
IRID-99: Probability Distributions - New Distribution: Skew Alpha Stable Distribution
IRID-108: Probability Distributions - New Distribution: F-Distribution
IRID-109: Probability Distributions - New Distribution: Student's-T
Enhancements:
IRID-106: Linear Algebra - Cache for on-demand computations (like decompositions)
Fixed Bugs:
IRID-107: Core - Complex: Unexpected power behavior at zero
IRID-97: Linear Algebra - Matrix.Identity allocation bug in non-square cases
IRID-98: Probability Distributions - ArbitraryDistribution NextInt32 does not consider offset.
Other:
IRID-110: Remove Certificate Signing (cert validation causes network access)
For more details have a look at the Iridium tracker change log. [Less]
|