------------------------------------------------------------------------------ pracma NEWS ------------------------------------------------------------------------------ PLANNED IN NEW VERSION NEW FUNCTIONS o conv(), deconv(), and detrend(). o Riemann's Zeta Function zeta(). o Numerical differentiation with deriv() and hessian(), and Richardson's extrapolation in gradient(). CHANGES IN VERSION 0.4-0 (2011-05-10) OTHER CHANGES o Added tests for functions since version 0.3-7. CHANGES IN VERSION 0.3-9 (2011-05-09) NEW FUNCTIONS o and() and or() aliases for all(), any(). OHER CHANGES o Removed lgammaz() because of a serious bug. CHANGES IN VERSION 0.3-8 (2011-05-06) NEW FUNCTIONS o pchip() and option `cubic' for interp1() interpolation. o The complex gamma functions gammaz(), lgammaz(). o hadamard() and toeplitz() matrices. OTHER CHANGES o Renamed kernel() to nullspace() because of name clash. CHANGES IN VERSION 0.3-7 (2011-05-04) NEW FUNCTIONS o Rank of a matrix, mrank(), and kernel() for the nullspace. o orth(), orthogonal basis of the image space, and subspace() determines the angle between two subspaces. o normest() for estimating the (Frobenius) norm of a matrix, and cond() determines the condition number of a matrix. OTHER CHANGES o Renamed vnorm() to vectornorm() to differentiate it from other matrix norms. CHANGES IN VERSION 0.3-6 (2011-04-30) NEW FUNCTIONS o fact(), more accurate than the R internal function `factorial'. o ezplot() as an alias for curve(), but with option ``fill = TRUE''. o aitken() for accelerating iterations. OTHER CHANGES o Renamed polycnv() to polymul(). o Renamed outlierMAD() to hampel(). o Renamed barylag() to barycentricInterp(). CHANGES IN VERSION 0.3-5 (2011-04-23) NEW FUNCTIONS o agm() for the arithmetic-geometric mean. o Lambert W function lambertWp() for the real principal branch. o ``Complex Step'' derivation with complexstep() and jacobiancsd(). CHANGES IN VERSION 0.3-4 (2011-04-21) NEW FUNCTIONS o Barycentric Lagrange interpolation through barylag(). o polyfit2() fits a polynomial that exactly meets one additional point. OTHER CHANGES o Added more references to the help entry `pracma-package.Rd'. CHANGES IN VERSION 0.3-3 (2011-04-19) NEW FUNCTIONS o hornerdefl() for also returning the deflated polynomial. o newtonHorner() combining Newton's method and the Horner scheme for for root finding for polynomials. o jacobian() computes the Jacobian of a function R^n --> R^m as simple numerical derivative. o newtonsys() applies Newton's method to functions R^n --> R^n with special application to root finding of complex functions. OTHER CHANGES o newton() renamed to newtonRaphson(). CHANGES IN VERSION 0.3-2 (2011-04-17) NEW FUNCTIONS o Sorting functions: bubbleSort(), insertionSort(), selectionSort(), shellSort(), heapSort(), mergeSort(), mergeOrdered(), quickSort(), quickSortx(), is.sorted(), and testSort(). o Functions from number theory: eulersPhi(), moebiusFun() and the mertensFun(), sigma(), tau(), omega(), and Omega(). CHANGES IN VERSION 0.3-1 (2011-04-16) NEW FUNCTIONS o Chebyshev polynomials of the first kind: chebPoly(), chebCoeff(), and chebApprox(). CHANGES IN VERSION 0.3-0 (2011-04-09) OTHER CHANGES o New version of news.Rd, news.pdf. o More test functions for root finding and quadrature. CHANGES IN VERSION 0.2-9 NEW FUNCTIONS o fnorm() and the Runge function runge(). o contfrac(), rat(), and rats() for continuous fractions. o meshgrid() and magic(). CHANGES IN VERSION 0.2-8 NEW FUNCTIONS o quad() adaptive Simpson quadrature. o Minimum finding with fibsearch() and golden_ratio(). o Root finding with newton(), secant(), and brentDekker(). CHANGES IN VERSION 0.2-7 NEW FUNCTIONS o Regular expression functions regexp(), regexpi(), regexprep() and refindall(). CHANGES IN VERSION 0.2-6 NEW FUNCTIONS o String functions blanks(), strtrim(), deblank(), strjust(), and strrep(). o interp1() one-dimensional interpolation (incl. spline) CHANGES IN VERSION 0.2-5 NEW FUNCTIONS o Matlab functions mode(), clear() and beep(). CHANGES IN VERSION 0.2-4 NEW FUNCTIONS o primroot() finds the smallest primitive root modulo a given n; needed functions are modpower() and modorder(). o humps() and sinc(): Matlab test functions. o Root finding through bisection: bisect(), regulaFalsi(). o outlierMAD(), findpeaks(), and piecewise(). o polycnv() for polynomial multiplication. OTHER CHANGES o Functions extgcd(), gcd(), and lcm() have been renamed to extGCD(), GCD(), and LCM() respectively. CHANGES IN VERSION 0.2-3 NEW FUNCTIONS o strfind(), strfindi(), and findstr(). o circlefit() fitting a circle to plane points. o mldivide() and mrdivide(), emulating the Matlab backslash operator. CHANGES IN VERSION 0.2-2 NEW FUNCTIONS o vnorm() vector norm CORRECTIONS o Warning about a nasty "non-ASCII input" in the savgol.RD file has been resolved. CHANGES IN VERSION 0.2-1 NEW FUNCTIONS o horner() implementing the horner scheme for evaluating a polynomial and its derivative. o savgol() Savitzki-Golay smoothing and needed pseudoinverse pinv(). RESTARTED AS VERSION 0.2-0 NAME CHANGE o Package renamed to 'pracma' to avoid name clashes with packages such as 'matlab' that are sticking closer to the original. OTHER CHANGES o Added 'pracma-package' section to the manual. CHANGES IN VERSION 0.1-9 NEW FUNCTIONS o reshape(), repmat(), and blkdiag() matrix functions. o combs() chooses all combinations of k elements out of n, and randcomb() generates a random selection. o perms() generates all permutations, randperm() a random permutation. o Pascal triangle as pascal(); nchoosek() returns binomial coefficients. o Some string functions: strcmp(), strcmpi(), strcat(). CHANGES IN VERSION 0.1-8 NEW FUNCTIONS o std() as refinement of the standard deviation function. o ceil() and fix() as aliases for ceiling() and trunc(). [floor() and round() already exist in R.] o Modulo functions mod(), rem() and integer division idiv(). o Integer functions related to the Euclidean algorithm: extgcd(), gcd(), lcm(), coprime(), and modinv(). o distmat() and crossn(), the vector product in n-dimensional space. CHANGES IN VERSION 0.1-7 NEW FUNCTIONS o size(), numel(), ndims(), isempty(), and find(). o eye(), ones(), zeros(). o Functions returning random numbers: rand(), randn(), randi(). o linspace(), logspace(), and logseq() for linearly, logarithmically, and exponentially spaced sequences. CHANGES IN VERSION 0.1-6 NEW FUNCTIONS o Matrix functions mdiag() and mtrace() added. inv() is introduced as an alias for solve() in R. o Generate special matrices hankel(), rosser(), and wilkinson(). kron() is an alias for the R function kronecker(). OTHER CHANGES o Renamed factors() to ifactor() to distiguish it more clearly from factors as used in R. CHANGES IN VERSION 0.1-5 NEW FUNCTIONS: o Added function for flipping or rotating numeric and complex matrices: flipdim(). flipud(), fliplr(), and rot90(). CHANGES IN VERSION 0.1-4 NEW FUNCTIONS: o Added functions for generating sequences of (log-)linearly spaced numeric values: linspace() and logspace(). Note that the functions in the `matlab' package are not exactly mimicking the corresponding Matlab/Octave functions. o Added basic complex functions real(), imag(), conj(), and angle() which are essentially only aliases of the R functions Re(), Im(), or Conj(). angle() returns the angle of a complex number in radians. The R function Mod() is here only available as abs(). CHANGES IN VERSION 0.1-3 NEW FUNCTIONS: o Added compan() function for the `companion' matrix; the eig() function is an alias for the R eigen()values function. o Added the polynomial functions poly(), polyder(), polyfit(), polyint(), and polyval(). o roots() returns real and complex roots of polynomials. OTHER CHANGES o Simplified the trapz() function. CHANGES IN VERSION 0.1-2 NEW FUNCTIONS o Added functions from number theory: primes(), isprime() and factors(). The corresponding function for factors() in Matlab/Octave is called factor(), but that name should not be shadowed in R! o Added the polyarea() and trapz() functions. CHANGES IN VERSION 0.1-1 NEW FUNCTIONS o Added some simple functions such as nthroot(), pow2(), and nextpow2(). o dot() and cross() functions for scalar and vector product. o Generate matrices through vander() and hilb(). INITIAL VERSION 0.1-0 INSTALLATION o `matlab4r' will be a pure R package without using any source code. Therefore, installation will be immediate on all platforms. INTENTION o This package provides R implementations of more advanced math functions from Matlab and Octave (and the Euler Math Toolbox) with a special view on optimization and time series routines.