A high precision scientific calculator with full support for physical units.
-
Evaluate mathematical expressions:
1920/16*9 2^32 sqrt(1.4^2 + 1.5^2) * cos(pi/3)^2
-
Operators: addition (
+
), subtraction (-
), multiplication (*
,·
,×
), division (/
,÷
,per
), exponentiation (^
,**
). Full list: see Reference below. -
Mathematical functions:
acos
,acosh
,asin
,asinh
,atan
,atanh
,ceil
,cos
,cosh
,exp
,floor
,gamma
,ln
,log
,log10
,round
,sin
,sinh
,sqrt
,tan
,tanh
. -
Arbitrary-precision numeric type that can handle very large (or small) exponents like 10^(10^10).
-
Exponential notation:
6.022e23
.
-
-
Physical units: parsing and handling, including metric prefixes:
2 min + 30 s 40 kg * 9.8 m/s^2 * 150 cm sin(30°)
-
Supported units: see Reference section below.
-
Implicit conversions:
15 km/h * 30 min
evaluates to7.5 km
. -
Useful error messages:
> 2 watts + 4 newton meter Unification error: Cannot convert unit N·m (base units: kg·m²·s⁻²) to unit W (base units: kg·m²·s⁻³)
-
-
Explicit unit conversions: the
->
conversion operator (aliases:→
,➞
,to
):60 mph -> m/s 500 km/day -> km/h 1 mrad -> degree 52 weeks -> days 5 in + 2 ft -> cm atan(30 cm / 2 m) -> degree 6 Mbit/s * 1.5 h -> GB
-
Variable assignments:
r = 6000km vol = 4/3 * pi * r^3 density = 5 g/cm^3 vol * density -> kg
len = 20 cm 2pi*sqrt(len/g0) -> ms
-
Predefined constants (type
list
to see them all): speed of light (c
), Planck's constant (h_bar
), electron mass (electronMass
), elementary charge (elementaryCharge
), magnetic constant (µ0
), electric constant (eps0
), Bohr magneton (µ_B
), Avogadro's constant (N_A
), Boltzmann constant (k_B
), gravitational acceleration (g0
), ... -
Last result: you can use
ans
(answer) to refer to the result of the last calculation.
-
-
Unicode support:
λ = 2 × 300 µm ν = c/λ → GHz
-
And more: tab completion, command history (arrow keys,
Ctrl
+R
), pretty printing, syntax highlighting, ...
-
Operators (ordered by precedence: high to low)
Operator Syntax factorial !
square/cube ²
/³
exponentiation ^
,**
multiplication (implicit) whitespace division /
,÷
,per
multiplication (explicit) *
,·
,×
subtraction -
addition +
unit conversion ->
,→
,➞
,to
assignment =
Note that implicit multiplication has a higher precedence than division, i.e.
50 cm / 2 m
will be parsed as50 cm / (2 m)
. -
Commands
Command Syntax help text help
,?
list of variables list
,ls
,ll
reset environment reset
clear screen clear
,cls
quit (CLI) quit
,exit
-
Supported units (remember that you can use tab completion). All SI-accepted units support metric prefixes.
Unit Syntax Ampere amperes
,ampere
,A
Ångström angstrom
,Å
Astronomical unit AU
Bar bar
Barn barn
Becquerel becquerel
,Bq
Bel bel
Bits per second bps
Bit bits
,bit
Byte Bytes
,bytes
,Byte
,byte
,B
,Octets
,octets
,Octet
,octet
Calorie calories
,calorie
,cal
Candela candela
,cd
Coulomb coulomb
,C
Cup cups
,cup
Day days
,day
,d
Degree degrees
,degree
,deg
,°
Electronvolt electronvolt
,eV
Farad farad
,F
Fortnight fortnights
,fortnight
Fluid ounce fluidounces
,fluidounce
,floz
Furlong furlongs
,furlong
Foot feet
,foot
,ft
Gallon gallons
,gallon
,gal
Gauss gauss
Gram grams
,gram
,grammes
,gramme
,g
Gray gray
,Gy
Hectare hectare
,ha
Henry henry
,H
Hertz hertz
,Hz
Hour hours
,hour
,h
Inch inches
,inch
,in
Joule joules
,joule
,J
Katal katal
,kat
Kelvin kelvin
,K
Light-year lightyears
,lightyear
,ly
Liter liters
,liter
,litres
,litre
,L
,l
Lumen lumen
,lm
Lux lux
,lx
Meter meters
,meter
,metres
,metre
,m
Miles per hour mph
Mile miles
,mile
Minute minutes
,minute
,min
Mole mole
,mol
Month months
,month
Newton newton
,N
Ohm ohms
,ohm
,Ω
Ounce ounces
,ounce
,oz
Parsec parsecs
,parsec
,pc
Pascal pascal
,Pa
Pint pints
,pint
Pound pounds
,pound
,lb
RPM RPM
,rpm
Radian radians
,radian
,rad
Second seconds
,second
,sec
,s
Siemens siemens
,S
Sievert sievert
,Sv
Tablespoon tablespoons
,tablespoon
,tbsp
Teaspoon teaspoons
,teaspoon
,tsp
Tesla tesla
,T
Tonne tonnes
,tonne
,tons
,ton
,t
Volt volts
,volt
,V
Watt watts
,watt
,W
Watt-hour Wh
Weber weber
,Wb
Week weeks
,week
Yard yards
,yard
,yd
Year years
,year
In addition to the web interface, there is also a command line version which can by installed via npm:
npm install -g insect
For Arch Linux, there is a package on AUR:
yaourt -S insect
For macOS, there is a Homebrew package:
brew install insect
Insect is written in PureScript (see Getting Started guide). You can install all dependencies and build the whole project by running:
bower install
npm install
pulp -w browserify --skip-entry-point -m Insect --standalone Insect -O -t insect.js
Insect comes with a comprehensive set of unit tests. You can run them by calling
pulp test