Skip to content

SAFRAN-LAB/HODLR

Repository files navigation

Logo of HODLRlib

HODLRlib

Documentation Status

C++ Build Status Codacy Badge Coverage Status

License: MPL 2.0

Version 3.1415 arXiv arXiv

GitHub forks GitHub stars

Open Source Love PR Welcome Twitter

Built by SAFRAN

HitCount

DOI

DOI

HODLRlib is a flexible library for performing matrix operations like matrix-vector products, solving and determinant computation in near-linear complexity(for matrices that resemble a HODLR structure). The solver has also been extended to matrices not necessarily arising out of kernels and also to higher dimensions. Further, the solver has been optimized and the running time of the solver is now massively (a few orders of magnitude) faster than the running times reported in the original articles[1][2]. Low-rank approximation of the appropriate blocks are obtained using the rook pivoting algorithm. The domain is sub-divided based on a KDTree. The solver is fairly general, works with minimal restrictions and has been parallelized using OpenMP.

For more details on the usage of the library, visit the documentation page.

Features

MatVecs: Obtains at a cost of

Factorization: Factors the matrix into the desired form at a cost of

Cholesky-like Symmetric Factorization: Obtains at a cost of

Solve: Solves linear systems at an additional cost of

Determinant Computation: Additional Cost of

Version 3.1415

Date: January 6th, 2019

Copyleft 2019: Sivaram Ambikasaran

Developed by Sivaram Ambikasaran, Karan Raj Singh, Shyam Sundar Sankaran

License

This program is free software; you can redistribute it and/or modify it under the terms of MPL2 license. The Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.