Giter Site home page Giter Site logo

forkestra / basix Goto Github PK

View Code? Open in Web Editor NEW

This project forked from fenics/basix

0.0 0.0 0.0 3.66 MB

FEniCSx finite element basis evaluation library

Home Page: https://fenicsproject.org

License: MIT License

C++ 70.92% Python 27.83% TeX 0.70% Makefile 0.01% CMake 0.54%

basix's Introduction

Basix

Basix CI Spack install

Basix is a finite element definition and tabulation runtime library. Basix allows users to:

  • evaluate finite element basis functions and their derivatives at a set of points;
  • access geometric and topological information about reference cells;
  • apply push forward and pull back operations to map data between a reference cell and a physical cell;
  • permute and transform DOFs to allow higher-order elements to be use on arbitrary meshes; and
  • interpolate into and between finite element spaces.

Basix includes a range of built-in elements, and also allows the user to define their own custom elements.

Basix is one of the components of FEniCSx, alongside UFL, FFCx, and DOLFINx.

Installation

To install Basix:

pip install fenics-basix

We currently build binary wheels for Linux and macOS x86-64 architectures.

For advanced and developer installation instructions see the more detailed install instructions

Documentation

Documentation of Basix can be found at https://docs.fenicsproject.org/basix/main/.

Support

If you find a bug in Basix, you can report it on the GitHub issue tracker.

Questions about using Basix can be asked on the FEniCS discourse group.

Contributing

Information about how to contribute to Basix can be found here.

Supported elements

Interval

In Basix, the sub-entities of the reference interval are numbered as follows:

The numbering of a reference interval

The following elements are supported on an interval:

Triangle

In Basix, the sub-entities of the reference triangle are numbered as follows:

The numbering of a reference triangle

The following elements are supported on a triangle:

Quadrilateral

In Basix, the sub-entities of the reference quadrilateral are numbered as follows:

The numbering of a reference quadrilateral

The following elements are supported on a quadrilateral:

Tetrahedron

In Basix, the sub-entities of the reference tetrahedron are numbered as follows:

The numbering of a reference tetrahedron

The following elements are supported on a tetrahedron:

Hexahedron

In Basix, the sub-entities of the reference hexahedron are numbered as follows:

The numbering of a reference hexahedron

The following elements are supported on a hexahedron:

Prism

In Basix, the sub-entities of the reference prism are numbered as follows:

The numbering of a reference prism

The following elements are supported on a prism:

Pyramid

In Basix, the sub-entities of the reference pyramid are numbered as follows:

The numbering of a reference pyramid

The following elements are supported on a pyramid:

basix's People

Contributors

adeebkor avatar ampdes avatar chrisrichardson avatar conpierce8 avatar drew-parsons avatar francesco-ballarin avatar garth-wells avatar igorbaratta avatar jhale avatar jorgensd avatar luzpaz avatar massimiliano-leoni avatar michalhabera avatar mscroggs avatar nikhiltkur avatar rmsc avatar tiagovla avatar ttitscher avatar wence- avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.