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
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"
GCC
!wget "https://fem-on-kaggle.github.io/releases/gcc-install.sh" -O "/tmp/gcc-install.sh" && bash "/tmp/gcc-install.sh"
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
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
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
Open CASCADE Technology
!wget "https://fem-on-kaggle.github.io/releases/occ-install.sh" -O "/tmp/occ-install.sh" && bash "/tmp/occ-install.sh"
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
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
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: