Using \caps from the soul package with user-defined language shorthands generates an error. However, it works fine with language shorthands defined by babel itself, e.g. by using \usepackage[ngerman]{babel}.
Example:
\documentclass{article}
\usepackage[english]{babel}
\useshorthands{"}
\defineshorthand{"~}{\textormath{\leavevmode\hbox{-}}{-}}
\usepackage{soul}
\begin{document}
\caps{LS"~2}
\end{document}
\caps, and use a real small caps font instead? This might even look better. – mafp Mar 14 at 14:20\capsto increase spacing with normal capitals or small caps font. – Aydin Mar 15 at 8:38microtype, if this is an option for you. – mafp Mar 15 at 8:49