Science Score: 54.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
✓Committers with academic emails
33 of 140 committers (23.6%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.3%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
Next generation FEniCS problem solving environment
Basic Info
- Host: GitHub
- Owner: FEniCS
- License: lgpl-3.0
- Language: C++
- Default Branch: main
- Homepage: https://fenicsproject.org
- Size: 65.3 MB
Statistics
- Stars: 951
- Watchers: 44
- Forks: 216
- Open Issues: 140
- Releases: 15
Topics
Metadata Files
README.md
DOLFINx
DOLFINx is the computational environment of FEniCSx and implements the FEniCS Problem Solving Environment in C++ and Python. DOLFINx is a new version of DOLFIN and is actively developed.
For questions about using DOLFINx, visit the FEniCS Discourse page or use the FEniCS Slack channel (use this link to sign up to the Slack channel).
Documentation
Documentation can be viewed at https://docs.fenicsproject.org.
Installation
From source
For detailed instructions and a list of dependencies, see https://docs.fenicsproject.org/dolfinx/main/python/installation.
C++ core
To build and install the C++ core, in the cpp/ directory, run:
shell
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:
shell
pip install -r build-requirements.txt
pip install --check-build-dependencies --no-build-isolation .
Spack
To build the most recent release using Spack (assuming a bash-compatible shell):
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 install --add py-fenics-dolfinx+petsc4py+slepc4py
Spack is the recommended approach for HPC systems.
Binary packages
Recommendations
- macOS: conda.
- Linux: apt (Ubuntu/Debian), docker or conda. See also Spack.
- Windows: docker, or install WSL2 and use Ubuntu. conda packages in beta testing.
- High performance computers: Spack or from source, both using system-provided MPI.
conda
To install the latest release of the Python interface, including pyvista for visualisation, using conda:
shell
conda create -n fenicsx-env
conda activate fenicsx-env
conda install -c conda-forge fenics-dolfinx mpich pyvista # Linux and macOS
conda install -c conda-forge fenics-dolfinx pyvista pyamg # Windows
Windows only: Windows conda packages are currently in beta testing. PETSc and petsc4py are not available on Windows. Because FEniCS uses just-in-time compilation it necessary to install Microsoft Visual Studio.
conda is distributed with Anaconda and Miniconda. The recipe is hosted on conda-forge.
| Name | Downloads | Version | Platforms |
| --- | --- | --- | --- |
| |
|
|
|
Ubuntu packages
The Ubuntu PPA provides FEniCSx packages. To install:
shell
add-apt-repository ppa:fenics-packages/fenics
apt update
apt install fenicsx
When a version of DOLFINx is released we aim to provide a package for the most recent LTS version of Ubuntu. All other versions are provided on a best-effort basis.
Debian packages
DOLFINx is included
with various
versions
of Debian. Install with apt-get install fenicsx.
Docker images
To run a Docker image with the latest release of DOLFINx:
shell
docker run -ti dolfinx/dolfinx:stable
To switch between real and complex builds of DOLFINx/PETSc.
shell
source /usr/local/bin/dolfinx-complex-mode
source /usr/local/bin/dolfinx-real-mode
A Jupyter Lab environment with the latest release of DOLFINx:
shell
docker run --init -ti -p 8888:8888 dolfinx/lab:stable # Access at http://localhost:8888
A Docker image with DOLFINx built nightly:
shell
docker run -ti dolfinx/dolfinx:nightly
A development image with all of the dependencies required to build the latest release of the FEniCSx components:
shell
docker run -ti dolfinx/dev-env:stable
A development image with all of the dependencies required
to build the main branch of the FEniCSx components:
shell
docker run -ti dolfinx/dev-env:current
The Docker images support arm64 and amd64 architectures. For a full list of tags, including versioned images, see https://hub.docker.com/u/dolfinx
Contributing
Information about how to contribute to DOLFINx can be found here.
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 https://www.gnu.org/licenses/.
Owner
- Name: FEniCS Project
- Login: FEniCS
- Kind: organization
- Website: https://fenicsproject.org
- Repositories: 16
- Profile: https://github.com/FEniCS
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
title: "DOLFINx"
version: 0.9.0
date-released: 2024-10-10
url: "https://github.com/FEniCS/dolfinx"
doi: "10.5281/zenodo.10047760"
authors:
- family-names: "FEniCS Project Developers"
given-names: "The"
preferred-citation:
type: article
authors:
- family-names: "Baratta"
given-names: "Igor A."
orcid: "https://orcid.org/0000-0003-4298-2973"
- family-names: "Dean"
given-names: "Joseph P."
orcid: "https://orcid.org/0000-0001-7499-3373"
- family-names: "Dokken"
given-names: "Jørgen S."
orcid: "https://orcid.org/0000-0001-6489-8858"
- family-names: "Habera"
given-names: "Michal"
orcid: "https://orcid.org/0000-0003-0604-8884"
- family-names: "Hale"
given-names: "Jack S."
orcid: "https://orcid.org/0000-0001-7216-861X"
- family-names: "Richardson"
given-names: "Chris N."
orcid: "https://orcid.org/0000-0003-3137-1392"
- family-names: "Rognes"
given-names: "Marie E."
orcid: "https://orcid.org/0000-0002-6872-3710"
- family-names: "Scroggs"
given-names: "Matthew W."
orcid: "https://orcid.org/0000-0002-4658-2443"
- family-names: "Sime"
given-names: "Nathan"
orcid: "https://orcid.org/0000-0002-2319-048X"
- family-names: "Wells"
given-names: "Garth N."
orcid: "https://orcid.org/0000-0001-5291-7951"
doi: "10.5281/zenodo.10447666"
journal: "preprint"
title: "DOLFINx: the next generation FEniCS problem solving environment"
year: 2023
Committers
Last synced: over 1 year ago
Top Committers
| Name | Commits | |
|---|---|---|
| Garth N. Wells | g****0@c****k | 7,364 |
| Anders Logg | l****g@c****e | 4,862 |
| Chris Richardson | c****s@b****k | 1,684 |
| Johan Hake | h****v@g****m | 1,006 |
| Jan Blechta | b****a@k****z | 624 |
| Martin Sandve Alnæs | m****l@s****o | 600 |
| Johannes Ring | j****r@s****o | 586 |
| August Johansson | a****t@s****o | 575 |
| Benjamin Kehlet | b****k@s****o | 496 |
| Marie E. Rognes | m****g@s****o | 445 |
| Johan Jansson | j****n@c****e | 441 |
| Jack S. Hale | m****l@j****k | 295 |
| Ola Skavhaug | s****g@s****o | 215 |
| Igor Baratta | i****a@g****m | 188 |
| Johan Hoffman | j****n@c****e | 188 |
| Jørgen Schartum Dokken | d****2@g****m | 170 |
| Michal Habera | m****a@g****m | 169 |
| Kent-Andre Mardal | k****d@s****o | 165 |
| Patrick Farrell | p****l@m****k | 161 |
| Joachim Berdal Haga | j****h@s****o | 148 |
| Tormod Landet | t****d@l****t | 136 |
| Matthew Scroggs | m****s@g****m | 134 |
| Jørgen Schartum Dokken | j****5@c****k | 127 |
| Nate Sime | n****4@c****k | 125 |
| Solveig Masvie | s****e@g****m | 119 |
| Fredrik Valdmanis | f****k@v****m | 116 |
| Kristian B. Ølgaard | k****d@g****m | 102 |
| Quang Ha | q****0@c****k | 96 |
| Andre Massing | m****g@s****o | 78 |
| Ivan Yashchuk | i****k@a****i | 77 |
| and 110 more... | ||
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 411
- Total pull requests: 1,463
- Average time to close issues: 7 months
- Average time to close pull requests: 15 days
- Total issue authors: 93
- Total pull request authors: 48
- Average comments per issue: 1.96
- Average comments per pull request: 1.1
- Merged pull requests: 1,078
- Bot issues: 0
- Bot pull requests: 34
Past Year
- Issues: 119
- Pull requests: 577
- Average time to close issues: 11 days
- Average time to close pull requests: 6 days
- Issue authors: 31
- Pull request authors: 30
- Average comments per issue: 0.89
- Average comments per pull request: 0.98
- Merged pull requests: 404
- Bot issues: 0
- Bot pull requests: 20
Top Authors
Issue Authors
- garth-wells (69)
- jorgensd (64)
- chrisrichardson (33)
- jhale (29)
- schnellerhase (27)
- mscroggs (24)
- francesco-ballarin (17)
- jpdean (11)
- drew-parsons (9)
- massimiliano-leoni (8)
- michalhabera (8)
- nate-sime (8)
- IgorBaratta (5)
- prusso630 (4)
- ruf10 (4)
Pull Request Authors
- garth-wells (392)
- jorgensd (254)
- jhale (207)
- schnellerhase (160)
- chrisrichardson (114)
- mscroggs (71)
- francesco-ballarin (47)
- jpdean (45)
- dependabot[bot] (34)
- IgorBaratta (17)
- minrk (10)
- mleoni-pf (10)
- michalhabera (10)
- finsberg (8)
- ampdes (8)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 6
- Total downloads: unknown
-
Total dependent packages: 2
(may contain duplicates) -
Total dependent repositories: 2
(may contain duplicates) - Total versions: 46
- Total maintainers: 4
proxy.golang.org: github.com/fenics/dolfinx
- Documentation: https://pkg.go.dev/github.com/fenics/dolfinx#section-documentation
- License: lgpl-3.0
-
Latest release: v0.9.0
published about 1 year ago
Rankings
proxy.golang.org: github.com/FEniCS/dolfinx
- Documentation: https://pkg.go.dev/github.com/FEniCS/dolfinx#section-documentation
- License: lgpl-3.0
-
Latest release: v0.9.0
published about 1 year ago
Rankings
spack.io: fenics-dolfinx
Next generation FEniCS problem solving environment.
- Homepage: https://github.com/FEniCS/dolfinx
- License: []
-
Latest release: 0.3.0
published over 3 years ago
Rankings
Maintainers (4)
spack.io: py-fenics-dolfinx
Python interface to the next generation FEniCS problem solving environment.
- Homepage: https://github.com/FEniCS/dolfinx
- License: []
-
Latest release: 0.3.0
published over 3 years ago
Rankings
Maintainers (4)
conda-forge.org: fenics-libdolfinx
DOLFINx is the computational environment of FEniCSx and implements the FEniCS Problem Solving Environment in Python and C++.
- Homepage: https://fenicsproject.org
- License: LGPL-3.0-or-later
-
Latest release: 0.5.2
published about 3 years ago
Rankings
conda-forge.org: fenics-dolfinx
DOLFINx is the computational environment of FEniCSx and implements the FEniCS Problem Solving Environment in Python and C++.
- Homepage: https://fenicsproject.org
- License: LGPL-3.0-or-later
-
Latest release: 0.5.2
published about 3 years ago