Release Notes

 

Changes in IMSL C# Numerical Library Version 6.5.2

Updated to support .NET Framework version 4.5.2 and 4.5.1

MKL is not supported

Flexnet license management has been removed

 

Imsl.DataMining.Neural

Neural Nets

LeastSquaresTrainer.Train           

Improved calculation of the gradient.

 

Changes in IMSL C# Numerical Library Version 6.5.1

Imsl.Math

Optimization

MinConNLP.Solve                              

Resolved buffer overrun issue.

Classes and Methods New to the IMSL C# Numerical Library Version 6.5

Imsl.Math

Error Handling

NoProgressException

Exception thrown when More's technique is not making any progress.

Linear Systems

ComplexLU.GetL

Returns the lower triangular portion of the LU factorization of input matrix "a".

ComplexLU.GetPermutationMatrix

Returns the the permutation matrix which results from the LU factorization of input matrix "a".

ComplexLU.GetU

Returns the unit upper triangular portion of the LU factorization of input matrix "a".

LU.GetL

Returns the lower triangular portion of the LU factorization of input matrix "a".

LU.GetPermutationMatrix

Returns the the permutation matrix which results from the LU factorization of input matrix "a".

LU.GetU

Returns the unit upper triangular portion of the LU factorization of input matrix "a".

Optimization

BoundedLeastSquares.Solve

Solves a nonlinear least-squares problem subject to bounds on the variables using a modified Levenberg-Marquardt algorithm. This method is the identical replacement for the deprecated method BoundedLeastSquares.solve.

Imsl.Stat

Error Handling

NoProgressException

Exception thrown when More's technique is not making any progress.

Changes in IMSL C# Numerical Library Version 6.5

General

Changed links to Microsoft SDK webpages for HTML documentation.

Added support for the FLEXLM_BATCH FlexNet environment variable. This prevents popups from being displayed for FlexNet errors/warnings.

The properties NumberOfProcessors and/or Parallel have been added to many of the classes/methods which use the Task Parallel Library in .NET 4.0.

Gallery

Added TCB Spline to the Spline demo.

Imsl.Chart2D

General

Corrected problem with charts with axes on both the left and right side which resulted in inconsistencies of the tick intervals and ticks which appear to be outside the axis range.

Imsl.Math

Linear Systems

SuperLU

Made corrections so that the warning about a singular matrix is printed.

Cholesky

Updated class description with A = RRT.

Matrix.Multiply

Overloaded method with processors argument.

ComplexMatrix.Multiply

Overloaded method with processors argument.

Optimization

BoundedLeastSquares

Implemented a fix for a potential infinite loop in More's technique.

BoundedLeastSquares.solve

This method has been deprecated and replaced by BoundedLeastSquares.Solve.

NonlinLeastSquares

Updated the documentation for the methods and properties SetXscale, SetFscale, GradientTolerance, and StepTolerance.

Implemented a fix for a potential infinite loop in More's technique.

QuadraticProgramming

Modified the write statement in Example 3.

Imsl.Stat

Regression

NonlinearRegression

Implemented a fix for a potential infinite loop in More's technique.

Probability Distribution Functions and Inverses

Pdf.NoncentralBeta

Corrected an equation in the documentation.

GammaDistribution

Enhanced the documentation.

IDistribution

Enhanced the documentation.

IProbabilityDistribution

Enhanced the documentation.

LogNormalDistribution

Enhanced the documentation.

NormalDistribution

Enhanced the documentation.

PoissonDistribution

Enhanced the documentation.

Random Number Generation

Added description for the valid value of the seeds for the Random constructor.

Random.CanonicalCorrelation

Changed from a static public method to a static method.

Random.NextGaussianCopula

Overloaded version using the k argument has been deprecated.

Random.NextMultivariateNormal

Overloaded version using the k argument has been deprecated.

Random.NextStudentsTCopula

Overloaded version using the k argument has been deprecated.

Probability Distribution Functions and Inverses

Cdf.Beta

A new algorithm is used to improve accuracy in the tails of the distribution.

Cdf.NoncentralF

Improved performance.

Time Series and Forecasting

ARMA

Removed extra terms from the difference equation in the documentation.

Implemented a fix for a potential infinite loop in More's technique.

Classes and Methods New to the IMSL C# Numerical Library Version 6.0

Imsl

 

Error Handling

 

Logger

Logs intermediate results and notes from IMSL C# classes.

 

IMSLUnexpectedErrorException

Signals that an unexpected error has occurred.

 

Messages.ThrowIllegalStateException

Throws an IllegalStateException with a formatted String argument.

 

Imsl.Math

 

Linear Systems

 

Matrix.InverseLowerTriangular

Returns the inverse of the lower triangular matrix a.

 

Matrix.InverseUpperTriangular

Returns the inverse of the upper triangular matrix a.

 

Eigensystems Analysis

 

Eigen

A constructor was added.

 

Eigen.MaxIterations

Set or returns the maximum number of iterations.

 

Eigen.Solve

Solves for the eigenvalues and (optionally) the eigenvectors of a real square matrix.

 

Interpolation and Approximation

 

CsTCB

Extension of the Spline class to handle a tension-continuity-bias (TCB) cubic spline, also known as a Kochanek-Bartels spline and is a generalization of the Catmull-Rom spline.

 

Spline2D.Integral

Returns the value of an integral of a tensor-product spline on a rectangular domain.

 

Spline2DLeastSquares

Computes a two-dimensional, tensor-product spline approximant using least squares.

 

Differential Equations

 

ODE

ODE represents and solves an initial-value problem for ordinary differential equations.

 

FeynmanKac

Solves the generalized Feynman-Kac PDE.

 

OdeAdamsGear

Extension of the ODE class to solve a stiff initial-value problem for ordinary differential equations using the Adams-Gear methods.

 

Nonlinear Equations

 

ZerosFunction

Finds the real zeros of a real, continuous, univariate function, f(x).

 

ZeroSystem.Logger

Returns the logger object.

 

Optimization

 

BoundedVariableLeastSquares

Solve a linear least-squares problem with bounds on the variables.

 

NonNegativeLeastSquares

Solves a linear least squares problem with nonnegativity constraints.

 

NumericalDerivatives

Compute the Jacobian matrix for a function f(y) with m components in n independent variables.

 

Special Functions

 

Sfun.Erfce

Returns the exponentially scaled complementary error function.

 

Sfun.GammaIncomplete

Evaluates the incomplete gamma function.

 

Sfun.Psi

Returns the logarithmic derivative of the gamma function, also called the digamma function.

 

Sfun.Psi1

Returns the ψ 1 function, also known as the trigamma function.

 

Imsl.Stat

 

Basic Statistics

 

Regression

 

StepwiseRegression.Intercept

Returns the intercept.

 

StepwiseRegression.SetMeans

Sets the means of the variables.

 

 

Analysis of Variance

 

ANCOVA

Analyzes a one-way classification model with covariates.

 

ANOVA.GetConfidenceInterval

Computes the confidence interval associated with the difference of means between two groups using a specified method.

 

Time Series and Forecasting

 

AutoARIMA

Automatically identifies time series outliers, determines parameters of a multiplicative seasonal model and produces forecasts that incorporate the effects of outliers whose effects persist beyond the end of the series.

 

ARMAOutlierIdentification

Detects and determines outliers and simultaneously estimates the model parameters in a time series whose underlying outlier free series follows a general seasonal or nonseasonal ARMA model. Allows computation of forecasts.

 

LackOfFit

Performs lack-of-fit test for a univariate time series or transfer function given the appropriate correlation function.

 

Multivariate Analysis

 

DiscriminantAnalysis.Classify

Classifies a set of observations using the linear or quadratic discriminant functions generated during the training process.

 

DiscriminantAnalysis.Downdate

Removes a set of observations from the discriminant functions.

 

DiscriminantAnalysis.NumberOfRowsMissing

Returns the number of rows of data encountered containing missing values (Double.NaN).

 

Survival and Reliability Analysis

 

KaplanMeierEstimates

Computes Kaplan-Meier (or product-limit) estimates of survival probabilities for a sample of failure times that possibly contain right consoring.

 

KaplanMeierECDF

Computes the Kaplan-Meier reliability function estimates or the CDF based on failure data that may be multi-censored.

 

LifeTables

Computes population (current) or cohort life tables based upon the observed population sizes at the middle (for population table) or the beginning (for cohort table) of some user specified age intervals.

 

ProportionalHazards

Analyzes survival and reliability data using Cox's proportional hazards model.

 

Probability Distribution Functions and Inverses

Cdf.NoncentralBeta

Evaluates the noncentral beta cumulative distribution function (CDF).

Cdf.NoncentralF

Evaluates the noncentral F cumulative distribution function (CDF).

Cdf.Logistic

Evaluates the logistic cumulative probability distribution function.

Cdf.Pareto

Evaluates the Pareto cumulative probability distribution function.

InvCdf.Logistic

Returns the inverse of the logistic cumulative probability distribution function.

InvCdf.NoncentralBeta

Evaluates the inverse of the noncentral beta cumulative distribution function (CDF).

InvCdf.NoncentralF

Evaluates the inverse of the noncentral F cumulative distribution function (CDF).

InvCdf.Pareto

Returns the inverse of the Pareto cumulative probability distribution function.

Pdf.Logistic

Evaluates the logistic probability density function.

Pdf.NoncentralBeta

Evaluates the noncentral beta probability density function (PDF).

Pdf.NoncentralChi

Evaluates the noncentral chi-squared probability density function.

Pdf.NoncentralF

Evaluates the noncentral F probability density function (PDF).

Pdf.NoncentralStudentsT

Evaluates the noncentral Student's t probability density function.

Pdf.Normal

Evaluates the normal (Gaussian) probability density function.

Pdf.Pareto

Evaluates the Pareto probability density function.

IDistribution

Public interface for the user-supplied distribution function.

IProbabilityDistribution

Public interface for the user-supplied probability distribution function.

GammaDistribution

Evaluates a gamma probability distribution.

LogNormalDistribution

Evaluates a lognormal probability distribution.

NormalDistribution

Evaluates a normal (Gaussian) probability distribution.

PoissonDistribution

Evaluates a Poisson probability distribution.

Random Number Generation

Random.CanonicalCorrelation

Generates a canonical correlation matrix from an arbitrarily distributed multivariate deviate sequence with a Gaussian Copula dependence structure.

Random.NextGaussianCopula

Generate pseudorandom numbers from a Gaussian Copula distribution.

Random.NextStudentsTCopula

Generate pseudorandom numbers from a Student's t Copula distribution.

Random.NextZigguratNormalAR

Generates pseudorandom numbers using the Ziggurat method.

Imsl.Finance

Finance

BasisPart.GetDaysInYear

Component of DayCountBasis. The day count basis consists of a month basis and a yearly basis. Each of these components implements this interface.

DayCountBasis.GetDaysInYear

The Day Count Basis. Rules for computing the number or days between two dates or number of days in a year.

Imsl.Chart

Chart 2D

Annotation

Draws an annotation.

Draw.DrawClippedImage

Draws an image such that any portion of the image beyond the axis range is clipped.

Treemap

Treemap creates a chart from two arrays of double precision values or one data array and one array of java.awt.Color values.

Imsl.Datamining

Data Mining

NaiveBayesClassifier

Trains a Naive Bayes Classifier

Changes in IMSL C# Numerical Numerical Library Version 6.0

General

ErrorMessages Resource Bundle

Fixed misspelling, improved consistency and removed extra whitespace.

Gallery

The Gallery has been updated.

Optimization Chapter Introduction

Clarified documentation by stating that it is the responsibility of the user to ensure that the user-supplied evaluating function always returns valid results.

Quadrature Chapter Introduction

Clarified documentation by stating that it is the responsibility of the user to ensure that the user-supplied evaluating function always returns valid results.

Imsl.Math

Linear Systems

Matrix.Multiply

Performance increases can be realized by taking advantage of the MKL-enhanced version of the IMSL C# Numerical Library.

ComplexMatrix.Multiply

Performance increases can be realized by taking advantage of the MKL-enhanced version of the IMSL C# Numerical Library.

Eigensystem Analysis

Eigen

Performance increases can be realized by taking advantage of the MKL-enhanced version of the IMSL C# Numerical Library.

SymEigen

Performance increases can be realized by taking advantage of the MKL-enhanced version of the IMSL C# Numerical Library.

Interpolation and Approximation

CsShape

No longer issues an index out of bounds exception.

RadialBasis

Added examples for RadialBasis.Function, RadialBasis.Gaussian and RadialBasis.HardyMultiquadric to highlight the explicit use of different basis functions.

Documentation was added for RadialBasis.Gaussian and RadialBasis.HardyMultiquadric.

Transforms

FFT

Performance increases can be realized by taking advantage of the MKL-enhanced version of the IMSL C# Numerical Library.

ComplexFFT

Performance increases can be realized by taking advantage of the MKL-enhanced version of the IMSL C# Numerical Library.

Nonlinear Equations

ZeroFunction

This class has been deprecated. It has been replaced by the class ZerosFunction.

ZeroSystem

Logging enabled in ZeroSystem.

ZeroSystem

A paragraph was added to the class description.

Optimization

DenseLP

DenseLP now throws exceptions for infeasible problems.

MinUncon

Fixed resource name so that warnings are printed.

NonlinLeastSquares

Added warnings for the 4 error types.

QuadraticProgramming

A new exception was added to handle inconsistent system exceptions.

Imsl.Finance

Finance

BasisPart.GetDaysInYear

Deprecated for this release and replaced by a new BasisPart.GetDaysInYear.

Bond

Added Monthly and BiMonthly options.

Bond.Accrint

Corrected accrued interest calculation.

Bond.Yearfrac

Corrected problem where the method gave a wrong result for input days in a leap year.

DayCountBasis.GetDaysInYear

Deprecated for this release and replaced by a new DayCountBasis.GetDaysInYear.

Finance.Xirr

Modified to return better results.

Imsl.Stat

Basic Statistics

NormOneSample

Increased accuracy of p-values.

NormOneSample.ConfidenceMean

Clarified documentation.

NormTwoSample

Increased accuracy of p-values.

PartialCovariances

Increased accuracy of p-values.

TableTwoWay.GetFrequencyTableUsingClassmarks

Corrected description in documentation.

TableTwoWay.GetFrequencyTableUsingCutpoints

Corrected description in documentation.

Regression

LinearRegression.GetCoefficients

Replaced the SingularMatrixException exception by a LinearRegression.NotFullRank warning.

NonlinearRegression

Added missing NonlinearRegression resource entries.

Added warnings for the 4 error types.

RegressorsForGLM

Increased accuracy of p-values.

SelectionRegression

Modified to correctly account for missing values.

Increased accuracy of p-values.

StepwiseRegression

Increased accuracy of p-values.

Analysis of Variance

ANOVA

Increased accuracy of p-values.

ANOVA.GetDunnSidak

This method has been deprecated and replced by ANOVA.GetConfidenceInterval.

ANOVAFactorial

Increased accuracy of p-values.

Categorical and Discrete Data Analysis

CategoricalGenLinModel

Increased accuracy of p-values.

Removed confusing statement from documentation.

Added a test for rank deficiency.

CategoricalGenLinModel.LowerEndpointColumn

Corrected implementation.

ContingencyTable

Increased accuracy of p-values.

Tests of Goodness of Fit

ChiSquaredTest

Increased accuracy of p-values.

Expanded documentation of nParameters and property DegreesOfFreedom.

ChiSquaredTest

Overloaded the Update method to make the frequencies optional.

NormalityTest.LillieforsTest

Corrected the way ties are identified.

Time Series and Forecasting

ARMA

Resolved seg fault and flat forecast issue.

ARMAEstimateMissing

MaxIterations setting now applies to LeastSquares estimation. A TooManyIterationsException is thrown rather than rethrowing ARMA exceptions TooManyIterationsExceptions and TooManyFcnEvaluations which may occur during the LeastSquares estimation

Multivariate Analysis

ChiSquaredTest

Increased accuracy of p-values.

DiscriminantAnalysis

Increased accuracy of p-values.

DiscriminantAnalysis.NRowsMissing

This property has been deprecated. It has been replaced by the property NumberOfRowsMissing.

DiscriminantAnalysis.Update

Some Update methods have been deprecated. Each has been replaced by an equivalent Update method.

FactorAnalysis

Changed NoDegreesOfFreedomException exception to a warning.

Increased accuracy of p-values.

Probability Distribution Functions and Inverses

The Cdf class has been divided into the three classes Cdf, InvCdf, and Pdf. Therefore the methods which have been moved from the Cdf class have been deprecated and replaced by the functionally equivalent versions in the new class. Below is a list of the methods which have been deprecated followed by the functionally equivalent version which has been added.

Cdf.BinomialProb

Pdf.Binomial

Cdf.PoissonProb

Pdf.Poisson

Cdf.BetaProb

Pdf.Beta

Cdf.FProb

Pdf.F

Cdf.HypergeometricProb

Pdf.Hypergeometric

Cdf.GammaProb

Pdf.Gamma

Cdf.ExponentialProb

Pdf.Exponential

Cdf.ChiProb

Pdf.Chi

Cdf.WeibullProb

Pdf.Weibull

Cdf.LognormalProb

Pdf.Lognormal

Cdf.ExtremevalueProb

Pdf.Extremevalue

Cdf.RayleighProb

Pdf.Rayleigh

Cdf.DiscreteUniformProb

Pdf.DiscreteUniform

Cdf.GeometricProb

Pdf.Geometric

Cdf.InverseBeta

InvCdf.Beta

Cdf.InverseF

InvCdf.F

Cdf.InverseGamma

InvCdf.Gamma

Cdf.InverseNormal

InvCdf.Normal

Cdf.InverseChi

InvCdf.Chi

Cdf.InverseNoncentralchi

InvCdf.Noncentralchi

Cdf.InverseStudentsT

InvCdf.StudentsT

Cdf.InverseNoncentralstudentsT

InvCdf.NoncentralstudentsT

Cdf.InverseWeibull

InvCdf.Weibull

Cdf.InverseLogNormal

InvCdf.LogNormal

Cdf.InverseExponential

InvCdf.Exponential

Cdf.InverseExtremeValue

InvCdf.ExtremeValue

Cdf.InverseRayleigh

InvCdf.Rayleigh

Cdf.InverseUniform

InvCdf.Uniform

Cdf.InverseDiscreteUniform

InvCdf.DiscreteUniform

Cdf.InverseGeometric

InvCdf.Geometric

Cdf.Chi

Expanded the range of allowable arguments for degrees of freedom.

Cdf.F

Improved lower tail accuracy.

Cdf.Chi

Improved lower tail accuracy.

Cdf.Noncentralchi

Improved lower tail accuracy.

InvCdf.F

Corrected results for large denominator df.

Pdf.Gamma

Corrected calculation of gamma pdf.

Random Number Generation

General

Added Usage Notes.

Random.NextNormal

Eliminated cases where +infinity/-infinity is returned.

Imsl.Io

Imsl.Datamining.Neural

Neural Nets

ScaleFilter

Corrected possible divide by zero.

Imsl.Chart

Chart 2D

AxisLabel.Paint

Added checks to avoid printing labels beyond the extent of the chart window.

Contour

Modified logic where negative values for Max X and Y data caused distortions.

Colormap

Renamed the WHITE_BLUE_LINEAR to WB_LINEAR and documented as the reverse of BW_LINEAR. The name WHITE_BLUE_LINEAR no long exists since BLUE_WHITE should be used instead.

HeatMap

Modified logic where negative values for Max X and Y data caused distortions.