Solar eclipse and calendar calculation