We consider the problem of finding the spectrum of an operator taking the form of a low-rank (rank one or two) non-normal perturbation of a well-understood operator, motivated by a number of problems of applied interest which take this form. We use the fact that the system is a low-rank perturbation of a solved problem, together with a simple idea of classical differential geometry (the envelope of a family of curves) to completely analyse the spectrum. We use these techniques to analyse three problems of this form: a model of the oculomotor integrator due to Anastasio & Gad (2007
J. Comput. Neurosci.
22
, 239–254. (
doi:10.1007/s10827-006-0010-x
)), a continuum integrator model, and a non-local model of phase separation due to Rubinstein & Sternberg (1992
IMA J. Appl. Math.
48
, 249–264. (
doi:10.1093/imamat/48.3.249
)).