Please find the following example that the CoreShellMatrixElements function produce nan values. This often happens with relative large size parameter of the shell, but small core.
nc1 = 1.33+0.0j
nc2 = 1.34+0.0j
x1 = 1
x2 = 200
CoreShellMatrixElements(nc1, nc2, x1, x2, 1), CoreShellMatrixElements(nc1, nc2, x1, x2, 0)