{"id":19347459,"url":"https://github.com/lammps/linalg","last_synced_at":"2026-02-17T04:03:56.594Z","repository":{"id":72366654,"uuid":"584000856","full_name":"lammps/linalg","owner":"lammps","description":"Stripped down collection of BLAS/LAPACK functions converted to C++ for use with LAMMPS","archived":false,"fork":false,"pushed_at":"2025-02-01T04:26:08.000Z","size":1133,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-09T06:48:06.619Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Fortran","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lammps.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-12-31T21:10:00.000Z","updated_at":"2025-02-01T04:26:12.000Z","dependencies_parsed_at":"2024-08-19T02:39:48.129Z","dependency_job_id":"42df584d-494a-47d0-aa25-4868ff507036","html_url":"https://github.com/lammps/linalg","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/lammps/linalg","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lammps%2Flinalg","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lammps%2Flinalg/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lammps%2Flinalg/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lammps%2Flinalg/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lammps","download_url":"https://codeload.github.com/lammps/linalg/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lammps%2Flinalg/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29532990,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-17T03:01:11.216Z","status":"ssl_error","status_checked_at":"2026-02-17T03:00:31.803Z","response_time":100,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-10T04:16:33.313Z","updated_at":"2026-02-17T04:03:56.578Z","avatar_url":"https://github.com/lammps.png","language":"Fortran","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Overview\n\nThe `linalg` library package is a set of selected functions and\nsubroutines from [BLAS](https://netlib.org/blas/) and\n[LAPACK](https://netlib.org/lapack/) as they are used by and bundled\nwith the [LAMMPS MD code](https://www.lammps.org/).  While the original\nBLAS/LAPACK reference implementation from the Netlib servers are written\nin a portable Fortran dialect, this library uses the [f2c\ntool](https://netlib.org/f2c/) tools to convert them to C++ while\nmaintaining the expected binary interface from the most common Fortran\ncompilers on Linux, macOS, Windows platforms.  This allows to use it\nas a drop-in replacement in case there is no compatible BLAS/LAPACK\nbinary library package or no Fortran compiler anavailable.  It can be\ncompiled with the same C++ compiler (minimum C++-11 standard) as the\nLAMMPS code itself.\n\nThe purpose of this package is to provide the source for the translated\nC++ files bundled with LAMMPS and easily allow to create updated\nversions for new LAPACK releases or add new functionality if required by\nadded LAMMPS functionality through updating or adding to the Fortran\nsources and re-running the translation to C++.\n\nMost of the original Fortran code can be translated without change.\nThose are placed into the `fortran` folder.  A few other Fortran files\nneed some small modifications to make them compatible with the `f2c`\ntranslator.  In addition a few BLAS/LAPACK support functions\n(e.g. DLAMCH or XERBLA) have been directly implemented in C++.  Finally,\na few functions from the `f2c` runtime library are required as well.\nThose have been adapted to C++ and for typical platforms this library is\nsupposed to be used on.\n\n# Version\n\nThe included Fortran files correspond to LAPACK version 3.12.1 released\non January 8th, 2025.\n\n# License\n\nSince the bulk of the code is an automated translation of the BLAS/LAPACK\nsources, the same licensing terms apply.  Additional or replacement code\nis copyright (c) 2022, 2023, 2024, 2025 by Axel Kohlmeyer `\u003cakohlmey@gmail.com\u003e`.\n\n# Installation\n\nThis package uses CMake to set up the translation, and compilation plus\na few tests.  CMake version 3.16 or later is required. Also required are\nf2c, the GNU C++ compiler, clang-format, and sed.  This has only been\ntested on a Linux machine.\n\nRunning the command:\n\n```\ncmake -S . -B build\n```\n\nWill set up a build folder and\n\n```\ncmake --build build\n```\n\nwill do the translation and also try to compile the generated C++ files into a library\nas well as create a compressed tar file with the translated sources in the build folder.\n\nIf a suitable Fortran compiler was found, also a couple of tests for BLAS functions\nare configured and can be run with ctest.\n\n```\nctest --test-dir build\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flammps%2Flinalg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flammps%2Flinalg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flammps%2Flinalg/lists"}