Two of the most math-heavy functions in Curve V1 are get_D() and get_y().
In Curve V1 (StableSwap), D behaves similarly to k in Uniswap V2 — the larger D is, the “further out” the price curve will be. D changes — and needs to be recomputed — after liquidity is added or removed, or a fee changes the pool balance.
If a curve pool holds two tokens, x and y, the StableSwap invariant is
$$ 4A(x + y) + D = 4AD+\frac{D^3}{4xy}