SuiteSparse | official SuiteSparse library : a suite of sparse matrix | Recommender System library

 by   DrTimothyAldenDavis C Version: v7.0.1 License: Non-SPDX

kandi X-RAY | SuiteSparse Summary

kandi X-RAY | SuiteSparse Summary

SuiteSparse is a C library typically used in Artificial Intelligence, Recommender System applications. SuiteSparse has no bugs, it has no vulnerabilities and it has medium support. However SuiteSparse has a Non-SPDX License. You can download it from GitHub.

The official SuiteSparse library: a suite of sparse matrix algorithms authored or co-authored by Tim Davis, Texas A&M University
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              SuiteSparse has a medium active ecosystem.
              It has 820 star(s) with 200 fork(s). There are 39 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 20 open issues and 135 have been closed. On average issues are closed in 25 days. There are 3 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of SuiteSparse is v7.0.1

            kandi-Quality Quality

              SuiteSparse has 0 bugs and 0 code smells.

            kandi-Security Security

              SuiteSparse has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              SuiteSparse code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              SuiteSparse has a Non-SPDX License.
              Non-SPDX licenses can be open source with a non SPDX compliant license, or non open source licenses, and you need to review them closely before use.

            kandi-Reuse Reuse

              SuiteSparse releases are available to install and integrate.
              Installation instructions, examples and code snippets are available.
              It has 17975 lines of code, 516 functions and 58 files.
              It has high code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of SuiteSparse
            Get all kandi verified functions for this library.

            SuiteSparse Key Features

            No Key Features are available at this moment for SuiteSparse.

            SuiteSparse Examples and Code Snippets

            No Code Snippets are available at this moment for SuiteSparse.

            Community Discussions

            QUESTION

            Use CppADCodeGen with CMake FetchContent or ExternalProject
            Asked 2021-Nov-25 at 10:56

            I am not good with CMake, and I cannot find good explanations about how to use its FetchContent functionality. Indeed, most repositories seem to require different treatment, and the rules of such treatment defy my comprehension.

            That said, here is my problem. I would like to use CppADCodeGen in my project using CMake FetchContent. Here is my code:

            ...

            ANSWER

            Answered 2021-Oct-26 at 20:48
            Problems Overview

            As seen in the output you've provided, there are 2 problems:

            1. There is a target name conflict between probably CppAD and eigen. They both have the uninstall target. It can be seen here:

            Source https://stackoverflow.com/questions/69686099

            QUESTION

            Cannot compile Makefile using make command on Windows
            Asked 2021-Oct-04 at 09:30
            Problem summary

            I am trying to install an open-source parallel finite-element code called TACS and available at this github repository. To comply with the indicated prerequisites, I followed the instructions at this github repository, which allowed me to install SuiteSparse and METIS on Windows with precompiled BLAS/LAPACK DLLs. For the MPI, I installed both the Intel MPI Library and Open MPI through Cygwin. The final step should be to compile running make, however this command is not directly available in Windows 10. As a consequence, I explored the options suggested in this question, unfortunately without success. I feel at a dead end, any help will be appreciated.

            What I've tried

            Please have a look below at my attempts. I am mainly a Windows user and I don't know much of compiling programs using Makefile. My current understanding is that the Makefile that I am trying to compile is written for Linux and whatever GNU compiler for Windows I use will not work because of the different syntax needed. Please correct me if I am wrong. What I can't understand is why I get errors also when I try to compile with Ubuntu Bash for Windows 10 (last attempt of the list below).

            Visual Studio nmake

            Running the Developer Command Prompt for VS 2019 as administrator, I typed nmake -f Makefile in TACS base directory and I got Makefile.in(28) : fatal error U1001: syntax error : illegal character '{' in macro Stop.

            Chocolatey make

            Running Windows Command Prompt as administrator with C:\ProgramData\chocolatey\bin at the top of PATH environment variable, I typed make in TACS base directory and I got

            ...

            ANSWER

            Answered 2021-Oct-03 at 14:08

            I can't answer but maybe I can orient you.

            First nmake is not make. It will not work with any makefile not written specifically as an nmake makefile. And it's only available on Windows. So, best to just forget it exists.

            Second, it's important to understand how make works: rules in makefiles are a combination of targets/prerequisites, and a recipe. The recipe is not in "makefile" syntax, it's a shell script (batch file). So make works in tandem with the shell, to run commands. Which shell? On POSIX systems like GNU/Linux and MacOS it's very simple: a POSIX shell; by default /bin/sh.

            On Windows systems it's much less simple: there are a lot of options. It could be cmd.exe. It could be PowerShell. It could be a POSIX shell, that was installed by the user. Which one is chosen by default, depends on how your version of make was compiled. That's why you see different behaviors for different "ports" of make to Windows.

            So, if you look at the makefiles you are trying to use you can see they are unquestionably written specifically for a POSIX system and expect a POSIX shell and a POSIX environment. Any attempt to use a version of make that invokes cmd.exe as its default shell will fail immediately with syntax errors ("" was unexpected at this time.).

            OK, so you find a version of make that invokes a POSIX shell, and you don't get that error anymore.

            But then you have to contend with another difference: directory separators. In Windows they use backslash. In POSIX systems, they use forward slash and backslash is an escape character (so it's not just passed through the shell untouched). If you are going to use paths in a POSIX shell, you need to make sure your paths use forward slashes else the shell will remove them as escape characters. Luckily, most Windows programs accept forward slashes as well as backslashes as directory separators (but not all: for example cmd.exe built-in tools do not).

            Then you have to contend with the Windows abomination known as drive letters. This is highly problematic for make because to make, the : character is special in various places. So when make sees a line like C:/foo:C:/bar its parser will get confused, and you get errors. Some versions of make compiled for Windows enable a heuristic which tries to see if a path looks like a drive letter or not. Some just assume POSIX-style paths. They can also be a problem for the POSIX shell: many POSIX environments on Windows map drive letters to standard POSIX paths, so C:\foo is written as /c/foo or /mnt/c/foo or something else. If you are adding paths to your makefile you need to figure out what the right mapping, if any, is and use that.

            That's not even to start discussing the other differences between POSIX and Windows... there are so many.

            From what you've shown above, this project was not written with any sort of portability to Windows in mind. Given the complexity of this, that's not surprising: it takes a huge amount of work. So you have these options that I can see:

            1. Port it yourself to be Windows-compatible
            2. Try to get it working inside cygwin (cygwin is intended to be a POSIX-style environment that runs on Windows)
            3. Try to get it working in WSL
            4. Install a virtual machine using VMWare, VirtualBox, etc. running a Linux distribution and build and run it there

            Unfortunately I don't know much about the pros and cons of these approaches so I can't advise you as to the best course.

            The route I chose, long long ago, was to get rid of Windows entirely and just use GNU/Linux. But of course that won't be possible for everyone :).

            Source https://stackoverflow.com/questions/69417970

            QUESTION

            How to solve a linear system where both inputs are sparse?
            Asked 2020-Mar-13 at 03:04

            is there any equivalent to scipy.sparse.linalg.spsolve in Julia? Here's the description of the function in Python.

            ...

            ANSWER

            Answered 2020-Mar-13 at 02:11

            Yes, it's the \ function.

            Source https://stackoverflow.com/questions/60663331

            QUESTION

            Compiling SuiteSparse in Ubuntu, breaks when installing CHOLMOD
            Asked 2020-Jan-11 at 20:46

            I've downloaded the .zip for SuiteSparse from the following GitHub. I'm trying to install/compile the C/C++ libraries in Ubuntu. I'm using the Windows Subsystem for Linux and installed Ubuntu from the Microsoft Store.

            The SuiteSparse instructions say to cd to the SuiteSparse-5.5.0 directory and just type make. Makefile here. The readme suggests that I need make, g++, gcc, and cmake, so I've installed those using sudo apt install . Here's the error message I get from make 2>error:

            ...

            ANSWER

            Answered 2020-Jan-11 at 17:02

            Install LLAPACK and OpenBLAS development libraries. On Ubuntu the command is:

            Source https://stackoverflow.com/questions/59696445

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install SuiteSparse

            Uncompress the SuiteSparse.zip or SuiteSparse.tar.gz archive file (they contain the same thing). Next, compile the GraphBLAS library (see instructions in GraphBLAS/Doc). Then in the MATLAB Command Window, cd to the SuiteSparse directory and type SuiteSparse_install. All packages will be compiled, and several demos will be run. To run a (long!) exhaustive test, do SuiteSparse_test.
            For just GraphBLAS, do this:. For all other packages, type 'make' in this directory. All libraries will be created and copied into SuiteSparse/lib. All include files need by the applications that use SuiteSparse are copied into SuiteSparse/include. All user documenation is copied into SuiteSparse/share/doc. Be sure to first install all required libraries: BLAS and LAPACK for UMFPACK, CHOLMOD, and SPQR, and GMP and MPFR for SLIP_LU. Be sure to use the latest libraries; SLIP_LU requires MPFR 4.0 for example.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries

            Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link