RedcrabX – MathBox Guide

How to enter formulas, fractions, roots, exponents, matrices, and variables  |  Version 1.0

Table of Contents


1. Overview

A MathBox is a single formula line in the RedcrabX workspace. It displays expressions as a mix of text fields and visual elements (fraction bars, root symbols, matrices). Press Enter to evaluate the expression; the result appears to the right of the formula in gray.

Each MathBox evaluates independently and can store results in named variables, which are immediately available in other MathBoxes on the same workspace.


2. Basic Arithmetic

Type expressions directly into the input field using standard operators.

OperatorMeaningExampleResult
+Addition3 + 47
-Subtraction10 - 2.57.5
*Multiplication6 * 742
/Division (text)10 / 42.5
^Power2^101024
%Modulo17 % 52
Press Enter after typing the expression to calculate the result. Use = at the end for live evaluation: 2+2 =

3. Fraction (Visual Fraction Bar)

A visual fraction with a horizontal bar — numerator on top, denominator below — is inserted by typing // anywhere in the expression.

ActionDescription
Type //Immediately replaces the two slashes with a visual fraction bar. The cursor moves into the numerator (top field).
Tab or Moves focus from the numerator to the denominator.
after the denominatorMoves focus to the field after the fraction.
before the numeratorMoves focus to the field before the fraction.

Examples

Type:  3 //  →  fraction appears, type 4 in the denominator
Result: ¾  =  0.75

Type:  (a+b) //  →  type (a-b) in the denominator
Result: (a+b)/(a-b)
The fraction bar is purely visual. Internally the expression is stored as xfrac(numerator|denominator), which is evaluated as a division. Text-based division with a single / also works: 3/4.

4. Square Root Symbol

A visual root symbol (√‾) is inserted with a keyboard shortcut. The radicand is entered inside the symbol's bounding box.

ActionDescription
Ctrl + 1Inserts a root symbol at the cursor position. Focus moves inside the radicand field.
Ctrl + 1 with text selectedWraps the selected expression inside a new root symbol.
at the end of the radicandMoves focus to the field after the root.
at the start of the radicandMoves focus to the field before the root.
Backspace on an empty radicandRemoves the root symbol; its contents become plain text.

Examples

Ctrl+1, type:  x+1
Result:  √(x+1)

Type:  2*  then Ctrl+1, type:  a²+b²
Result:  2·√(a²+b²)

Select "a+b", press Ctrl+1
Result:  √(a+b)
The text function sqrt(x) also works and evaluates identically, but does not render as a visual symbol.

5. Exponent / Superscript

Superscript characters (⁰¹²³⁴⁵⁶⁷⁸⁹⁺⁻) are entered using a toggle mode activated by a keyboard shortcut. While the mode is active, digits and signs are automatically converted to their Unicode superscript equivalents.

ActionDescription
Ctrl + ^Toggles superscript input mode on/off. (On German keyboards: the ^ key is left of 1.)
Digits 0–9 while mode is onInserts ⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹
+ while mode is onInserts ⁺
- while mode is onInserts ⁻
Ctrl + ^ againExits superscript mode; subsequent keystrokes are normal.

Examples

x, then Ctrl+^, 2, then Ctrl+^   →   x²

a, Ctrl+^, 2, Ctrl+^, +b, Ctrl+^, 2, Ctrl+^   →   a²+b²

10, Ctrl+^, -3, Ctrl+^   →   10⁻³   =   0.001
Alternative: The standard ^ operator also computes powers as text: x^2 evaluates to x², just without the visual superscript rendering.


6. Greek Letters

Greek letters can be entered directly in any MathBox input field using Ctrl + Latin letter for lowercase, and Ctrl + Shift + Latin letter for uppercase. The Latin key corresponds to the first letter of the Greek name (with a few exceptions: q → θ, w → ω, c → χ, f → φ, y → ψ, h → η).

KeyCtrlCtrl+ShiftName KeyCtrlCtrl+ShiftName
aαΑalpha nνΝnu
bβΒbeta xξΞxi
gγΓgamma oοΟomicron
dδΔdelta pπΠpi
eεΕepsilon rρΡrho
zζΖzeta sσΣsigma
hηΗeta tτΤtau
qθΘtheta uυΥupsilon
iιΙiota fφΦphi
kκΚkappa cχΧchi
lλΛlambda yψΨpsi
mμΜmu wωΩomega

Examples

Ctrl+a, Ctrl+b                   →   αβ

Type:  r := 3
Type:  area :=   then Ctrl+p   * r, Ctrl+^, 2, Ctrl+^
Result:  area := π * r²       →   28.274

Ctrl+Shift+s, Ctrl+Shift+w       →   ΣΩ
Greek letters can be used anywhere: variable names, exponents, inside fractions, inside roots, and inside matrix cells. They are treated as regular identifier characters by the expression parser, so α := 5 and β := α + 2 work just like Latin variables.
Note: Since Ctrl + letter is used for Greek input, the standard Windows shortcuts Ctrl+A (select all), Ctrl+C (copy) etc. are overridden inside MathBox input fields. Use the toolbar copy/cut buttons, right-click context menu, or select text with the mouse instead.

7. Parentheses and Brackets

Parentheses are entered as plain text characters. They are not visual elements but are fully understood by the expression parser.

SyntaxDescriptionExampleResult
( … )Grouping / precedence(2+3)*420
[ … ]Array literal[1, 2, 3, 4][1, 2, 3, 4]
[ … ; … ]Matrix rows (semicolon separates rows)[1,2;3,4]2×2 matrix

8. Matrix Input

Matrices can be entered as text literals or as visual grid controls inserted from the Matrix panel. The visual control renders each cell as an individual input field.

Text Literal

A := [1, 2, 3 ; 4, 5, 6 ; 7, 8, 9]   →   3×3 matrix

B := [0,1;1,0]   →   2×2 identity swap matrix

Visual Matrix (Panel Button)

Click the matrix icon in the Physics/Matrix Panel. Choose the number of rows and columns. A grid of input fields appears inline.

KeyAction inside matrix
TabMove to the next cell (left to right, top to bottom)
at last cellMove focus behind the matrix
at first cellMove focus before the matrix
EnterEvaluate the entire MathBox expression

Matrix Operations

A := [1,2;3,4]
B := [5,6;7,8]
A * B =            →   matrix multiplication

det(A) =           →   determinant
inv(A) =           →   inverse
tr(A) =            →   trace
flat(A) =          →   flatten to 1-D array: [1,2,3,4]
getAt(A,0,1) =     →   element at row 0, col 1: 2

A MathBox can contain multiple elements (text fields, fractions, roots, matrices) in a horizontal row. Use the arrow keys to move between them.

KeyAction
Move to the next element when the cursor is at the end of the current field
Move to the previous element when the cursor is at the start of the current field
TabJump to the next cell inside fraction or matrix
EnterEvaluate the expression and display the result

10. Variables

Variables are assigned using =. Once defined, they are available immediately in all other MathBoxes on the same workspace.

a := 5
b := a * 2       →   10

r := 3
area := pi * r²  →   28.27
Variable names are case-sensitive. a and A are different variables.

Clearing a Variable

Clear the expression (select all, delete) and press Enter. The variable is removed from the store and no longer available in other boxes.


11. String Variables and Arrays

Text values are entered in double quotes. They can be assigned to variables and used as axis labels in Plot and Chart boxes.

String Scalar

greeting := "Hello World"

String Array

months := ["Jan", "Feb", "Mar", "Apr", "May", "Jun",
           "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]

Using String Arrays as Axis Labels

In a Plot or Chart Box, enter the variable name in the X-Variable field (optionally with a label using Label = variable):

X-variable field:   Month = months

This displays Month as the axis title and uses the string array as tick labels.


12. Numeric Arrays

Numeric arrays are enclosed in square brackets with comma-separated values. They support element-wise operations and aggregation functions.

Defining Arrays

data := [10, 20, 30, 40, 50]
x    := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Range Literals

A compact range notation generates arrays automatically without listing every value. The syntax is [start..end] for integer steps or [start..end:step] for a custom step size.

ExpressionResultDescription
[1..6][1, 2, 3, 4, 5, 6]Integer range, step = 1
[0..10:2][0, 2, 4, 6, 8, 10]Even numbers 0–10
[1..12:0.1][1.0, 1.1, 1.2, …, 12.0]110-element range with step 0.1
[5..1][5, 4, 3, 2, 1]Descending range, step = −1
[1..1:0.1][1.0]Single-element range
x := [1..6]          →   [1, 2, 3, 4, 5, 6]
sum(x)               =   21

t := [0..2*pi:0.1]   →   63-element array
plot(t, sin(t))      →   sine wave

v := [1..12:0.1]
len(v)               =   111
Note: Start and end are inclusive. The step value must not be zero and must point in the direction of the end value (positive step for ascending, negative for descending). The maximum number of elements is 100 000.

Element-wise Operations

data * 2         →   [20, 40, 60, 80, 100]
data + [1,2,3,4,5]   →   [11, 22, 33, 42, 55]
sin(x)           →   element-wise sine of each value

Array Construction Functions

FunctionDescriptionExample
new(n)Array of n zerosnew(5)[0,0,0,0,0]
new(n,v)Array of n copies of vnew(3,7)[7,7,7]
fill(n,v)Same as new(n,v)fill(4,8)[8,8,8,8]
insert(a,i,e)Insert element e at index iinsert([1,2,4],2,3)[1,2,3,4]
join(a,b)Join two arrays or matricesjoin([1,2],[3,4]) → 2×2 matrix

Array Transformation Functions

FunctionDescription
aver(x)Moving averages of consecutive element pairs
diff(x)Differences between consecutive elements (length n−1)
clip(x)Clamp each element to [−1, 1]
clip(x,min,max)Clamp each element to [min, max]
flat(A)Flatten a matrix to a 1-D array

Aggregate Functions (Array → Scalar)

FunctionDescription
sum(x)Sum of all elements
mean(x)Arithmetic mean
median(x)Median
min(x)Minimum value
max(x)Maximum value
stdev(x)Standard deviation (sample)
var(x)Variance (sample)
len(x)Number of elements
quantile(x,p)p-th quantile (0.0–1.0)
skewness(x)Skewness
kurtosis(x)Kurtosis (excess)
geomean(x)Geometric mean
harmean(x)Harmonic mean
mad(x)Median absolute deviation
iqr(x)Interquartile range (Q3−Q1)

13. Functions

Functions are entered using the standard notation name(argument). They can be typed directly or inserted by clicking the corresponding button in one of the function panels.

Commonly Used Functions

FunctionDescriptionExample
abs(x)Absolute valueabs(-5) → 5
sqrt(x)Square root (text)sqrt(16) → 4
exp(x)e to the power xexp(1) → 2.718
log(x)Natural logarithmlog(e) → 1
log10(x)Base-10 logarithmlog10(100) → 2
sin(x)Sine (respects DEG/RAD mode)sin(90) → 1 (DEG)
cos(x)Cosinecos(0) → 1
tan(x)Tangenttan(45) → 1 (DEG)
round(x)Round to nearest integerround(3.7) → 4
floor(x)Round downfloor(3.9) → 3
ceil(x)Round upceil(3.1) → 4
mod(x,y)Modulomod(10,3) → 1
dim(x)Dimensionality: 0=scalar, 1=array, 2=matrixdim([1,2,3]) → 1

Constants

ConstantValue
pi3.14159265…
e2.71828182…
phi1.61803399… (Golden ratio φ)
infPositive infinity

Inserting Functions via Panel

Click a button in any open function panel (General, Business, Special, Geometry, …). The function text is inserted at the cursor position in the active MathBox. If the function has parameters (e.g. clip(x,min,max)), the first parameter is automatically selected so you can type the replacement immediately.


14. Angle Mode (DEG / RAD)

Trigonometric functions interpret their argument either in degrees or radians, depending on the active mode in the MathBox toolbar.

ButtonModesin(90) resultsin(π/2) result
DEGDegrees (default)10.027 (not 1)
RADRadians0.894 (not 1)1

Click DEG or RAD in the MathBox toolbar to switch. The expression is recalculated immediately.


15. Output Format

Use the dropdown and decimal places selector in the MathBox toolbar to control how results are displayed.

FormatDescriptionExample (value = 1/3)
Floating PointStandard decimal notation0.33
ScientificScientific notation3.33e-1
FractionRational approximation1/3
HexadecimalInteger values in hex0xFF

The decimal places field limits how many digits are shown after the decimal point. Leave it blank or set it to 0 for automatic precision.


16. Complete Examples

Example 1 – Pythagorean Theorem

a := 3
b := 4
c := sqrt(a^2 + b^2)     →   5

Example 2 – Visual Fraction

Type:  sin(alpha) //  then in denominator:  cos(alpha)
Result:  tan(alpha)   (fraction bar with sin on top, cos below)

Example 3 – Quadratic Formula with Root Symbol

p := -5
q := 6
Press Ctrl+1 to insert root, type:  p^2 - 4*q  inside the root
Result:  √(25 - 24)  =  1

x1 := (-p + √(p^2 - 4*q)) / 2   →   3
x2 := (-p - √(p^2 - 4*q)) / 2   →   2

Example 4 – Superscript Exponents

E := m * c²          (type: m*c, Ctrl+^, 2, Ctrl+^)
m := 1               →   E = 8.99e16  (c = speed of light)

Example 5 – Statistics on an Array

data := [12, 45, 23, 67, 34, 89, 11, 56]
mean(data) =          →   42.125
stdev(data) =         →   27.38
median(data) =        →   39.5
quantile(data,0.75) = →   61.75

Example 6 – Matrix Calculation

A := [1,2;3,4]
B := inv(A)
A * B =             →   identity matrix [1,0;0,1]
det(A) =            →   -2

Example 7 – String Labels for Chart

months  := ["Jan","Feb","Mar","Apr","May","Jun"]
revenue := [12000, 15400, 11800, 17200, 19500, 21000]

In the Chart Box, set:

The chart will display month names on the X axis and bar heights for each month.


16. Definite Integral – integral()

RedcrabX can compute a definite integral numerically using adaptive Gauss–Kronrod quadrature (provided by MathNet.Numerics). The result is a real number approximation of ab f(x) dx.

Syntax

integral(expr, var, a, b)
ParameterTypeDescription
exprexpressionThe integrand – any valid MathBox expression that uses the integration variable. May contain constants, other variables, and functions.
varnameThe integration variable (e.g. x). Its value inside expr is set automatically per sample point. Outer variables with the same name are not modified.
aexpressionLower bound of integration. Can be any numeric expression.
bexpressionUpper bound of integration. Can be any numeric expression.
Note: Swapping a and b negates the result, consistent with standard integral calculus (∫ba = −∫ab).

Basic Examples

ExpressionResultExplanation
integral(x^2, x, 0, 1)0.33333…∫₀¹ x² dx = 1/3
integral(x^3, x, 0, 2)4∫₀² x³ dx = 4
integral(sin(x), x, 0, pi)2Area under one half-period of sine
integral(cos(x), x, 0, pi/2)1∫₀^(π/2) cos(x) dx = 1
integral(exp(x), x, 0, 1)1.71828…∫₀¹ eˣ dx = e − 1
integral(1/x, x, 1, exp(1))1∫₁ᵉ 1/x dx = ln(e) = 1
integral(sqrt(1 - x^2), x, -1, 1)1.5708…Area of upper half-unit circle = π/2
integral(exp(-x^2), x, -2, 2)1.7642…Gauss bell curve, approximate √π

Using Other Variables as Bounds or Parameters

Bounds and the integrand may reference any variable that is already defined in the worksheet:

n   := 3
a   := 0
b   := 2
r   := integral(x^n, x, a, b)   →   4  (= 2⁴/4)
k   := 2
f   := integral(k * sin(x), x, 0, pi)   →   4  (= k * 2)

Nested and Complex Integrands

expr may be any expression the MathBox can evaluate, including nested function calls:

integral(sin(x)^2, x, 0, pi)        →   1.5708…   (= π/2)
integral(x * exp(-x), x, 0, 10)     →   0.9999…   (≈ 1)
integral(log(x), x, 1, exp(1))      →   1         (∫₁ᵉ ln x dx = 1)
integral(tan(x), x, 0, pi/4)        →   0.3466…   (= ½ ln 2)

Double Integral (nested calls)

A double integral ∫∫ f(x,y) dx dy can be approximated by nesting two integral() calls. The outer integral treats the inner result as a function of the outer variable:

// ∫₀¹ ∫₀¹ (x + y) dy dx = 1
dbl := integral( integral(x + y, y, 0, 1) , x, 0, 1)   →   1
Performance note: Nested integrals multiply the number of evaluations (typically ~30 × 30 = 900 function calls). They are practical for most use cases but may be slower on very complex inner expressions.

Common Errors

Error / SymptomLikely CauseFix
Empty or NaN resultThe integrand expression contains a typo or an undefined variableTest the integrand standalone first: enter expr with a concrete value for var
Wrong result for trig functionsAngle mode mismatch (DEG vs. RAD)Ensure the MathBox is set to RAD for standard calculus. Bounds like pi only make sense in radian mode.
Singularity / very large valueThe integrand has a pole inside [a, b] (e.g. 1/x with a=−1, b=1)Split the integral at the singularity and sum the parts, or use bounds that avoid it.
Syntax errorMissing comma, unmatched parenthesisCheck that all four arguments are present: integral(expr, var, a, b)

Quick-Reference Card

integral(x^2,      x, 0, 1)          ∫₀¹ x² dx           = 1/3
integral(sin(x),   x, 0, pi)         ∫₀^π sin x dx        = 2
integral(cos(x),   x, 0, pi/2)       ∫₀^(π/2) cos x dx   = 1
integral(exp(x),   x, 0, 1)          ∫₀¹ eˣ dx            = e−1
integral(1/x,      x, 1, exp(1))     ∫₁ᵉ 1/x dx           = 1
integral(x^n,      x, a, b)          bounds / powers from variables
integral(k*f(x),   x, a, b)          constant factor k from worksheet
integral(integral(x+y,y,0,1),x,0,1)  double integral ≈ ∫∫ f dA

RedcrabX  |  MathBox Guide  |  generated from source


17. Sets – {} Literals and Set Functions

RedcrabX supports mathematical sets directly inside the MathBox. A set is written with curly braces { }, just as in standard mathematics. Sets are always sorted and contain no duplicate elements.

Set Literals

Write a set literal by listing numeric expressions separated by commas inside { }:

{ 3, 1, 2, 1 }       →   {1, 2, 3}    (sorted, duplicates removed)
{ 5 }                →   {5}           (singleton)
{ }                  →   {}            (empty set)

Expressions and variables are fully supported inside the braces:

n := 4
{ n, n+1, n+2 }      →   {4, 5, 6}
{ sqrt(2), pi, 1 }   →   {1, 1.41421, 3.14159}

Assigning a Set to a Variable

Use the standard assignment operator :=:

A := {1, 2, 3}
B := {2, 3, 4}

The variable name is shown in the title bar, and the value is displayed as {1, 2, 3}. The set variable can be used in all set functions listed below.

Set Functions

All set functions are also available as ribbon buttons in the Functions panel under the Sets expander.

FunctionMath notationDescriptionExample
union(A, B) A ∪ B All elements that are in A or B (or both) union(A, B){1, 2, 3, 4}
intersect(A, B) A ∩ B Elements that are in both A and B intersect(A, B){2, 3}
setdiff(A, B) A ∖ B Elements in A that are not in B setdiff(A, B){1}
symdiff(A, B) A Δ B Elements in A or B but not in both (symmetric difference) symdiff(A, B){1, 4}
card(A) |A| Cardinality – the number of elements in the set card(A)3
in(x, A) x ∈ A Membership test: returns 1 if x is in A, otherwise 0 in(2, A)1
subset(A, B) A ⊆ B Subset test: returns 1 if every element of A is in B, otherwise 0 subset({1,2}, A)1
toset(A) Converts an array to a set (sorts and removes duplicates) toset([3,1,2,1]){1, 2, 3}
toarray(A) Converts a set to an array (preserves the sorted order) toarray(A)[1, 2, 3]

Step-by-Step Example

// Define two sets
A := {1, 2, 3}          →  {1, 2, 3}
B := {2, 3, 4}          →  {2, 3, 4}

// Set operations
union(A, B)              →  {1, 2, 3, 4}
intersect(A, B)          →  {2, 3}
setdiff(A, B)            →  {1}
setdiff(B, A)            →  {4}
symdiff(A, B)            →  {1, 4}

// Cardinality and membership
card(A)                  →  3
in(2, A)                 →  1
in(9, A)                 →  0

// Subset test
subset({1,2}, A)         →  1    // {1,2} ⊆ {1,2,3}  ✓
subset({1,5}, A)         →  0    // 5 ∉ A             ✗

// Converting between arrays and sets
data := [5, 3, 1, 3, 2]
S    := toset(data)      →  {1, 2, 3, 5}
back := toarray(S)       →  [1, 2, 3, 5]

Combining Set Operations

// Chaining: union of three sets
C := {4, 5, 6}
ABC := union(union(A, B), C)    →  {1, 2, 3, 4, 5, 6}

// Cardinality of union (inclusion-exclusion)
card(union(A, B)) = card(A) + card(B) - card(intersect(A, B))
                 = 3 + 3 - 2  =  4

Important Notes

Note: Set variables and array variables share the same name space. Assigning A := {1,2,3} registers A as a set. Assigning A := [1,2,3] afterwards overwrites it as an array. The display format ({ } vs. [ ]) always reflects the current type.
Note on diff: The function diff(arr) computes finite differences of a numeric array (e.g. diff([1,3,6])[2,3]). For the set difference A ∖ B use setdiff(A, B).

Quick-Reference Card

A := {1,2,3}    B := {2,3,4}
union(A,B)          →  {1, 2, 3, 4}   // A ∪ B
intersect(A,B)      →  {2, 3}         // A ∩ B
setdiff(A,B)        →  {1}            // A \ B
setdiff(B,A)        →  {4}            // B \ A
symdiff(A,B)        →  {1, 4}         // A △ B
card(A)             →  3              // |A|
in(2,A)             →  1              // 2 ∈ A
subset({1,2},A)     →  1              // {1,2} ⊆ A
toset([3,1,2,1])    →  {1, 2, 3}      // array → set
toarray(A)          →  [1, 2, 3]      // set → array

18. Duration / Time – dur() and hms()

MathBox stores time durations as total seconds (double), so all ordinary arithmetic operators work on them. The result is automatically displayed in a human-readable format.

Output Format

Nd HH:MM:SS           days present, no milliseconds
Nd HH:MM:SS.mmm       days present, milliseconds present
HH:MM:SS              less than one day, no milliseconds
HH:MM:SS.mmm          less than one day, milliseconds present

Syntax – dur()

Parameters are always in order: days → hours → minutes → seconds → milliseconds.
All parameters after the first are optional and default to 0.

CallResultDescription
dur(3)3d 00:00:003 days
dur(3,7)3d 07:00:003 days, 7 hours
dur(1,2,30)1d 02:30:001 day, 2 h, 30 min
dur(0,12,34,15)12:34:1512 h 34 min 15 s
dur(0,0,12,36,500)00:12:36.50012 min 36.5 s

Syntax – hms()

Shorthand starting from hours (no days parameter).

CallResultDescription
hms(12,34)12:34:0012 h 34 min
hms(12,34,15)12:34:1512 h 34 min 15 s

Arithmetic with Durations

Because the internal value is seconds, normal operators apply:

dur(1) + dur(0,12)       →  1d 12:00:00   // 1 day + 12 hours
hms(2,30) * 2            →  05:00:00      // double 2.5 h
dur(0,8) - hms(1,30)     →  06:30:00      // difference
dur(0,6) / 2             →  03:00:00      // half of 6 hours
Note: Duration results are only formatted as time when the top-level expression starts with dur( or hms(. If a duration is stored in a variable and used in arithmetic, the raw second value is shown unless the outer expression also starts with dur( / hms(.

Storing Durations in Variables

shift := dur(0,8)        // stores 28800 s
break := hms(0,30)       // stores 1800 s
work  := shift - break   // stores 27000 s  (7.5 h)
dur(0) + work            →  07:30:00      // display using dur()

Quick-Reference Card

dur(d)            days only
dur(d,h)          days + hours
dur(d,h,m)        days + hours + minutes
dur(d,h,m,s)      days + hours + minutes + seconds
dur(d,h,m,s,ms)   all components incl. milliseconds
hms(h,m)          hours + minutes
hms(h,m,s)        hours + minutes + seconds

19. Electrical Engineering Functions

The Electrics & Electronics panel provides a growing collection of physics and engineering formulas covering Coulomb’s law, Ohm’s law, capacitors, inductors, power factor, and three-phase networks.

The full reference with all function tables, formulas, units, and examples has been moved to its own dedicated document:

📄 ElectricsGuide – Electrical Engineering Functions Reference

Naming convention: All functions use the pattern result_inputs(…) – e.g. resist_ui(U,I) calculates resistance from voltage and current. Results of direct calls show their SI unit automatically (W, V, A, Ω &hellip).