0% found this document useful (0 votes)
34 views

Numerical Methods Toolbox

The document describes various mathematical and statistical functions available in Excel including: - MIDENT which creates an identity matrix of a specified size up to 63x63. - MINDEX which returns the row and column position of a value in an array. - MSCALE which scales values in a matrix by row dividing by the largest element. - ARR which combines individual arrays into a final 2D array with matching rows. - Several functions for interpolation and integration including linear, cubic, trapezoidal, and Gaussian quadrature methods. - Functions for solving equations including Newton-Raphson, Gauss-Jordan elimination, and Gauss-Seidel iteration.

Uploaded by

AMP
Copyright
© © All Rights Reserved
Available Formats
Download as XLS, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views

Numerical Methods Toolbox

The document describes various mathematical and statistical functions available in Excel including: - MIDENT which creates an identity matrix of a specified size up to 63x63. - MINDEX which returns the row and column position of a value in an array. - MSCALE which scales values in a matrix by row dividing by the largest element. - ARR which combines individual arrays into a final 2D array with matching rows. - Several functions for interpolation and integration including linear, cubic, trapezoidal, and Gaussian quadrature methods. - Functions for solving equations including Newton-Raphson, Gauss-Jordan elimination, and Gauss-Seidel iteration.

Uploaded by

AMP
Copyright
© © All Rights Reserved
Available Formats
Download as XLS, PDF, TXT or read online on Scribd
You are on page 1/ 3

MIDENT(size)

Creates an identity matrix of a specified size. The size argument is optional.


Maximum allowable size 63 x 63 (larger gives #VALUE! error).
Can be used in a formula or used to fill a selection.

MINDEX(lookup_value, array_, match_type)


Returns a horizontal 2-element array containing the row and column numbers of a specified value in an array
Match_type is the number -1, 0, or 1.
If match_type is 1, returns the position of the largest value that is less than or equal to lookup_value.
If match_type is 0, returns the position of the value that is exactly equal to lookup_value, or #N/A.
If match_type is -1, returns the position of the smallest value that is greater than or equal to lookup_value.

MSCALE(array_, ScaleFactorLogical)
Calculates and applies scale factors for a NxM matrix and returns a NxM scaled matrix.
All values in a row are scaled by dividing by the largest element in that row.
Also creates a 1-column vector of N elements, containing the scale factors.
Syntax: MScale(array_,ScaleFactorLogical)
If ScaleFactorLogical = False or omitted, returns the scaled matrix.
If ScaleFactorLogical = True, returns the scale factor vector.

Arr(range1...,)
Combines individual 1-D or 2-D arrays into a final 2-D array.
All individual arrays must be "vertical" and must have same number of rows.

InterpL(lookup_value, known_x´s, known_y´s)


Performs linear interpolation, using an array of known_x´s, known_y´s.
The known_x´s must be in ascending order.

InterpC(lookup_value, known_x´s, known_y´s)


Performs cubic interpolation, using an array of known_x´s, known_y´s.
The known_x´s must be in ascending order.

InterpC2(x_lookup, y_lookup, known_x´s, known_y´s, known_z´s)


Performs cubic interpolation in a two-way table, using an array of known_x´s, known_y´s and known_z's.
known_x´s are in a column, known_y´s are in a row, or vice versa.
The known_x´s and known_y´s must be in ascending order.

dydx(expression, variable, scale_factor)


Returns the first derivative of a cell formula F(x).
expression is F(x), reference is x.
scale_factor is used to handle the case where x = 0.

d2ydx2(expression, variable, scale_factor)


Returns the second derivative of a cell formula F(x).
expression is F(x), reference is x.
scale_factor is used to handle the case where x = 0.

IntegrateT(expression, variable, from_lower, to_upper)


Integrates F(x) over a specified range, using simple trapezoidal area calculation.
expression is F(x), reference is x.
IntegrateS(expression, variable, from_lower, to_upper)
Performs integration of F(x) over a specified range, using Simpson's 1/3 rule area calculation.
expression is F(x), reference is x.

Integrate(expression, variable, from_lower, to_upper, tolerance)


Performs integration using ten-point Gauss-Legendre quadrature formula.
expression is F(x), reference is x.

NewtRaph(expression, variable, initial_value)


Returns a root of a function by Newton-Raphson method.
expression is a reference to a cell containing a formula.
variable is a cell reference.
initial_value can be a number, reference or omitted.

GoalSeek(target_cell, changing_cell, objective_value, initial_value)


Returns value of changing_cell that makes target_cell have a desired value

Bairstow(polynomial, reference)
Returns the coefficients of a regular polynomial (maximum order = 6).
Polynomial is a reference to a formula in a cell
Reference is a cell reference or a name.

GaussElim(coeff_matrix, const_vector)
Solves systems of linear equations by Gaussian Elimination.
Returns the solution vector as an array.
Selected range can be either horizontal or vertical.

GaussJordan1(coeff_matrix, const_vector, value_index)


Solves systems of linear equations by the Gauss-Jordan elimination method
Returns a single element of the solution vector, specified by value_index.

GaussJordan2(coeff_matrix, const_vector)
Solves systems of linear equations by the Gauss-Jordan elimination method
Returns the solution vector as an array.

GaussSeidel(coeff_matrix, const_vector, init_values)


Solves systems of linear equations by the Gauss-Seidel method.
Coefficients matrix cannot have zero diagonal element.

GaussSeidel2(coeff_matrix, const_vector, init_values)


Solves systems of linear equations by the Gauss-Seidel method.
This version attempts to include swapping if diagonal element = 0.

SimultEqNL(equations, variables, constants)


Finds roots of nonlinear simultaneous equations by Newton iteration method.

Runge1(x_variable, y_variable, deriv_formula, interval)


Solves an ordinary differential equation by 4th-order Runge-Kutta method.
x_variable is a reference to the independent variable x.
y_variable is a reference to the dependent variable y.
deriv_formula is a reference to the derivative dy/dx
interval is a reference to delta x

Runge3(x_variable, y_variables, deriv_formulas, interval, index)


Solves problems involving simultaneous first-order differential equations.
x_variable is a reference to the independent variable x.
y_variables is a reference to the dependent variables y(1) ... y(N).
deriv_formulas is a reference to the derivatives dy(i)/dx, in same order.
interval is a reference to delta x
index specifies the y(i) to be returned. If omitted, returns the array.

You might also like