added umbra and penumbra calculations