Engineering Computational Notebook

An interactive mathematical notebook built for engineers, physicists, students, and researchers to write step-by-step calculations with persistent variables.

How it works

Each line is evaluated against a shared global variable dictionary. You can define variables on earlier lines and reference them in later equations seamlessly.

Formula

f(x) evaluated via MathJS Engine (Algebra, Units, Derivatives, Matrices, Complex Numbers)

Evaluates symbolic, numeric, and dimensional mathematical expressions within a shared persistent variable environment.

SymbolVariableUnitDescription
exprMathematical input string expressionunitless
scopePersistent runtime variable memory tableunitless

Worked example

Cantilever Beam Tip Deflection in Steel

Line1:
F = 5000
Line2:
L = 2
Line3:
E = 200e9
Line4:
I = 8.33e-5
Line5:
delta = (F * L^3) / (3 * E * I)

Variables F, L, E, and I are stored in memory. The final equation evaluates to delta = 0.0008 meters (0.80 mm).

Limitations

Evaluations run client-side in the browser. Loops and recursion are bounded by browser JavaScript execution limits.

Frequently asked questions

How do I define variables in the notebook?

Simply use assignment syntax like `radius = 5` or `velocity = 20`. Once executed, any subsequent calculation can use `radius` or `velocity` directly.

Does the notebook support symbolic calculus?

Yes! You can compute symbolic derivatives using `derivative('expression', 'variable')`, for instance: `derivative('x^3 + 2*x', 'x')` returns `3 * x ^ 2 + 2`.

Can I perform matrix operations?

Yes. Enter matrices using nested brackets like `[ [1, 2], [3, 4] ]` and perform determinant (`det(M)`), inverse (`inv(M)`), or matrix multiplication (`A * B`).

Last reviewed: 2026-08-22.