using CairoMakie
a = [3, 7, 5, 3]
b = [1, 3, 7, 4]
δ = π/2
t = LinRange(-π, π, 300)
f = Figure(size=(1600, 360))
for i in 1:4
x = sin.( a[i] .* t .+ δ )
y = sin.( b[i] .* t )
lines(f[1, i], x, y, axis=(; aspect = 1))
end
fJulia for Numerical Analysis
Introduction to Scientific Computing
What is Julia?
Julia is a relatively new, modern programming language designed for scientific computing.
A code example:
History
- 2009: Development started at MIT’s Computer Science and Artificial Intelligence Laboratory
- 2012: First release (v0.1)
- 2018: Version 1.0 released
- February 2026: Version 1.12.5
In their 2012 inaugural blog post Why we created Julia, the developers provide an insightful and humorous overview of their objectives and motivations for creating Julia.
A photo of Stefan Karpinski, Viral Shah, Jeff Bezanson, and Alan Edelman can be found here: https://news.mit.edu/2018/julia-language-co-creators-win-james-wilkinson-prize-numerical-software-1226.
Why Julia?
open source
- open development on GitHub
- implementations for all common operating systems
high-performance programming language for technical computing
- many functions for scientific computing built-in
- (intentional) similarity to Python, R and Matlab
- complex calculations in a few lines
- simple interface to other languages like C or Python
JIT compilation
- supports interactive workflow via the
read-eval-print loop (REPL) - just-in-time (JIT) compilation
- resulting in runtimes comparable to static languages like C/C++, Fortran, or Rust
a built-in package manager
huge ecosystem of easily installable packages, e.g.
Selected Links
- Documentation – the official documentation
- Cheat Sheet – “a quick overview”
- Introducing Julia – a WikiBook
- The Julia Express – Julia in 16 pages
- Think Julia – introduction to programming using Julia as first language
- The Julia Forum
- For the eyes: Examples for the Julia graphics package
Makie