Awesome
FerriteViz.jl
Small package to visualize your Ferrite.jl results. Currently supports only Makie, but the goal is to extend it for different plotting packages.
The package is highly experimental and breaking changes about the internal machinery are about to come. Likely, only a small fraction of the interface will change over time.
Installation
pkg> add FerriteViz
Usage
Simply grab your solution vector and the corresponding dof handler to create a plotter:
import FerriteViz, GLMakie
dh, u = solve_problem()
plotter = MakiePlotter(dh, u)
FerriteViz.solutionplot(plotter)
For a guide check out the tutorial section - or just enjoy the gallery below!
Features
solutionplot
FE solution contour plot on arbitrary finite element mesh (in Makie calledmesh
plots)ferriteviewer
viewer with toggles and menus that update the plotwireframe
plots the finite element mesh and optionally labels nodes and cellsarrows
- also calledquiver
plots, in paraviewglyph
filtersurface
2D solutions in 3D space as surface, in paraviewwarp by scalar
filter- synchronous plotting while your simulation runs with any of the above listed options
- mutating versions of the above listed functions (except for the viewer)
- deformed plots available for
solutionplot
andwireframe
- full integration into the Makie ecosystem, e.g. themes, layouts etc.
- GPU powered plotting with GLMakie.jl, jupyter/pluto notebook plotting with WGLMakie.jl and vector graphics with CairoMakie.jl
Missing Features
- correct visualization of nonlinear geometry faces/edges
- visualization of boundary conditions
- subdomain entity plotting, e.g. facesets, edgesets and so on
- ...
For a detailed list of planned features take a look into the issue tracker. Helping hands are always welcome. Just join the discussion in the corresponding issues.
Gallery
Pulling the Ferrite.jl logo with a cohesive zone material model.
Credits to Kim Auth