{"library":"scikit-fem","title":"scikit-fem","description":"A simple finite element assembler library for Python. Current version 12.0.1, requires Python >=3.10. Released roughly every few months on GitHub. Provides a high-level interface for assembling finite element matrices and vectors, with support for various element types and mesh formats.","language":"python","status":"active","last_verified":"Mon Apr 27","install":{"commands":["pip install scikit-fem"],"cli":null},"imports":["from skfem import Basis","from skfem import Mesh","from skfem import BilinearForm","from skfem import asm","import numpy as np"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import numpy as np\nfrom skfem import Mesh, Basis, BilinearForm, LinearForm, asm\nfrom skfem.helpers import dot, grad\n\n# Create a simple unit square mesh\nmesh = Mesh().refined(2)\n\n# Define basis for linear elements\nbasis = Basis(mesh, ElementTriP1())\n\n# Define bilinear form for Laplacian\n@BilinearForm\ndef laplace(u, v, w):\n    return dot(grad(u), grad(v))\n\n# Assemble stiffness matrix\nA = asm(laplace, basis)\n\n# Define linear form for rhs\n@LinearForm\ndef rhs(v, w):\n    return 1.0 * v\n\n# Assemble rhs vector\nb = asm(rhs, basis)\n\n# Solve (requires scipy or similar)\n# x = np.linalg.solve(A, b)\nprint(A.shape)","lang":"python","description":"Assemble a simple 2D Poisson problem: -Δu = 1 on unit square with zero Dirichlet BCs (not applied).","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}