smooth gravity functions