Calculeaf Features Blog Guide Pricing Open app

Differentiation and integration

Four numeric operators cover the calculus a worksheet usually needs: a derivative, a definite integral, and a summation or product over an integer range. They live under Math → Operators ▾Calculus, which holds ∫, Σ, Π, lim, d/dx and ∂/∂x alongside log, ln, exp and the floor and ceiling brackets. Click a token and the matching function lands at the caret.

The Operators dropdown on the Math ribbon, open on the Calculus category.
Operators then Calculus. The tokens insert d/dx, the integral, sigma, pi and lim into the focused math region.

The variable always comes first

All four operators take the name of the variable as their first argument and the expression last. That is the opposite of how the notation reads:

  • diff(var, expr) and pdiff(var, expr)
  • nintegrate(var, a, b, expr)
  • nsum(var, start, end, body) and nprod(var, start, end, body)

Writing diff(x^2, x) does not work. It reports diff: first argument must be a variable name. The ribbon tokens build the correct order for you. Use them until the shape is familiar.

Differentiate at a point

diff is numeric, not symbolic. It evaluates the derivative at the variable's current value, so that variable must already be assigned somewhere above. Otherwise you get diff: variable x not found in scope. Shear from a uniformly distributed load, sampled 3 m along:

x := 3 m
w := 12 kN/m
V := diff(x, w * x^2 / 2) =

That returns 36 kN, which is w times x as it should be. Units divide through the way they do on paper. The body is in kN·m and the variable is in m, so the answer is in kN. pdiff is the partial form and takes the same arguments. It differs in how the region renders, with ∂ rather than d.

Integrate over a range

nintegrate uses 50-point Gauss–Legendre quadrature between the two limits. The limits are where the differential's unit comes from, so give them units whenever the variable has them:

M := nintegrate(z, 0 m, 6 m, 12 kN/m * z) =

The answer is 216 kN·m. That is the moment about the left-hand end of a 12 kN/m load spread over 6 m. Anything the integrand rejects, it rejects here too. A length inside ln() still fails on every sample point.

Sum and multiply over integers

nsum and nprod step the index one at a time from start to end, both ends included, and are unit-aware as long as the body is. The range is capped at a million steps.

nsum(n, 1, 5, 12 kN * n) =
nprod(k, 1, 3, 0.9) =

The first gives 180 kN, the accumulated shear where each of five storeys adds another 12 kN. The second gives 0.729, three successive 0.9 reduction factors compounded.

Limits

The lim token inserts limit notation, but there is no limit evaluator behind it. These are worksheet operators, not a computer-algebra notebook. Where a symbolic answer would be required, the region reports an error rather than quietly returning an approximation.

A 2D plot handles the curve and a sweep table handles the column. For everything else you can type in a math region, see the function catalog.