TimeWithinDay (arcpy.sa)

Récapitulatif

Defines a time period within one day to perform solar caclulations. A Julian Day, start time, and end time are specified.

Discussion

This object can be used in the following tools: Area Solar Radiation, Points Solar Radiation, and Solar Radiation Graphics.

When the startTime and the endTime are the same, instantaneous insolation will be calculated. When the startTime is before sunrise and the endTime is after sunset, insolation will be calculated for the whole day.

For within-day time configurations, the maximum range of time is one day (24 hours). Calculations will not be performed across days (for instance, from 12:00 p.m. to 12:00 p.m. the next day). The startTime must be less than the endTime.

For within-day time configurations, the start and end times are displayed as solar time (units: decimal hours). When converting local standard time to solar time, the program accounts for equation of time.

Syntaxe

TimeWithinDay ({day}, {startTime}, {endTime})
ParamètreExplicationType de données
day

The day is a Julian day value from 1 to 365.

(La valeur par défaut est 183 of the Julian calendar)

Long
startTime

The startTime is the first hour to be used in the analysis. The hour is represented with a number from 0 to 24.

(La valeur par défaut est 0)

Double
endTime

The endTime is the last hour to be used in the analysis. The hour is represented with a number from 0 to 24.

(La valeur par défaut est 24)

Double

Propriétés

PropriétéExplicationType de données
day
(Lecture/écriture)

The day is a Julian day value from 1 to 365.

Long
startTime
(Lecture/écriture)

The startTime is the first hour to be used in the analysis. The hour is represented with a number from 0 to 24.

Double
endTime
(Lecture/écriture)

The endTime is the last hour to be used in the analysis. The hour is represented with a number from 0 to 24.

Double

Exemple de code

TimeWithinDay example 1 (Python window)

Demonstrates how to create a TimeWithinDay class and use it in the AreaSolarRadiation tool within the Python window.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
myTimeWithinDay = TimeWithinDay(264, 11, 14)
outAreaSolar = AreaSolarRadiation("solar_dem", "", "", myTimeWithinDay)
outAreaSolar.save("C:/sapyexamples/output/areasolartwd")
TimeWithinDay example 2 (stand-alone script)

Calculates the incoming solar radiation with the AreaSolarRadiation tool using the TimeWithinDay class.

# Name: TimeWithinDay_Ex_02.py
# Description: Execute AreaSolarRadiation using the TimeWithinDay object
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster = "solar_dem"

# Create TimeWithinDay Object
day = 100
startTime = 0 
endTime = 24
myTimeWithinDay = TimeWithinDay(day, startTime, endTime)

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute AreaSolarRadiation
outAreaSolar = AreaSolarRadiation(inRaster, "", 200, myTimeWithinDay, 14, 0.5,
                                  "NOINTERVAL", 1, "FROM_DEM", 32, 8, 8,
                                  "UNIFORM_SKY", 0.3, 0.5)

# Save the output 
outAreaSolar.save("C:/sapyexamples/output/areasolartwd2")

Thèmes connexes

4/26/2014