Skip to content
forked from FEniCS/dolfinx

Next generation FEniCS problem solving environment

License

LGPL-3.0, GPL-3.0 licenses found

Licenses found

LGPL-3.0
COPYING.LESSER
GPL-3.0
COPYING
Notifications You must be signed in to change notification settings

thisisapple/dolfinx

 
 

DOLFINx

DOLFINx CI CircleCI Actions Docker images Actions Spack build

DOLFINx is a new version of DOLFIN. It is being actively developed and features may come and go as development proceeds.

DOLFINx is the computational environment of FEniCSx and implements the FEniCS Problem Solving Environment in Python and C++.

Documentation

Documentation can be viewed at:

Installation

From source

C++ core

To build and install the C++ core, in the cpp/ directory, run::

mkdir build
cd build
cmake ..
make install

Python interface

To install the Python interface, first install the C++ core, and then in the python/ directory run::

pip install .

(you may need to use pip3, depending on your system).

For detailed instructions, see https://docs.fenicsproject.org/dolfinx/main/python/installation.

Spack

To build the most recent release using Spack (assuming a bash shell):

git clone https://github.com/spack/spack.git
. ./spack/share/spack/setup-env.sh
spack env create fenicsx-env
spack env activate fenicsx-env
spack add py-fenics-dolfinx cflags="-O3" fflags="-O3"
spack install

See the Spack documentation for comprehensive instructions.

Docker images

A Docker image with DOLFINx built nightly:

docker run -ti dolfinx/dolfinx:latest

To switch between real and complex builds of DOLFINx.

source /usr/local/bin/dolfinx-complex-mode
source /usr/local/bin/dolfinx-real-mode

A Jupyter Lab environment with DOLFINx built nightly:

docker run --init -ti -p 8888:8888 dolfinx/lab:latest # Access at http://localhost:8888

A development image with all of the dependencies required to build DOLFINx:

docker run -ti dolfinx/dev-env:latest

All Docker images support arm64 and amd64 architectures.

For more information, see https://hub.docker.com/u/dolfinx

License

DOLFINx is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

DOLFINx is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with DOLFINx. If not, see http://www.gnu.org/licenses/.

Contact

For questions about using DOLFINx, visit the FEniCS Discourse page:

https://fenicsproject.discourse.group/

or use the FEniCS Slack channel:

https://fenicsproject.slack.com/

(use https://fenicsproject-slack-invite.herokuapp.com/ to sign up)

For bug reports visit:

https://github.com/FEniCS/dolfinx

About

Next generation FEniCS problem solving environment

Resources

License

LGPL-3.0, GPL-3.0 licenses found

Licenses found

LGPL-3.0
COPYING.LESSER
GPL-3.0
COPYING

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 72.0%
  • Python 24.7%
  • CMake 2.6%
  • Dockerfile 0.7%
  • Makefile 0.0%
  • C 0.0%