Skip to content
Snippets Groups Projects
Commit 8d6643fa authored by Sokol Serguei's avatar Sokol Serguei
Browse files

v0.2.1 minor twiks in description


Signed-off-by: default avatarSerguei Sokol <sokol@insa-toulouse.fr>
parent e9ac86a1
No related branches found
No related tags found
No related merge requests found
Package: gmresls
Title: Solve Least Squares with GMRES(k)
Version: 0.2
Version: 0.2.1
Date: 2024-10-15
Authors@R:
person("Serguei", "Sokol", , "sokol@insa-toulouse.fr", role = c("aut", "cre"),
comment = c(ORCID = "0000-0002-5674-3327"))
Description: Solves a least squares system Ax=b (dim(A)=(m,n) with m >= n) with a preconditioner B: BAx=Bb (dim(B)=(n,m)). Implemented method uses GMRES(k) with callback functions, i.e. no explicit A or B are required. GMRES can be restarted after k iterations.
Description: Solves a least squares system 'Ax~=b' (dim(A)=(m,n) with m >= n) with a precondition matrix B: 'BAx=Bb' (dim(B)=(n,m)). Implemented method is based on 'GMRES' (Generalized minimal residual, <doi:10.1137/0907058>) with callback functions, i.e. no explicit A, B or b are required.
License: GPL (>= 3)
Encoding: UTF-8
Roxygen: list(markdown = TRUE)
RoxygenNote: 7.3.2
Suggests:
RUnit
BugReports: https://forgemia.inra.fr/mathscell/gmresls/-/issues
## v1.0.0 2024-??-??
## v0.2.1 2024-10-15
- initial R implemetation
# gmresls
<!-- badges: start -->
<!-- badges: end -->
The goal of gmresls is to solve a least squares problem Ax\~=b for which the matrix A is not explicitly known. We suppose that it exists a preconditioner B such that BA is somewhat close to I (identity matrix of appropriate size). This preconditioner B does not have to be explicit either.
The goal of gmresls is to solve a least squares problem Ax\~=b for which the matrix A and may be vector b are not explicitly known. We suppose that it exists a precondition operator B such that BA is somewhat close to I (identity matrix of appropriate size). This operator B does not have to be explicit either. To simulate A, B and b actions, user have to supply callback functions f_resid() and f_BAx(). The algorithm is based of GMRES (Generalized minimal residual)
## Installation
......@@ -30,3 +26,14 @@ f_BAx=function(x,...) with(list(...), crossprod(A, A%*%x))
x=gmresls(f_resid, f_BAx, A=A, b=b)
stopifnot(all.equal(c(x), c(qr.solve(A, b))))
```
### Legal information
Author: Serguei Sokol (INRAE/TBI/Mathematics cell)
Copyrights 2024, INRAE/INSA/CNRS
License: GPL (>=3)
Issue reporting: https://forgemia.inra.fr/mathscell/gmresls/-/issues
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment