Points Solar Radiation (Spatial Analyst)
Zusammenfassung
Leitet die Sonneneinstrahlung für bestimmte Positionen in einer Point-Feature-Class oder einer Positionstabelle ab.
Verwendung
-
Bei den Eingabepositionen kann es sich um eine Feature-Class oder um eine Tabelle handeln. Die Tabelle kann eine INFO-Tabelle, eine DBF-Datei, eine Access-Tabelle oder eine Text-Tabellendatei sein.
-
Bei der Eingabe von Positionen nach Tabelle muss eine Liste der Positionen mit einer XY-Koordinate angegeben werden. Unter Verwendung einer Koordinatendatei sollte jede Linie ein durch ein Leerzeichen oder eine Registerkarte getrenntes XY-Paar enthalten. Beispiel:
X Y 325541.218750 4314768.5 325169.250000 4313907.0 325874.031250 4313134.0 325825.093750 4314181.5
Alternativ können Sie Neigung (Grad) und Ausrichtung in der Positionstabelle angeben. Neben den XY-Koordinaten sollte die Datei für jeden Standort den Neigungs- und Ausrichtungswert enthalten. Beispiel:
x y slope aspect 325541.218750 4314768.5 15.84516716 310.2363586 325169.250000 4313907.0 39.39801788 2.03503442 325874.031250 4313134.0 16.10847282 223.8308563 325825.093750 4314181.5 8.89850712 205.2011261
-
Für mehrtägige Zeitkonfigurationen beträgt der maximale Zeitraum ein Jahr (365 Tage bzw. 366 Tage bei Schaltjahren). Wenn der Starttag größer als der Endtag ist, werden die Zeitberechnungen im folgenden Jahr fortgesetzt.
[start day, end day] = [365, 31] steht beispielsweise für den Zeitraum vom 31. Dezember bis zum 31. Januar des Folgejahres. Im Beispiel [1, 2] beginnt der Zeitraum am ersten Tag um 0:00 Uhr (1. Januar) und endet am 2. Januar um 0:00 Uhr (inklusiv). Starttag und Endtag können nicht gleich sein.
Der Jahreswert für die Zeitkonfiguration wird zur Bestimmung eines Schaltjahrs verwendet. Er hat keine weiteren Auswirkungen auf die Analyse der Sonneneinstrahlung, da die Berechnung eine Funktion des Zeitraums ist, der von den julianischen Tagen bestimmt wird.
-
Bei Zeitkonfigurationen innerhalb eines Tages beträgt der maximale Zeitraum einen Tag (24 Stunden). Berechnungen werden nicht über den Tageswechsel durchgeführt (z. B. von 12:00 Uhr mittags des einen bis 12:00 mittags des nächsten Tages). Die Startzeit muss kleiner als die Endzeit sein.
-
Der Z-Faktor ist für die Korrektur von Berechnungen wichtig, wenn die Z-Oberflächeneinheiten andere Maßeinheiten als die XY-Geländeeinheiten aufweisen. Um präzise Ergebnisse zu erzielen, müssen die Z-Einheiten den XY-Geländeeinheiten entsprechen. Sind die Einheiten nicht identisch, rechnen Sie die Z-Einheiten mit einem Z-Faktor in XY-Einheiten um. Beispiel: Wenn die Z-Einheiten in Fuß und die XY-Einheiten in Metern angegeben sind, wählen Sie den Z-Faktor "0,3048", um die Z-Einheiten von Fuß in Meter umzurechnen.
-
Es wird empfohlen, die Daten in einem Projektionskoordinatensystem (Einheit: Meter) vorliegen zu haben. Wenn Sie die Analyse allerdings mit einem sphäroidischen Koordinatensystem ausführen, müssen Sie einen geeigneten Z-Faktor für diesen Breitengrad angeben. Wenn die XY-Einheiten in Dezimalgrad und die Z-Einheiten in Meter angegeben werden, können Sie zum Beispiel die folgenden Z-Faktoren für bestimmte Breitengrade verwenden:
Latitude Z-factor 0 0.00000898 10 0.00000912 20 0.00000956 30 0.00001036 40 0.00001171 50 0.00001395 60 0.00001792 70 0.00002619 80 0.00005156
-
Der Höhenversatz sollte nur in Meter angegeben werden.
-
Der Breitengrad der Standortfläche (Einheit: Dezimalgrad, für die Nordhalbkugel positiv und für die Südhalbkugel negativ) wird u. a. zur Berechnung der Sonnendeklination und -position verwendet. Da die Sonnenanalyse für Querformatmaßstäbe und lokale Maßstäbe entwickelt wurde, ist die Verwendung eines einzigen Breitengradwertes für das ganze DEM akzeptabel. Für umfangreichere geographische Regionen muss das Untersuchungsgebiet in Zonen mit verschiedenen Breitengraden unterteilt werden.
-
Für Eingabeoberflächen-Raster, die einen Raumbezug enthalten, wird der mittlere Breitengrad automatisch berechnet; andernfalls wird der Breitengrad standardmäßig auf 45 Grad festgelegt. Bei Verwendung eines Eingabe-Layers wird der Raumbezug des Datenrahmens verwendet.
-
Die Himmelsgröße ist die Auflösung der Sichtfeld-, Himmelskarten- und Sonnenkarten-Raster, die in den Strahlungsberechnungen (Einheit: Zellen pro Seite) verwendet werden. Dabei handelt es sich um nach oben hin offene, halbkugelförmige Raster-Repräsentationen des Himmels ohne geographisches Koordinatensystem. Diese Gitter sind quadratisch (gleiche Anzahl von Zeilen und Spalten).
Durch Vergrößern der Himmelsgröße vergrößert sich die Berechnungsgenauigkeit, aber auch die Berechnungszeit nimmt beachtlich zu.
-
Bei einer kleinen "Tagesintervall"-Einstellung (z. B. < 14 Tage) sollte eine größere Himmelsgröße verwendet werden. Während der Analyse wird die Sonnenkarte (entsprechend der Himmelsgröße) verwendet, um Sonnenpositionen (Spuren) für bestimmte Zeiträume darzustellen und die direkte Strahlung zu berechnen. Bei geringen Tagesintervallen und einer zu kleinen Himmelsgrößenauflösung überschneiden sich die Sonnenspuren möglicherweise, was für die betreffende Spur zu Strahlungswerten führt, die null oder negativ sind. Mit einer höheren Auflösung wird ein genaueres Ergebnis erzielt.
-
Der maximale Himmelsgrößenwert beträgt 4.000. Der Standardwert 200 reicht für vollständige DEMs mit großen Tagesintervallen (z. B. > 14 Tage) aus. Ein Himmelsgrößenwert von 512 ist ausreichend für Berechnungen an Punktpositionen, bei denen die Berechnungszeit weniger problematisch ist. Bei kleineren Tagesintervallen (z. B. < 14 Tage) wird empfohlen, höhere Werte zu verwenden. Um beispielsweise die Insolation für eine Position am Äquator mit Tagesintervall = 1 zu berechnen, wird empfohlen, eine Himmelsgröße von 2.800 oder mehr zu verwenden.
-
Tagesintervalle über 3 werden empfohlen, da sich die Sonnenspuren innerhalb von drei Tagen in der Regel je nach Himmelsgröße und Jahreszeit überschneiden. Für Berechnungen über das ganze Jahr mit monatlichem Intervall wird das Tagesintervall deaktiviert; das Programm verwendet dann intern Kalendermonatsintervalle. Der Standardwert ist 14.
-
Da die Sichtfeldberechnung sehr ressourcenintensiv sein kann, werden Horizontwinkel nur für die angegebene Anzahl von Berechnungsrichtungen aufgezeichnet. Gültige Werte müssen ein Vielfaches von 8 (8, 16, 24, 32 usw.) sein. In der Regel ist ein Wert von 8 oder 16 für Flächen mit sanfter Topografie geeignet, wohingegen der Wert 32 für komplexe Topografie angemessen ist. Der Standardwert ist 32.
-
Die Anzahl der benötigten Berechnungsrichtungen ist mit der Auflösung des Eingabe-DEMs verknüpft. Natürliches Terrain mit einer Auflösung von 30 m ist in der Regel relativ glatt, sodass in den meisten Situationen weniger Richtungen (16 oder 32) ausreichend sind. Bei feineren DEMs und insbesondere bei künstlichen Strukturen, die in die DEMs integriert wurden, muss die Anzahl der Richtungen erhöht werden. Mit zunehmender Zahl der Richtungen steigt die Genauigkeit, aber auch die Berechnungszeit.
-
Das Kontrollkästchen Create outputs for each interval bietet die Flexibilität, um die integrierte Insolation über einem angegebenen Zeitraum oder "für jedes Intervall" in einer Zeitserie zu berechnen. Wenn beispielsweise für den Zeitraum innerhalb eines Tages mit einem Stundenintervall von 1 dieses Kontrollkästchen aktiviert wird, werden stündliche Insolationswerte erzeugt; andernfalls wird die integrierte Insolation für den ganzen Tag berechnet.
-
Das Kontrollkästchen "Create outputs for each interval" wirkt sich auf die Anzahl der Attribute für Ausgabe-Features aus. Wenn die Option für die Punktstrahlungsanalyse aktiviert ist, enthält die Ausgabe-Feature-Class zusätzliche Attribute (t0, t1, t2 usw.), die für jedes Zeitintervall (Stundenintervall bei einer Zeitkonfiguration von weniger als einem Tag, Tagesintervall bei mehreren Tagen) Strahlungs- bzw. Dauerwerte angeben.
-
Von der Oberfläche wird nur ein geringer Teil der Sonneneinstrahlung empfangen, die außerhalb der Atmosphäre auf die Erde einwirkt. Die Transmittivity ist eine Eigenschaft der Atmosphäre. Sie ist definiert als der Durchschnitt der Energie aller Wellenlängen, die an der Oberkante der Atmosphäre auftrifft, im Verhältnis zu der Energie, die die Erdoberfläche auf dem kürzesten Weg (in Zenitrichtung) erreicht. Die Werte liegen zwischen 0 (keine Übertragung) und 1 (vollständige Übertragung). Typische Werte liegen bei 0,6 oder 0,7 (sehr klare Himmelsbedingungen) bzw. 0,5 (klarer Himmel allgemein).
Da die Algorithmen Höheneffekte korrigieren, sollte die Transmittivity immer auf Meereshöhe angegeben werden. Die Transmittivity ist umgekehrt proportional zum diffusen Verhältnisparameter.
Syntax
Parameter | Erläuterung | Datentyp |
in_surface_raster |
Eingabe-Höhenoberflächen-Raster. | Raster Layer |
in_points_feature_or_table |
Die Eingabe-Point-Feature-Class oder die Tabelle mit den Positionen zur Analyse der Sonneneinstrahlung. | Feature Layer | Table View |
out_global_radiation_features |
Die Ausgabe-Feature-Class, die die globale Strahlung bzw. die Menge der Sonneneinstrahlung (direkt + diffus) darstellt, die für jede Position berechnet wird. Ausgabeeinheit: Wattstunden pro Quadratmeter (WH/m2). | Feature Class |
height_offset (optional) |
Die Höhe (in Meter) über der DEM-Oberfläche, für die Berechnungen durchgeführt werden sollen. Der Höhenversatz wird auf alle Eingabepositionen angewendet. | Double |
latitude (optional) |
Der Breitengrad der Standortfläche. Die Angabe erfolgt in Dezimalgrad (für die Nordhalbkugel positiv und für die Südhalbkugel negativ). Für Eingabeoberflächen-Raster, die einen Raumbezug enthalten, wird der mittlere Breitengrad automatisch berechnet; andernfalls wird der Breitengrad standardmäßig auf 45 Grad festgelegt. | Double |
sky_size (optional) |
Die Auflösung oder Himmelsgröße für das Sichtfeld, die Himmelskarte und Sonnen-Kartengitternetze. Einheit: Zellen. Standardmäßig wird ein Raster von 200 x 200 Zellen erzeugt. | Long |
time_configuration (optional) |
Gibt die Zeitkonfiguration (den Zeitraum) an, die zum Berechnen der Sonneneinstrahlung verwendet wird. Die Time-Class-Objekte dienen zur Angabe der Zeitkonfiguration. Die folgenden Zeitkonfigurationsarten sind verfügbar: TimeWithinDay, TimeMultiDays, TimeSpecialDays und TimeWholeYear. Formate:
Die standardmäßige Zeitkonfiguration lautet TimeMultiDays mit start_day 5 und end_day 160 (aktuelles julianisches Jahr). | Time configuration |
day_interval (optional) |
Das Zeitintervall für das ganze Jahr (Einheit: Tage), das zur Berechnung von Himmelssektoren für die Sonnenkarte verwendet wird. Der Standardwert ist 14 (zweiwöchentlich). | Long |
hour_interval (optional) |
Das Zeitintervall für den ganzen Tag (Einheit: Stunden), das zur Berechnung von Himmelssektoren für Sonnenkarten verwendet wird. Der Standardwert ist 0.5. | Double |
each_interval (optional) |
Gibt an, ob für das angegebene Stunden- und Tagesintervall ein einziger Gesamt-Insolationswert für alle Standorte oder mehrere Werte berechnet werden sollen.
| Boolean |
z_factor (optional) |
Die Anzahl der XY-Geländeeinheiten in einer Z-Oberflächeneinheit. Durch den Z-Faktor werden die Maßeinheiten der Z-Einheiten angepasst, falls sie sich von den XY-Einheiten der Eingabeoberfläche unterscheiden. Die Z-Werte der Eingabeoberfläche werden bei der Berechnung der endgültigen Ausgabeoberfläche mit dem Z-Faktor multipliziert. Falls die XY-Einheiten und die Z-Einheiten in denselben Maßeinheiten ausgedrückt sind, lautet der Z-Faktor 1. Hierbei handelt es sich um die Standardeinstellung. Wenn die XY- und Z-Einheiten unterschiedliche Maßeinheiten aufweisen, muss der Z-Faktor entsprechend festgelegt werden, da andernfalls falsche Ergebnisse erzielt werden. Beispiel: Wenn die Z-Einheiten in Fuß und die XY-Einheiten in Metern angegeben sind, müssen Sie den Z-Faktor "0,3048" wählen, um die Z-Einheiten von Fuß in Meter umzurechnen (1 Fuß = 0,3048 Meter). | Double |
slope_aspect_input_type (optional) |
Gibt an, wie Neigungs- und Ausrichtungsinformationen für die Analyse abgeleitet werden.
| String |
calculation_directions (optional) |
Die Anzahl der azimutalen Richtungen, die beim Berechnen des Sichtfelds verwendet werden. Gültige Werte müssen ein Vielfaches von 8 (8, 16, 24, 32 usw.) sein. Der Standardwert liegt bei 32 Richtungen, was für komplexe Topografie angemessen ist. | Long |
zenith_divisions (optional) |
Die Anzahl der Abschnitte, die zum Erstellen von Himmelssektoren in der Himmelskarte verwendet werden. Der Standard beträgt 8 Abschnitte (relativ zum Zenit). Die Werte müssen größer als null und kleiner als die Hälfte des Himmelsgrößenwerts sein. | Long |
azimuth_divisions (optional) |
Die Anzahl der Abschnitte, die zum Erstellen von Himmelssektoren in der Himmelskarte verwendet werden. Der Standard beträgt 8 Abschnitte (relativ zur nördlichen Richtung). Gültige Werte müssen ein Vielfaches von 8 sein. Außerdem müssen sie größer als null und kleiner als 160 sein. | Long |
diffuse_model_type (optional) |
Typ des diffusen Strahlungsmodells.
| String |
diffuse_proportion (optional) |
Der diffuse Anteil des globalen normalen Strahlungsflusses. Die Werte liegen zwischen 0 und 1. Dieser Wert sollte entsprechend den atmosphärischen Bedingungen festgelegt werden. Der Standardwert beträgt 0,3 bei allgemein klaren Himmelsbedingungen. | Double |
transmittivity (optional) |
Der Strahlungsanteil, der durch die Atmosphäre dringt (Durchschnitt aller Wellenlängen). Die Werte liegen zwischen 0 (keine Übertragung) und 1 (vollständige Übertragung). Der Standardwert beträgt 0,5 bei allgemein klarem Himmel. | Double |
out_direct_radiation_features (optional) |
Die Ausgabe-Feature-Class, die die direkte Sonneneinstrahlung für jede Position darstellt. Ausgabeeinheit: Wattstunden pro Quadratmeter (WH/m2). | Feature Class |
out_diffuse_radiation_features (optional) |
Die Ausgabe-Feature-Class, die die Sonneneinstrahlung für jede Position darstellt, die diffus ist. Ausgabeeinheit: Wattstunden pro Quadratmeter (WH/m2). | Feature Class |
out_direct_duration_features (optional) |
Die Ausgabe-Feature-Class, die die Dauer der direkten Sonneneinstrahlung darstellt. Ausgabeeinheit: Stunden. | Feature Class |
Codebeispiel
Das folgende Skript im Python-Fenster veranschaulicht die Verwendung des Werkzeugs PointsSolarRadiation.
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" PointsSolarRadiation("elevation", "observers.shp", "c:/sapyexamples/output/outglobalrad1.shp", "", 35, 200, TimeMultipleDays(2009, 91, 212), 14, 0.5,"NOINTERVAL", 1, "FROM_DEM", 32, 8, 8,"STANDARD_OVERCAST_SKY", 0.3, 0.5, "c:/sapyexamples/output/outdirectrad1.shp", "c:/sapyexamples/output/outdiffuserad1.shp", "c:/sapyexamples/output/outduration1.shp")
Berechnen Sie die Menge der Sonneneinstrahlung für bestimmte Punktpositionen.
# PointsSolarRadiation_Example02.py # Description: For all point locations, calculates total global, direct, # diffuse and direct duration solar radiation for a whole year. # 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" # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Set local variables inRaster = "elevation" inPntFC = "observers.shp" outFeatures = "c:/sapyexamples/output/outglobal1.shp" latitude = 35.75 skySize = 200 timeConfig = TimeMultipleDays(2009, 91, 212) dayInterval = 14 hourInterval = 0.5 zFactor = 0.3048 calcDirections = 32 zenithDivisions = 8 azimuthDivisions = 8 diffuseProp = 0.3 transmittivity = 0.5 outDirectRad = "C:/sapyexamples/output/outdirectrad1.shp" outDiffuseRad = "C:/sapyexamples/output/outdiffuserad1.shp" outDirectDur = "C:/sapyexamples/output/outduration1.shp" # Execute PointsSolarRadiation... PointsSolarRadiation(inRaster, inPntFC, outFeatures, "", latitude, skySize, timeConfig, dayInterval, hourInterval, "INTERVAL", zFactor, "FROM_DEM", calcDirections, zenithDivisions, azimuthDivisions,"STANDARD_OVERCAST_SKY", diffuseProp, transmittivity, outDirectRad, outDiffuseRad, outDirectDur)