solve {base}
Description
This generic function solves the equation a %*% x = b for x, where b can be either a vector or a matrix.
Usage
solve(a, b, ...) ## S3 method for class 'default': solve((a, b, tol, LINPACK = FALSE, ...))
Arguments
- a
- a square numeric or complex matrix containing the coefficients of the linear system.
- b
- a numeric or complex vector or matrix giving the right-hand side(s) of the linear system. If missing,
bis taken to be an identity matrix andsolvewill return the inverse ofa. - tol
- the tolerance for detecting linear dependencies in the columns of
a. IfLINPACKisTRUEthe default is1e-7, otherwise it is.Machine$double.eps. Future versions of R may use a tighter tolerance. Not currently used with complex matricesa. - LINPACK
- logical. Should LINPACK be used (for compatibility with R < 1.7.0)? Otherwise LAPACK is used.
- ...
- further arguments passed to or from other methods
Details
a or b can be complex, but this uses double complex arithmetic which might not be available on all platforms and LAPACK will always be used.
The row and column names of the result are taken from the column names of a and of b respectively. If b is missing the column names of the result are the row names of a. No check is made that the column names of a and the row names of b are equal.
For back-compatibility a can be a (real) QR decomposition, although qr.solve should be called in that case. qr.solve can handle non-square systems.
References
Anderson. E. and ten others (1999) LAPACK Users' Guide. Third Edition. SIAM.
Available on-line at http://www.netlib.org/lapack/lug/lapack_lug.html. Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
Note
LINPACK = TRUE (for compatibility with R < 1.7.0) was formally deprecated in R 2.15.2.
See Also
solve.qr for the qr method, chol2inv for inverting from the Choleski factor backsolve, qr.solve.
Examples
Documentation reproduced from R 2.15.3. License: GPL-2.
