FORTRAN programs
Course and self-directed FORTRAN work for numerical methods, linear algebra, and small scientific simulations of the kind you see in engineering and physics curricula.
Problem
A lot of legacy and HPC work still depends on numerically careful, compiler-friendly Fortran for tight loops. The point of these pieces was to understand memory layout, array semantics, and floating-point behavior without hiding behind a higher-level framework.
Solution
Classic algorithms (numerical integration, eigenvalue steps, or PDE discretizations) with clear module boundaries, explicit interfaces where it helped, and build steps you can repeat.
Impact
- Builds intuition for the performance-sensitive paths used in research and industry HPC.
- Numeric cores stay portable enough to wrap later from Python, C, or modern Fortran.
Lessons learned
- Compiler flags and optimization levels can nudge answers. Document the test matrix.
- Prefer modern Fortran (modules,
intent, allocatables) over fixed-form legacy patterns when you can. - Pair the numerics with small golden-file checks or known reference solutions.
Tech stack
- FORTRAN (modern where allowed)
- Compiler toolchain and simple Makefiles / build scripts
- Optional: Python for plotting or wrapping drivers