RunMat
GitHub

int — Evaluate scalar symbolic indefinite and definite integrals.

int(expr) returns an indefinite integral with respect to the first symbolic variable in expr. int(expr, var) chooses the variable explicitly. int(expr, a, b) and int(expr, var, a, b) evaluate definite integrals by substituting the bounds into the antiderivative.

Syntax

int(expr)

How int works

  • Default variable selection follows the scalar symbolic symvar(expr, 1) rule used by MATLAB-compatible calculus builtins: x is preferred when present, then remaining valid symbolic names are considered in deterministic lexical order.
  • Supported closed forms include constants, variables, sums, differences, scalar multiples, powers of the integration variable, reciprocal 1/x, sin, cos, exp, log(x), and sqrt(x).
  • Definite integrals simplify numeric trigonometric and exponential bounds when the antiderivative can be evaluated.
  • Unsupported symbolic forms return a formal symbolic int(...) expression instead of failing, preserving downstream symbolic workflows.
  • The MATLAB name-value options IgnoreAnalyticConstraints, PrincipalValue, IgnoreSpecialCases, and Hold are accepted for scalar compatibility. RunMat currently ignores them for the supported elementary subset.

Examples

Integrate a polynomial

syms x
F = int(x^2)

Expected output:

F = x^3/3

Evaluate a definite integral

syms x
A = int(sin(x), 0, pi)

Expected output:

A = 2

Choose the integration variable explicitly

syms x y
F = int(y, x)

Expected output:

F = x*y

Using int with coding agents

Open a RunMat example with live inputs, then ask the agent to explain how int changes the result.

Run a small int example, explain the result, then change one input and compare the output.

FAQ

Does int run on the GPU?

No. Symbolic expressions are host algebra values. Numeric tensors should use numerical integration routines when available.

What happens when RunMat cannot find a closed form?

RunMat returns a formal scalar symbolic int(...) expression so code can continue to manipulate or display the unevaluated integral.

Symbolic

digits · limit · sym · syms · vpa

Elementwise

abs · angle · complex · conj · double · exp · expm1 · factorial · gamma · heaviside · hypot · imag · ldivide · log · log10 · log1p · log2 · minus · nextpow2 · plus · pow2 · power · rdivide · real · sign · single · sqrt · times

Trigonometry

acos · acosh · asin · asinh · atan · atan2 · atanh · cos · cosd · cosh · deg2rad · rad2deg · sin · sind · sinh · tan · tand · tanh

Reduction

all · any · cummax · cummin · cumprod · cumsum · cumtrapz · diff · gradient · max · mean · median · min · nnz · prod · std · sum · trapz · var

Rounding

ceil · fix · floor · mod · rem · round

Factor

chol · eig · lu · qr · svd

Solve

cond · det · inv · linsolve · norm · null · pinv · rank · rcond · rref

Fft

fft · fft2 · fftshift · ifft · ifft2 · ifftshift

Interpolation

interp1 · interp2 · pchip · ppval · spline

Ode

ode15s · ode23 · ode45

Open-source implementation

Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how int is executed, line by line, in Rust.

About RunMat

RunMat is an open-source runtime that executes MATLAB-syntax code blazing on any GPU. It is licensed under the Apache 2.0 license.

  • RunMat automatically optimizes your math for GPU execution on Apple, Nvidia, and AMD hardware. No code changes needed. Simulations that took hours now take minutes.
  • Start running code in seconds. RunMat runs in the browser, on the desktop, or from the CLI. No license server, no IT ticket.

Getting started · Benchmarks · Pricing

Download RunMat

Download RunMat for full performance, or use RunMat in your browser for zero setup.