{
  "_id": "6a624e4e717f18b497d4159b",
  "Package": "eigencore",
  "Title": "Certified Partial Eigenvalue and Singular Value Computation",
  "Version": "1.0.0",
  "Authors@R": "c(\nperson(\"Bradley\", \"Buchsbaum\", role = c(\"aut\", \"cre\", \"cph\"), email = \"brad.buchsbaum@gmail.com\")\n)",
  "Author": "Bradley Buchsbaum [aut, cre, cph]",
  "Maintainer": "Bradley Buchsbaum <brad.buchsbaum@gmail.com>",
  "Description": "Computes the top-k singular triplets or eigenpairs of\nlarge sparse and structured matrices: the computation behind\nprincipal component analysis on big sparse data, spectral\nembeddings, and low-rank approximation. Every result carries a\nnumerical certificate with residuals, a backward-error bound,\northogonality loss, and a pass/fail flag, and bounds that can\nonly be estimated are reported as such rather than passed.\nCentered, scaled, and composed operators are solved through\nnative 'C++' kernels without forming dense matrices. Drop-in\nreplacements for the 'RSpectra' interface are included.",
  "URL": "https://bbuchsbaum.github.io/eigencore/,\nhttps://github.com/bbuchsbaum/eigencore",
  "BugReports": "https://github.com/bbuchsbaum/eigencore/issues",
  "License": "MIT + file LICENSE",
  "Encoding": "UTF-8",
  "RoxygenNote": "7.3.3",
  "VignetteBuilder": "knitr",
  "Config/testthat/edition": "3",
  "SystemRequirements": "C++17",
  "Config/Needs/website": "albersdown",
  "NeedsCompilation": "yes",
  "Packaged": {
    "Date": "2026-07-23 17:12:34 UTC",
    "User": "root"
  },
  "Repository": "https://cran.r-universe.dev",
  "Date/Publication": "2026-07-23 14:10:02 UTC",
  "RemoteUrl": "https://github.com/cran/eigencore",
  "RemoteRef": "HEAD",
  "RemoteSha": "9cc2662e60e5599cdaf218efbf3fe62da79998a2",
  "_user": "cran",
  "_type": "src",
  "_file": "eigencore_1.0.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/4422088b9345803da797b8106634a94b934e823b37d3d64970a1903bcc5c2656",
  "_filesize": 1924047,
  "_sha256": "4422088b9345803da797b8106634a94b934e823b37d3d64970a1903bcc5c2656",
  "_expires": "2026-10-31T17:24:28.000Z",
  "_created": "2026-07-23T17:12:34.000Z",
  "_published": "2026-07-23T17:24:30.192Z",
  "_jobs": [
    {
      "job": 89278822105,
      "time": 158,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8572416127"
    },
    {
      "job": 89278822098,
      "time": 183,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8572451425"
    },
    {
      "job": 89278822102,
      "time": 153,
      "config": "linux-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8572416254"
    },
    {
      "job": 89278822192,
      "time": 185,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8572451285"
    },
    {
      "job": 89277839270,
      "time": 244,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8572265497"
    },
    {
      "job": 89278822045,
      "time": 159,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "FAIL",
      "artifact": ""
    },
    {
      "job": 89278822049,
      "time": 245,
      "config": "windows-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8572381035"
    },
    {
      "job": 89278822089,
      "time": 175,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8572424380"
    }
  ],
  "_host": "GitHub-Actions",
  "_buildurl": "https://github.com/r-universe/cran/actions/runs/30028146261",
  "_status": "success",
  "_upstream": "https://github.com/cran/eigencore",
  "_commit": {
    "id": "9cc2662e60e5599cdaf218efbf3fe62da79998a2",
    "author": "Bradley Buchsbaum <brad.buchsbaum@gmail.com>",
    "committer": "cran-robot <csardi.gabor+cran@gmail.com>",
    "message": "version 1.0.0\n",
    "time": 1784815802
  },
  "_maintainer": {
    "name": "Bradley Buchsbaum",
    "email": "brad.buchsbaum@gmail.com",
    "login": "bbuchsbaum",
    "description": "",
    "uuid": 53819
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1",
      "role": "Depends"
    },
    {
      "package": "Matrix",
      "role": "Imports"
    },
    {
      "package": "methods",
      "role": "Imports"
    },
    {
      "package": "bench",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "RSpectra",
      "role": "Suggests"
    },
    {
      "package": "irlba",
      "role": "Suggests"
    },
    {
      "package": "rsvd",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    }
  ],
  "_owner": "cran",
  "_selfowned": false,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-30",
      "n": 1
    }
  ],
  "_tags": [
    {
      "name": "1.0.0",
      "date": "2026-07-23"
    }
  ],
  "_stars": 0,
  "_contributors": [
    {
      "user": "bbuchsbaum",
      "count": 1,
      "uuid": 53819
    }
  ],
  "_userbio": {
    "uuid": 6899542,
    "type": "organization",
    "name": "cran",
    "followers": 623,
    "description": "Unofficial read-only mirror of all CRAN R packages"
  },
  "_downloads": {
    "count": 0,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/eigencore"
  },
  "_devurl": "https://github.com/bbuchsbaum/eigencore",
  "_pkgdown": "https://bbuchsbaum.github.io/eigencore/",
  "_topics": [
    "openblas",
    "cpp"
  ],
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/eigencore.html",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "LICENSE",
    "manual.pdf"
  ],
  "_cranurl": false,
  "_releases": [
    {
      "version": "1.0.0",
      "date": "2026-07-23"
    }
  ],
  "_exports": [
    "adjoint",
    "alpha_beta",
    "as_operator",
    "auto",
    "backward_error",
    "both_ends",
    "center",
    "certificate",
    "check_adjoint",
    "compose",
    "crossprod_operator",
    "diagnostics",
    "eig_full",
    "eig_partial",
    "eigen_problem",
    "eigs",
    "eigs_sym",
    "euclidean",
    "general",
    "generalized_schur",
    "generalized_svd",
    "golub_kahan",
    "hermitian",
    "lanczos",
    "largest",
    "largest_imaginary",
    "largest_magnitude",
    "largest_real",
    "left_vectors",
    "linear_operator",
    "lobpcg",
    "nearest",
    "plan_solver",
    "randomized",
    "right_vectors",
    "scale_cols",
    "scale_rows",
    "shift_invert",
    "shifted_cholesky_preconditioner",
    "shifted_diagonal_preconditioner",
    "shifted_tridiagonal_preconditioner",
    "smallest",
    "smallest_imaginary",
    "smallest_magnitude",
    "smallest_real",
    "svd_partial",
    "svd_problem",
    "svds",
    "symmetric_operator",
    "values",
    "vectors"
  ],
  "_help": [
    {
      "page": "adjoint",
      "title": "Return the adjoint operator.",
      "topics": [
        "adjoint"
      ]
    },
    {
      "page": "alpha_beta",
      "title": "Extract homogeneous generalized coordinates.",
      "topics": [
        "alpha_beta"
      ]
    },
    {
      "page": "as_operator",
      "title": "Convert an object to an eigencore operator.",
      "topics": [
        "as_operator"
      ]
    },
    {
      "page": "auto",
      "title": "Automatic solver choice.",
      "topics": [
        "auto"
      ]
    },
    {
      "page": "backward_error",
      "title": "Extract backward-error diagnostics.",
      "topics": [
        "backward_error"
      ]
    },
    {
      "page": "both_ends",
      "title": "Target both algebraic ends.",
      "topics": [
        "both_ends"
      ]
    },
    {
      "page": "center",
      "title": "Center an operator by rows or columns.",
      "topics": [
        "center"
      ]
    },
    {
      "page": "certificate",
      "title": "Extract a result certificate.",
      "topics": [
        "certificate"
      ]
    },
    {
      "page": "check_adjoint",
      "title": "Check an operator adjoint identity.",
      "topics": [
        "check_adjoint"
      ]
    },
    {
      "page": "compose",
      "title": "Compose two operators.",
      "topics": [
        "compose"
      ]
    },
    {
      "page": "crossprod_operator",
      "title": "Create A^* A as an operator.",
      "topics": [
        "crossprod_operator"
      ]
    },
    {
      "page": "diagnostics",
      "title": "Extract diagnostics.",
      "topics": [
        "diagnostics"
      ]
    },
    {
      "page": "eig_full",
      "title": "Compute a full dense eigendecomposition",
      "topics": [
        "eig_full"
      ]
    },
    {
      "page": "eig_partial",
      "title": "Compute a partial eigendecomposition.",
      "topics": [
        "eig_partial"
      ]
    },
    {
      "page": "eigen_problem",
      "title": "Define an eigenproblem.",
      "topics": [
        "eigen_problem"
      ]
    },
    {
      "page": "eigs",
      "title": "RSpectra-compatible eigen shim.",
      "topics": [
        "eigs"
      ]
    },
    {
      "page": "eigs_sym",
      "title": "RSpectra-compatible symmetric eigen shim.",
      "topics": [
        "eigs_sym"
      ]
    },
    {
      "page": "euclidean",
      "title": "Euclidean vector space descriptor.",
      "topics": [
        "euclidean"
      ]
    },
    {
      "page": "general",
      "title": "General operator structure descriptor.",
      "topics": [
        "general"
      ]
    },
    {
      "page": "generalized_schur",
      "title": "Compute a dense generalized Schur decomposition",
      "topics": [
        "generalized_schur"
      ]
    },
    {
      "page": "generalized_svd",
      "title": "Compute a dense generalized singular value decomposition",
      "topics": [
        "generalized_svd"
      ]
    },
    {
      "page": "golub_kahan",
      "title": "Golub-Kahan bidiagonalization method descriptor.",
      "topics": [
        "golub_kahan"
      ]
    },
    {
      "page": "hermitian",
      "title": "Hermitian/symmetric operator structure descriptor.",
      "topics": [
        "hermitian"
      ]
    },
    {
      "page": "lanczos",
      "title": "Hermitian Lanczos method descriptor.",
      "topics": [
        "lanczos"
      ]
    },
    {
      "page": "largest",
      "title": "Target the largest algebraic values.",
      "topics": [
        "largest"
      ]
    },
    {
      "page": "largest_imaginary",
      "title": "Target the largest imaginary part.",
      "topics": [
        "largest_imaginary"
      ]
    },
    {
      "page": "largest_magnitude",
      "title": "Target the largest values by magnitude.",
      "topics": [
        "largest_magnitude"
      ]
    },
    {
      "page": "largest_real",
      "title": "Target the largest real part.",
      "topics": [
        "largest_real"
      ]
    },
    {
      "page": "left_vectors",
      "title": "Extract left singular vectors or left eigenvectors.",
      "topics": [
        "left_vectors"
      ]
    },
    {
      "page": "linear_operator",
      "title": "Create a block-native linear operator.",
      "topics": [
        "linear_operator"
      ]
    },
    {
      "page": "lobpcg",
      "title": "LOBPCG method descriptor.",
      "topics": [
        "lobpcg"
      ]
    },
    {
      "page": "nearest",
      "title": "Target values nearest a shift.",
      "topics": [
        "nearest"
      ]
    },
    {
      "page": "plan_solver",
      "title": "Plan a solver for a problem.",
      "topics": [
        "plan_solver"
      ]
    },
    {
      "page": "randomized",
      "title": "Randomized SVD method descriptor.",
      "topics": [
        "randomized"
      ]
    },
    {
      "page": "residuals",
      "title": "Extract residual diagnostics.",
      "topics": [
        "residuals",
        "residuals.eigencore_certificate",
        "residuals.eigencore_eigen_result",
        "residuals.eigencore_svd_result"
      ]
    },
    {
      "page": "right_vectors",
      "title": "Extract right singular vectors.",
      "topics": [
        "right_vectors"
      ]
    },
    {
      "page": "scale_cols",
      "title": "Scale operator columns.",
      "topics": [
        "scale_cols"
      ]
    },
    {
      "page": "scale_rows",
      "title": "Scale operator rows.",
      "topics": [
        "scale_rows"
      ]
    },
    {
      "page": "shift_invert",
      "title": "Shift-invert method descriptor.",
      "topics": [
        "shift_invert"
      ]
    },
    {
      "page": "shifted_cholesky_preconditioner",
      "title": "Shifted Cholesky preconditioner.",
      "topics": [
        "shifted_cholesky_preconditioner"
      ]
    },
    {
      "page": "shifted_diagonal_preconditioner",
      "title": "Shifted diagonal preconditioner.",
      "topics": [
        "shifted_diagonal_preconditioner"
      ]
    },
    {
      "page": "shifted_tridiagonal_preconditioner",
      "title": "Shifted tridiagonal preconditioner.",
      "topics": [
        "shifted_tridiagonal_preconditioner"
      ]
    },
    {
      "page": "smallest",
      "title": "Target the smallest algebraic values.",
      "topics": [
        "smallest"
      ]
    },
    {
      "page": "smallest_imaginary",
      "title": "Target the smallest imaginary part.",
      "topics": [
        "smallest_imaginary"
      ]
    },
    {
      "page": "smallest_magnitude",
      "title": "Target the smallest values by magnitude.",
      "topics": [
        "smallest_magnitude"
      ]
    },
    {
      "page": "smallest_real",
      "title": "Target the smallest real part.",
      "topics": [
        "smallest_real"
      ]
    },
    {
      "page": "solve.eigencore_eigen_problem",
      "title": "Solve a planned eigenproblem.",
      "topics": [
        "solve.eigencore_eigen_problem"
      ]
    },
    {
      "page": "solve.eigencore_svd_problem",
      "title": "Solve a planned SVD problem.",
      "topics": [
        "solve.eigencore_svd_problem"
      ]
    },
    {
      "page": "svd_partial",
      "title": "Compute a partial singular-value decomposition.",
      "topics": [
        "svd_partial"
      ]
    },
    {
      "page": "svd_problem",
      "title": "Define an SVD problem.",
      "topics": [
        "svd_problem"
      ]
    },
    {
      "page": "svds",
      "title": "RSpectra-compatible SVD shim.",
      "topics": [
        "svds"
      ]
    },
    {
      "page": "symmetric_operator",
      "title": "Mark an operator as symmetric/Hermitian.",
      "topics": [
        "symmetric_operator"
      ]
    },
    {
      "page": "values",
      "title": "Extract computed values.",
      "topics": [
        "values"
      ]
    },
    {
      "page": "vectors",
      "title": "Extract eigenvectors.",
      "topics": [
        "vectors"
      ]
    }
  ],
  "_readme": "https://github.com/cran/eigencore/raw/HEAD/README.md",
  "_rundeps": [
    "lattice",
    "Matrix"
  ],
  "_sysdeps": [
    {
      "shlib": "liblapack",
      "package": "libopenblas0-pthread",
      "source": "openblas",
      "version": "0.3.32+ds-5",
      "name": "openblas",
      "homepage": "https://www.openblas.net/",
      "description": "Optimized BLAS (linear algebra) library (shared lib, pthread)"
    },
    {
      "shlib": "libblas",
      "package": "libopenblas0-pthread",
      "source": "openblas",
      "version": "0.3.32+ds-5",
      "name": "openblas",
      "homepage": "https://www.openblas.net/",
      "description": "Optimized BLAS (linear algebra) library (shared lib, pthread)"
    },
    {
      "shlib": "libstdc++",
      "package": "libstdc++6",
      "source": "gcc",
      "version": "16-20260322-1ubuntu1",
      "name": "c++",
      "homepage": "http://gcc.gnu.org/",
      "description": "GNU Standard C++ Library v3"
    }
  ],
  "_vignettes": [
    {
      "source": "certificates.Rmd",
      "filename": "certificates.html",
      "title": "Certificates: reading the numerical evidence",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Anatomy of a certificate",
        "Clean: every box ticked",
        "Failed: backward error too large",
        "Withheld: stochastic norm in the denominator",
        "Generalized SPD: B-orthogonality matters",
        "Comparing eigencore certificates to RSpectra diagnostics",
        "Cheat sheet",
        "Where to go next"
      ],
      "created": "2026-07-23 14:10:02",
      "modified": "2026-07-23 14:10:02",
      "commits": 1
    },
    {
      "source": "generalized-eigenproblems.Rmd",
      "filename": "generalized-eigenproblems.html",
      "title": "Generalized eigenvalue problems with eigencore",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Start with a positive-definite metric",
        "Compute only part of the spectrum",
        "Handle a dense general pencil",
        "Use QZ when you need the Schur form",
        "Keep sparse partial problems sparse",
        "A note for older code",
        "Where to go next"
      ],
      "created": "2026-07-23 14:10:02",
      "modified": "2026-07-23 14:10:02",
      "commits": 1
    },
    {
      "source": "eigencore.Rmd",
      "filename": "eigencore.html",
      "title": "Get started with eigencore",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Compute a certified partial eigendecomposition",
        "Generalized SPD eigenproblem (A v = lambda B v)",
        "Partial SVD",
        "RSpectra-compatible workflow",
        "Under the hood: operators, problems, and plans",
        "Where to go next"
      ],
      "created": "2026-07-23 14:10:02",
      "modified": "2026-07-23 14:10:02",
      "commits": 1
    },
    {
      "source": "sparse-pca.Rmd",
      "filename": "sparse-pca.html",
      "title": "PCA on sparse data without densifying",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Build a sparse dataset with a low-rank signal",
        "Center without densifying",
        "Read the certificate on a composed operator",
        "Does it match what you'd get by densifying?",
        "Scale columns too",
        "What did the planner actually do?",
        "Going fully matrix-free",
        "Why this matters at scale",
        "Where to go next"
      ],
      "created": "2026-07-23 14:10:02",
      "modified": "2026-07-23 14:10:02",
      "commits": 1
    }
  ],
  "_score": 3.3010299956639813,
  "_indexed": true,
  "_nocasepkg": "eigencore",
  "_universes": [
    "cran",
    "bbuchsbaum"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.0.0",
      "date": "2026-07-23T17:17:35.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "9cc2662e60e5599cdaf218efbf3fe62da79998a2",
      "fileid": "https://r2.ropensci.org/263e74c27a2855e4a243a5ffdd359f1218e7afc84c287571c3c6a79716f36d46",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/30028146261"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.0.0",
      "date": "2026-07-23T17:18:43.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "9cc2662e60e5599cdaf218efbf3fe62da79998a2",
      "fileid": "https://r2.ropensci.org/562c5e81ca19483064cac8e93fc9a28c7a4ee7d129c6c263324534f83494ec33",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/30028146261"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.0.0",
      "date": "2026-07-23T17:17:36.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "9cc2662e60e5599cdaf218efbf3fe62da79998a2",
      "fileid": "https://r2.ropensci.org/4230688cdd5162ab002391bf66fd99e8d14a8692933b5299fe2bc21a255c2a6a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/30028146261"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.0.0",
      "date": "2026-07-23T17:18:40.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "9cc2662e60e5599cdaf218efbf3fe62da79998a2",
      "fileid": "https://r2.ropensci.org/1c515f100a88c4976e6baad834d21fc2281a0699f7df720f7324605bd1d1a941",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/30028146261"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.0.0",
      "date": "2026-07-23T17:15:41.000Z",
      "arch": "aarch64",
      "commit": "9cc2662e60e5599cdaf218efbf3fe62da79998a2",
      "fileid": "https://r2.ropensci.org/e469a1fb5bec7a65eee4fbccd86eba3c09ea8a5b674b073d00f921ebfa865b00",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/30028146261"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.0.0",
      "date": "2026-07-23T17:16:57.000Z",
      "arch": "x86_64",
      "commit": "9cc2662e60e5599cdaf218efbf3fe62da79998a2",
      "fileid": "https://r2.ropensci.org/6d39b4dacea4fa209188e15a60eaf57c9e5b84a42a665e040ad58e9df680a570",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/30028146261"
    }
  ]
}