I think one of the calculators in our suite of DIY passive solar building design calculators may accomplish exactly what you want. You will just have to use a Solar Pathfinder (please see the Affiliates tab on our website for more info about this tool) or just use an Abney level and a compass to acquire the altitude angles of the terrain obstacles around the location of your solar project. The terrain obstacle altitude and azimuth angles (true, not magnetic) need to be entered into the calculator every 10 degrees from 60 to 300 degrees. For the requested day of the year, the calculator will determine the local time first/last irradiance occurs and the length of irradiance (based on the first/last irradiance times) accounting for the terrain obstacles. The calculator will also determine the local time sunrise/sunset (or the local time of the selected twilight civil, nautical or astronomical dawn/dusk) occurs and the length of day (based on the sunrise/sunset times) and NOT accounting for the terrain obstacles.
Borst Passive Solar Fenestration Exposure Calculator