I'm calculating the multipole moments on several fragments of a molecule. What are some procedures to ensure that the charges etc are representative of the complete molecule? How do I ensure I'm not getting an overall charge in a neutral molecule?
If you're doing any sort of computational run (either quantum chemistry, solid state, or molecular dynamics), you have to set the charge on the overall system.
You said in your comments that you're doing a distributed multipole analysis across multiple fragments of a protein.
In this case, one of the constraints on the calculation is exactly that the overall charge must match that specified. The program won't arbitrarily change the charge to be an anion or a cation if you specified a neutral system.
Now, that's not to say that the individual fragments won't have fractional or integer charges. Depending on the method, it's entirely reasonable that there's some amount of partial charge transfer between fragments.
It's just that there's absolutely no way that the sum of the charges will be different than the constraint.