Calculating dipole moments from atomic partial charges
From a theoretical standpoint, that approach is correct:

$$
\mu_i = \sum_{a}^{N_{\text{atoms}}} \sum_{i\in\{x,y,z\}} r_{ia}q_{a},
$$

where the set of atomic partial charges $\{q\}$ could come from partitioning the density in AO space (Mulliken, Lowdin), partitioning the density in real space (Bader, Voronoi, Hirshfeld), partitioning the electrostatic potential (ESP; Merz-Singh-Kollmann or ChElPG), or other methods I'm certainly forgetting. Another interesting method is based on atomic polar tensors [1], called GAPT or IR charges, which are a natural byproduct of harmonic vibrational frequency calculations.

This doesn't mean the results will be of good quality. Those based on partitioning the AO density seem to be the worst overall. Anecdotally, those based on ESP calculations are better, however if your system has a lot of "buried" atoms that aren't solvent surface-accessible, results may be questionable. Real-space partitioning is an attractive method since it is independent of direct basis set effects and surface accessibility. GAPT results also seem to be good, but they require a harmonic frequency calculation, which can be expensive.




Milani, A.; Castiglioni, C. Atomic charges from atomic polar tensors: A comparison of methods. Journal of Molecular Structure: THEOCHEM 2010, 995 (1-3), 158-164. DOI: 10.1016/j.theochem.2010.06.011