Examples
Interactive, worked examples to help you learn Equana's features — from language basics to full scientific workflows. Every example runs in your browser; modify the code and experiment.
Language Basics
Learn the fundamentals of Equana syntax — variables, numbers, strings, arrays, control flow, functions, and more.
Types & Multiple Dispatch
Define types with structs and abstract type hierarchies, write typed functions with multiple dispatch, and overload operators for custom types.
Symbolic Mathematics
Create symbolic variables, solve equations, differentiate, expand, and simplify expressions with the symbolic math engine.
Working with Matrices
Learn how to create, index, slice, and manipulate matrices using Equana syntax and operators.
Sparse Matrices
Create, inspect, and solve large sparse systems efficiently using iterative solvers and decompositions.
Complex Numbers
Learn how to create complex numbers, perform arithmetic, extract components, convert between rectangular and polar form, and use transcendental functions.
Linear Solvers
Solve Ax = b using dense direct methods, sparse iterative solvers with convergence diagnostics, and sparse direct factorizations.
Creating Charts and Plots
Learn how to create line plots, bar charts, scatter plots, histograms, and pie charts with customizable labels and layouts.
Quad Precision
Go beyond the 64-bit double. Learn how Equana's float128 and complex256 types deliver ~31 decimal digits of precision, verify the extra accuracy with runnable cells, and understand how double-double arithmetic works under the hood.
3D Surface Plots
Visualize mathematical functions and data in 3D with interactive mesh and surf plots using meshgrid for coordinate generation.
Working with Strings
Learn how to create, manipulate, and format strings using string literals, template expressions, and built-in string functions.
Dynamic Code Evaluation
Learn how to evaluate Equana code from strings at runtime using eval, including dynamic expressions and workspace manipulation.
VTK.js 3D Visualization
Create advanced 3D visualizations with VTK.js including volume rendering, isosurface extraction, and FEM mesh visualization.
Finite Elements 1: Poisson Problem
Learn the fundamentals of FEM including meshing, basis functions, weak formulation, sparse assembly, and solving PDEs numerically.
Linear Elasticity
Solve structural mechanics with finite elements: stress-strain relations, element-by-element assembly, piecewise material properties, and Dirichlet/Neumann boundary conditions.
Time-Dependent Heat Conduction
Solve transient heat transfer with the method of lines: discretize space into a sparse system, then march in time with an unconditionally stable implicit scheme.
Modal Analysis of a 3D Part
Compute the natural frequencies and vibration mode shapes of a 3D elastic part in the browser: assemble sparse stiffness and mass matrices from hexahedral elements, solve the generalized eigenproblem, and explore the mode shapes in an interactive VTK.js viewer.
Polynomials
Learn to work with polynomials: create from coefficients or roots, evaluate at points, fit curves to data, and compute derivatives.
Custom WASM Modules
Extend Equana with your own WebAssembly modules for high-performance custom functions written in C, C++, or Rust.
Timing & Benchmarking
Learn how to use tic/toc and timeit to measure code performance. Benchmark dense matrix–matrix multiplication and see the WASM SIMD kernel in action.
Fourier Analysis: FFT in the Browser
Build a noisy signal, run it through an FFT, read the amplitude spectrum, and find the dominant frequencies programmatically — every cell runs in your browser.
More tutorials coming soon. Check out the roadmap to see what's planned.