I came across Volterra integral equations in a completely different context: branching theory applied to macroevolution. Wikipedia mentions renewal theory, which is close. In my application, the equation could be solved iteratively. I think this notation

$ Q(\omega) \ast F(\omega) $

is confusing and will use

$ (Q \ast F)(\omega) $.

The idea is to write

$ F(\omega) = (\omega^2 + a)^{-1} [ H(\omega) - (Q \ast F)(\omega) ], $

take a guess at $F(\omega)$, say $F_0(\omega)=0$, and iterate like

$ F_{i+1}(\omega) = (\omega^2 + a)^{-1} [ H(\omega) - (Q \ast F_i)(\omega) ] .$

Numerically, the $F_i$s are evaluated at a finite number of evenly spaced $\omega$ values. In my case this procedure was guaranteed to converge.

$ Q(\omega) \ast F(\omega) $

is confusing and will use

$ (Q \ast F)(\omega) $.

The idea is to write

$ F(\omega) = (\omega^2 + a)^{-1} [ H(\omega) - (Q \ast F)(\omega) ], $

take a guess at $F(\omega)$, say $F_0(\omega)=0$, and iterate like

$ F_{i+1}(\omega) = (\omega^2 + a)^{-1} [ H(\omega) - (Q \ast F_i)(\omega) ] .$

Numerically, the $F_i$s are evaluated at a finite number of evenly spaced $\omega$ values. In my case this procedure was guaranteed to converge.