≡ ▼

This page lists all of the functions in the LAMBDA Library. Proposed functions for the library may also be found on the candidates page.

## Interpolation

• LINTERP(xs,known_xs,known_ys) :: Linearly interpolate between the two nearest points
• PINTERP(xs,known_xs,known_ys,n) :: Polynomial interpolation between the n+1 closest points in the table
• CSPLINE(known_xs,known_ys,[x],[ms],[c]) :: Cubic Hermite Spline interpolation
• NSPLINE(known_xs,known_ys,[x]) :: Natural Cubic Spline interpolation
• SPLINE(known_xs,known_ys,[x],[cond_start],[cond_end]) :: C2 Interpolating Cubic Spline with specified end conditions

## Equation Solvers

• QUADRATIC(coeffs) :: Uses the quadratic formula to solve ax^2+bx+c=0
• SOLVE_NR(function,xstart,[y]...) :: The Newton-Raphson method as a LAMBDA function

## Sequences, Numbering, Grids

• FIBONACCI(n) :: Return the first N values in the Fibonacci Sequence
• ISUNIFORM(vector,[precision_n]) :: Returns {TRUE;step} if the sequence vector is evenly spaced or {FALSE;MAX(step)-MIN(step)}
• LINSPACE(start,end,n) :: Sequence between start and end with n evenly spaced points
• LOGSPACE(start,end,n) :: 10^L_LINSPACE. Sequence of evenly spaced points on logarithmic scale
• RESCALE(array,lower,upper) :: Returns the array scaled to [lower,upper]
• MESHGRID(xvec,yvec) :: Create a 2D grid of X-Y coordinates
• SE(start,end) :: Create a sequence of integers or characters between start and end

## Arrays (Both Numeric and Text)

• CIRCSHIFT(array,n,[by_col]) :: Shifts the rows (or columns) of an array n times
• COMBINATIONS(array1,array2) :: Returns an array of all combinations of rows within two arrays
• COMBINR(array,r) :: Return all the combinations of size r from an nx1 array
• FLIP(array,[dimension]) :: Reverses the order of the rows or columns of an array
• FLIPLR(array) :: Reverses the order of the columns of an array
• FLIPUD(array) :: Reverses the order of the rows of an array
• REPARRAY(array,m_vert,n_horiz) :: Repeat an array m times vertically and n times horizontally
• REPELEM(array,m_vert,n_horiz) :: Repeat the elements of an array m times vertically and n times horizontally.
• REPLACEBLOCK(array,i,j,new_block) :: Replace a block within an array by specifying the starting (i,j) location
• ROT90(array,[n]) :: Rotates the array 90 degrees counterclockwise (not identical to transpose)
• SLICE(array,row_start,row_end,col_start,col_end) :: Return a subset of an array by specifying row and column start and end indices
• SPLICE(array,start_index,delete_count,insert_array,by_col) :: Splice an array to delete or insert rows or columns

## Matrix Functions

• ONES(m_rows,[n_columns]) :: Create an array or vector of ones, based on size of array or dimensions m,n
• ZEROS(m_rows,[n_columns]) :: Create an array or vector of zeros, based on size of array or dimensions m,n
• ROWSUM(matrix) :: Returns a column containing the sum of each row
• COLSUM(matrix) :: Returns a row containing the sum of each column
• CHOLESKY(A) :: Cholesky decomposition of a symmetric positive-definite matrix
• CROSS(vec_a,vec_b) :: Returns the Cross Product of vectors a and b
• DIAG(vector_or_matrix) :: Convert a vector to a Diagonal matrix or vice versa
• DOT(vec_a,vec_b) :: Returns the Dot Product of vectors a and b
• EIGENVALUE(matrix) :: Find the real eigenvalues of a matrix using the QR algorithm
• HESS(A) :: Returns the Hessenberg of a square matrix using the Householder transformation
• MAGNITUDE(a) :: Returns the magnitude of a vector or the magnitude of individual columns of a matrix
• PASCAL(n) :: Returns a Pascal matrix of size nxn
• QR(A) :: Returns the QR Decomposition of A using the Householder transformation process.

## Polynomials

• POLYFIT(known_xs,known_ys,n) :: Returns the coefficients for the nth-degree polynomial fit using LINEST
• POLYVAL(coeffs,x) :: Evalutes the nth-degree polynomial p(x) at each value of x, using coefficients from POLYFIT.
• POLYDER(coeffs) :: Returns the derivative of the polynomial defined by coefficients in descending order of power.
• POLYINT(coeffs,[k],[a],[b]) :: Returns the integral of the polynomial with integration constant k, optionally evaluated from a to b
• POLYADD(a,b) and POLYSUB(a,b) :: Add or subtract two polynomials
• POLYMULT(a,b) :: Returns the coefficients of the polynomial found by multiplying polynomials a and b.
• POLYDIV(a,b) :: Polynomial long division, returns the quotient and remainder of a / b.
• POLYCOMPAN(coeffs) :: Returns the companion matrix for a polynomial defined by coeffs
• POLYROOTS(coeffs) :: Find all the real and complex roots of a polynomial
• POLYFROMROOTS(roots) :: Create a polynomial from a vector of roots
• PPVAL(pp_array,xvec) :: Evaluate a Piecewise Polynomial at each value of x
• PPINT(pp_array,[a],[b],[cumulative]) :: Definite Integral of a Piecewise Polynomial from a to b
• PPDER(pp_array) :: Derivative of a Piecewise Polynomial

## Calculus (Finite Differences and Integration)

• DIFF(x) :: Calculate the difference between adjacent values of a column vector
• FDIFF(x,h,n) :: Calculates n-th Finite Difference Derivatives assuming uniform spacing
• PDIFF(x,y,n,order) :: Polynomial-based Finite Difference Derivatives for uneven spacing
• TRAPZ(y,[x],[dx]) :: Numerical Integration using the Trapezoidal Rule
• SIMPSON(y,[x],[dx]) :: Numerical Integration using composite Simpson's 1/3 Rule

## Text Manipulation

• TEXT2ARRAY(text,[dim]) :: Converts a text string to a row (dim=1, default) or column (dim=2) of characters
• COUNTCHAR(text,char) :: Count the number of instances of char within text. char can be a string.
• REMOVECHARS(text,chars) :: Removes all of the characters in chars (individually) from text.

## Complex Numbers

See Topic: Complex Numbers

• IM_ISCOMPLEX(matrix) :: Returns TRUE if a matrix includes at least one complex number
• IM_CTRANSPOSE(matrix) :: Returns the conjugate transpose of a complex matrix
• IM_DOT(a_vec,b_vec) :: Returns the Complex Dot Product of two vectors
• IM_SUMPRODUCT(a_vec,b_vec) :: Returns the sum of the element-wise multiplication of a and b
• IM_MMULT(a_mat,b_mat) :: Returns the matrix multiplication of a and b
• IM_ROUNDTOZERO(inumber,[epsilon]) :: Makes any |coefficient| less than epsilon=1E-14 equal to zero
• IM_ROUND(inumber,num_digits) :: Applies the ROUND function to the coefficients of inumber
• IM_TOARRAY(inumber) :: Converts z=x+yi to an array {x,y}. inumber may be a column vector.

## Conversion

• ROMAN2INT(text) :: Converts a Roman numeral like "XLII" to an integer

## Other Functions

• SFROUND(value,sig_figs,[round_opt]) :: Round a value to a number of significant figures
• SCURVE(startdates,enddates,values) :: Generate S-Curves for project management task data
• GCD(a,b) :: Finds the Greatest Common Divisor of a and b, using the Euclidean algorithm
• LCM(a,b) :: Finds the Least Common Multiple of a and b, using the Euclidean algorithm

## Utilities

• TIMER(n,function) :: Run a function n times and return the time in milliseconds
• BYROW2D(array,function) :: Return a multi-column array instead of just a single column
• BYCOL2D(array,function) :: Return a multi-row array instead of just a single row

### Follow Us On ...

Template Categories