expose intermediate XYZ conversion functions
typo
ensure vectorization
add JK a' bp' -> JMh inverse