point charge optimization