libCEED provides fast algebra for element-based discretizations, designed for performance portability, run-time flexibility, and clean embedding in higher-level libraries and applications. It offers a C99 interface as well as bindings for Fortran, Python, Julia, and Rust. While our focus is on high-order finite elements, the approach is mostly algebraic and thus applicable to other discretizations in factored form, as explained in the user manual and API implementation portion of the documentation. One of the challenges with high-order methods is that a global sparse matrix is no longer a good representation of a high-order linear operator, both with respect to the FLOPs needed for its evaluation, as well as the memory transfer needed for a matvec. Thus, high-order methods require a new "format" that still represents a linear (or more generally non-linear) operator, but not through a sparse matrix.

Features

  • Documentation available
  • libCEED can be built for WASM using Emscripten
  • The Fortran interface is built alongside the library automatically
  • There are multiple supported backends
  • Examples available
  • It offers a C99 interface as well as bindings for Fortran, Python, Julia, and Rust

Project Samples

Project Activity

See All Activity >

License

BSD License

Follow libCEED

libCEED Web Site

Other Useful Business Software
Simplify Purchasing For Your Business Icon
Simplify Purchasing For Your Business

Manage what you buy and how you buy it with Order.co, so you have control over your time and money spent.

Simplify every aspect of buying for your business in Order.co. From sourcing products to scaling purchasing across locations to automating your AP and approvals workstreams, Order.co is the platform of choice for growing businesses.
Learn More
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of libCEED!

Additional Project Details

Programming Language

C

Related Categories

C Data Visualization Software

Registered

2023-11-23