Packages

Enable Internet Access

FEM on Kaggle installation scripts require internet access. Enabling it may require the user to be logged in, and their account to be associated to a verified mobile phone number.

Accelerators

Packages supported by FEM on Kaggle are built for CPU containers. Containers with GPU and TPU accelerators may work as well, but are untested and not officially targeted by this project.

You can install one of the packages provided by FEM on Kaggle by adding the following cell at the top of your notebook.

FEniCS

try: import dolfin except ImportError: !wget "https://fem-on-kaggle.github.io/releases/fenics-install-real.sh" -O "/tmp/fenics-install.sh" && bash "/tmp/fenics-install.sh" import dolfin

FEniCSx

try: import dolfinx except ImportError: !wget "https://fem-on-kaggle.github.io/releases/fenicsx-install-real.sh" -O "/tmp/fenicsx-install.sh" && bash "/tmp/fenicsx-install.sh" import dolfinx
try: import dolfinx except ImportError: !wget "https://fem-on-kaggle.github.io/releases/fenicsx-install-complex.sh" -O "/tmp/fenicsx-install.sh" && bash "/tmp/fenicsx-install.sh" import dolfinx

firedrake

try: import firedrake except ImportError: !wget "https://fem-on-kaggle.github.io/releases/firedrake-install-real.sh" -O "/tmp/firedrake-install.sh" && bash "/tmp/firedrake-install.sh" import firedrake
try: import firedrake except ImportError: !wget "https://fem-on-kaggle.github.io/releases/firedrake-install-complex.sh" -O "/tmp/firedrake-install.sh" && bash "/tmp/firedrake-install.sh" import firedrake

gmsh

try: import gmsh except ImportError: !wget "https://fem-on-kaggle.github.io/releases/gmsh-install.sh" -O "/tmp/gmsh-install.sh" && bash "/tmp/gmsh-install.sh" import gmsh
Our tests

netgen, ngsolve, ngsxfem & ngsPETSc

try: import ngsolve except ImportError: !wget "https://fem-on-kaggle.github.io/releases/ngsolve-install-real.sh" -O "/tmp/ngsolve-install.sh" && bash "/tmp/ngsolve-install.sh" import ngsolve
try: import ngsolve except ImportError: !wget "https://fem-on-kaggle.github.io/releases/ngsolve-install-complex.sh" -O "/tmp/ngsolve-install.sh" && bash "/tmp/ngsolve-install.sh" import ngsolve

A complete list of all dependencies is reported below. Users should typically not install any such dependency, since FEM on Kaggle automatically downloads and installs any required dependency of the aforementioned packages.

Boost

!wget "https://fem-on-kaggle.github.io/releases/boost-install.sh" -O "/tmp/boost-install.sh" && bash "/tmp/boost-install.sh"
Our tests

GCC

!wget "https://fem-on-kaggle.github.io/releases/gcc-install.sh" -O "/tmp/gcc-install.sh" && bash "/tmp/gcc-install.sh"
Our tests

HDF5 & h5py

!wget "https://fem-on-kaggle.github.io/releases/h5py-install.sh" -O "/tmp/h5py-install.sh" && bash "/tmp/h5py-install.sh" import h5py
Our tests

Mock package

!wget "https://fem-on-kaggle.github.io/releases/mock-install.sh" -O "/tmp/mock-install.sh" && bash "/tmp/mock-install.sh" import mock
Our tests

openmpi & mpi4py

try: import mpi4py except ImportError: !wget "https://fem-on-kaggle.github.io/releases/mpi4py-install.sh" -O "/tmp/mpi4py-install.sh" && bash "/tmp/mpi4py-install.sh" import mpi4py
Our tests

Open CASCADE Technology

!wget "https://fem-on-kaggle.github.io/releases/occ-install.sh" -O "/tmp/occ-install.sh" && bash "/tmp/occ-install.sh"
Our tests

PETSc & petsc4py

try: import petsc4py except ImportError: !wget "https://fem-on-kaggle.github.io/releases/petsc4py-install-real.sh" -O "/tmp/petsc4py-install.sh" && bash "/tmp/petsc4py-install.sh" import petsc4py
try: import petsc4py except ImportError: !wget "https://fem-on-kaggle.github.io/releases/petsc4py-install-complex.sh" -O "/tmp/petsc4py-install.sh" && bash "/tmp/petsc4py-install.sh" import petsc4py
Our tests

pybind11

!wget "https://fem-on-kaggle.github.io/releases/pybind11-install.sh" -O "/tmp/pybind11-install.sh" && bash "/tmp/pybind11-install.sh" import pybind11

SLEPc & slepc4py

try: import slepc4py except ImportError: !wget "https://fem-on-kaggle.github.io/releases/slepc4py-install-real.sh" -O "/tmp/slepc4py-install.sh" && bash "/tmp/slepc4py-install.sh" import slepc4py
try: import slepc4py except ImportError: !wget "https://fem-on-kaggle.github.io/releases/slepc4py-install-complex.sh" -O "/tmp/slepc4py-install.sh" && bash "/tmp/slepc4py-install.sh" import slepc4py
Our tests

VTK & pyvista

try: import vtk except ImportError: !wget "https://fem-on-kaggle.github.io/releases/vtk-install.sh" -O "/tmp/vtk-install.sh" && bash "/tmp/vtk-install.sh" import vtk

For convenience, text files containing links to all FEM on Kaggle tests can be downloaded below:

Weekly release downloads stats