Т.Пфлегер, О.Монтенбрук - Астрономия на персональном компьютере.
Полнолуние - разность эклиптических долгот Луны и Солнца 180 градусов, новолуние - 0. По модулю 360, естественно.
Для вычисления моментов наступления заданных фаз считаете разницу средних аномалий (нулевое приближение), потом последовательными приближениями приходите к моменту времени с необходимой точностью.
С достаточной точностью можно использовать формулы, приведённые в Астрономическом календаре, постоянная часть. Завтра могу указать, какие формулы на каких страницах для этого использовать.