エリアの日射量(Area Solar Radiation) (Spatial Analyst)

サマリ

ラスタ サーフェスからの日射量を取得します。

日射量の計算方法の詳細

使用法

構文

AreaSolarRadiation (in_surface_raster, {latitude}, {sky_size}, {time_configuration}, {day_interval}, {hour_interval}, {each_interval}, {z_factor}, {slope_aspect_input_type}, {calculation_directions}, {zenith_divisions}, {azimuth_divisions}, {diffuse_model_type}, {diffuse_proportion}, {transmittivity}, {out_direct_radiation_raster}, {out_diffuse_radiation_raster}, {out_direct_duration_raster})
パラメータ説明データ タイプ
in_surface_raster

入力標高サーフェス ラスタ

Raster Layer
latitude
(オプション)

解析エリアの緯度。単位は 10 進度で、北半球では正の値、南半球では負の値で表されます。

空間参照を含む入力サーフェス ラスタに対して、平均緯度が自動的に計算されます。空間参照がない場合、緯度はデフォルトの 45 度に設定されます。

Double
sky_size
(オプション)

可視領域、天空図、太陽軌道図グリッドの解像度または天空サイズ。単位はセルです。

デフォルトでは、200 x 200 セルのラスタが作成されます。

Long
time_configuration
(オプション)

日射量の計算に使用する時間設定(期間)を指定します。

[Time] クラス オブジェクトは、時間設定を指定するために使用します。

使用可能な異なるタイプの時間設定には、TimeWithinDayTimeMultiDaysTimeSpecialDaysTimeWholeYear があります。

形式は次のとおりです。

  • TimeWithinDay({day},{start_time},{end_time})
  • TimeMultiDays({year},{start_day},{end_day})
  • TimeSpecialDays()
  • TimeWholeYear({year})

デフォルトの時間設定は、TimeMultiDays で、現在のユリウス年の start_day が 5、end_day が 160 に設定されます。

Time configuration
day_interval
(オプション)

1 年間の時間間隔(単位: 日)太陽軌道図の天空のセクタの計算のために使用されます。

デフォルト値は 14(隔週) です。

Long
hour_interval
(オプション)

1 日間の時間間隔(単位: 時間)太陽軌道図の天空のセクタの計算のために使用されます。

デフォルト値は 0.5。

Double
each_interval
(オプション)

すべての位置に対して、1 つの総日射量の値を計算するか、または特定の時間と日にちの間隔で複数の値を計算するかを指定します。

  • NOINTERVAL全時間設定に対して、1 つの総日射量の値が計算されます。これはデフォルトです。
  • INTERVAL全時間設定の時間間隔ごとに複数の日射量の値が計算されます。出力の数は、時間または日にちの間隔によって異なります。たとえば、一月間隔で一年間の場合には、結果には各位置に対する 12 の日射量の出力値が含まれます。
Boolean
z_factor
(オプション)

サーフェス Z 単位あたりの地表 X、Y 単位の数

Z 単位の測定基準が入力サーフェスの X、Y 単位と異なる場合、Z 係数を使用して Z 測定単位を調整します。最終的な出力サーフェスを計算する際、入力サーフェスの Z 値に Z 係数が乗算されます。

XY 単位と Z 単位の測定基準が同じ場合、Z 係数は 1 になります。これがデフォルトです。

X、Y 単位と Z 単位の測定基準が異なる場合は、Z 係数に適切な値を設定する必要があります。Z 係数が適切でないと、正しい結果が得られません。

たとえば、Z 単位がフィートであり、X、Y 単位がメートルの場合、Z 係数 0.3048 を使用して Z 単位をフィートからメートルへ変換します(1 フィート = 0.3048 メートル)。

Double
slope_aspect_input_type
(オプション)

解析のために、傾斜角と傾斜方向の情報を得る方法

  • FROM_DEM 傾斜角および傾斜方向グリッドは、入力サーフェス ラスタから計算されます。これがデフォルトです。
  • FLAT_SURFACE 定数値の 0 は、傾斜角と傾斜方向に使用されます。
String
calculation_directions
(オプション)

可視領域の計算に使用する方位角の数

有効な値は 8 の倍数(8、16、24、32 など)でなければなりません。デフォルト値は 32 方向で、複雑な地形に適しています。

Long
zenith_divisions
(オプション)

天空図内の天空のセクタを作成するために使用する分割数

デフォルトは 8 分割(天頂への相対)です。値は 0 より大きく、天空サイズの値の半分よりも小さくなければなりません。

Long
azimuth_divisions
(オプション)

天空図内の天空のセクタを作成するために使用する分割数

デフォルトは 8 分割(北から)です。有効な値は 8 の倍数でなければなりません。値は 0 より大きく 160 より小さくなければなりません。

Long
diffuse_model_type
(オプション)

拡散日射モデルのタイプ

  • UNIFORM_SKY 均質な散乱モデル。天空のすべての方向から地球に到達する拡散日射は、すべて同じとなります。これがデフォルトです。
  • STANDARD_OVERCAST_SKY 標準的な曇り空の拡散モデル。地球に到達する拡散日射束は、天頂角によって異なります。
String
diffuse_proportion
(オプション)

全天標準日射量のうち拡散する比率。値の範囲は、0 から 1 です。

この値は大気の状態に従って設定しなければなりません。デフォルト値は、一般的に晴れの場合で 0.3 です。

Double
transmittivity
(オプション)

大気を通過する日射量の(波長全体での平均値)。値の範囲は、0(不透過)から 1(完全透過)です。

デフォルト値は、一般的に晴れの場合で 0.5 です。

Double
out_direct_radiation_raster
(オプション)

各位置での直達日射量を表す出力ラスタ。

出力の単位は、1平方メートルあたりの(WH/m2)です。

Raster Dataset
out_diffuse_radiation_raster
(オプション)

各位置での散乱日射量を表す出力ラスタ。

出力の単位は、1平方メートルあたりの(WH/m2)です。

Raster Dataset
out_direct_duration_raster
(オプション)

直達日射量の期間を表す出力ラスタ。

出力の単位は時間です。

Raster Dataset

リターン

名前説明データ タイプ
out_global_radiation_raster

入力ラスタの各位置に対して計算した、全天日射量または総日射量(直達+散乱)を表す出力ラスタ。

出力の単位は、1平方メートルあたりの(WH/m2)です。

Raster

コードのサンプル

AreaSolarRadiation(エリアから日射量を抽出)の例 1(Python ウィンドウ)

次の Python ウィンドウ スクリプトで、AreaSolarRadiation(エリアから日射量を抽出)ツールの使用方法を示します。

import arcpy
from arcpy.sa import *
from arcpy import env
env.workspace = "C:/sapyexamples/data"
outGlobalRadiation = AreaSolarRadiation("dem30", "", "400", TimeMultipleDays(2008,91,152))
outGlobalRadiation.save("C:/sapyexamples/output/glob_rad")
AreaSolarRadiation(エリアから日射量を抽出)の例 2(スタンドアロン スクリプト)

地理領域全体の日射量を計算します。

# Name: AreaSolarRadiation_example02.py
# Description: Derives incoming solar radiation from a raster surface. 
#              Outputs a global radiation raster and optional direct, diffuse and direct duration rasters
#              for a specified time period. (April to July).
#              
# Requirements: Spatial Analyst Extension

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

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

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

# Set local variables
inRaster = "C:/sapyexamples/data/solar_dem"
latitude = 35.75
skySize = 400
timeConfig = TimeMultipleDays(2008, 91, 212)
dayInterval = 14
hourInterval = 0.5
zFactor = 0.3048
calcDirections = 32
zenithDivisions = 16
azimuthDivisions = 16
diffuseProp = 0.7
transmittivity = 0.4
outDirectRad = ""
outDiffuseRad = ""
outDirectDur = Raster("C:/sapyexamples/output/dir_dur")


# Execute AreaSolarRadiation
outGlobalRad = AreaSolarRadiation(inRaster, latitude, skySize, timeConfig,
   dayInterval, hourInterval, "NOINTERVAL", zFactor, "FLAT_SURFACE",
   calcDirections, zenithDivisions, azimuthDivisions, "UNIFORM_SKY",
   diffuseProp, transmittivity, outDirectRad, outDiffuseRad, outDirectDur)

# Save the output 
outGlobalRad.save("C:/sapyexamples/output/glob_rad")

環境

関連項目

ライセンス情報

ArcView: 必須 Spatial Analyst
ArcEditor: 必須 Spatial Analyst
ArcInfo: 必須 Spatial Analyst

7/10/2012