エリアの日射量(Area Solar Radiation) (Spatial Analyst)
使用法
-
日射量の計算には時間がかかるので、すべてのパラメータが正しいことを確認することが重要です。大きなデジタル標高モデル(DEM)の計算には数時間、非常に大きな DEM の場合は数日かかる場合もあります。
-
出力日射量ラスタは、常に浮動小数点タイプで、単位はワット時/平方メートル(WH/m2)になります。日照時間ラスタ出力は整数で、単位は時間になります。
-
解析エリアの緯度(単位: 10 進度、北半球では正の値、南半球では負の値)が太陽赤緯と太陽の位置などの計算に使用されます。
解析は、地域ごとの地勢スケールにのみ適用するよう設計されます。したがって、通常は DEM 全体 に対して 1 つの緯度の値を使用することが可能です。さらに大きなデータセット(州、国、大陸など)を使用する場合、日射量の結果は、緯度ごとに大きく異なります(1 度以上)。このため広範な地理的範囲を分析する場合、解析領域を緯度ごとに異なるゾーンに分割する必要があります。
-
複数の日数間の解析における最大日数は、合計で 1 年(365 日または、うるう年の 366 日)になります。開始日の数字が終了日よりも大きい場合、時間の計算は翌年に継続されます。
たとえば、[開始日、最終日] = [365、31] は、12 月 31 日から翌年の 1 月 31 日までを表します。また、[1、2] では、時間には最初の日の 0:00(1 月 1 日)から 0:00(1 月 2 日)までが含まれます。開始日と終了日に同じ値を使用することはできません。
時間設定における年の値は、うるう年を指定するためのもので、日射量解析に対するその他の影響はありません。この理由は、計算がユリウス日により算出される期間を示す関数だからです。
-
1 日内での解析における最大時間は 1 日(24 時間)です。たとえば、午後 12:00 から翌日の午後 12:00 までというように日をまたいだ計算は行なわれません。開始時間の数字は終了時間よりも小さくなければなりません。
-
日中内の構成の場合、開始および終了時間は太陽時間として表示されます(単位: 時間(10 進))。[時間変換] ダイアログ ボックス ウィンドウを使用して、現地標準時間と現地太陽時間(HMS)を変換できます。現地標準時間を太陽時間に変換する場合、プログラムは時間の方程式を使用します。
-
サーフェスの Z 単位が地表面の X、Y の単位と異なる場合、正しく計算するためには Z 値の倍率を使用することが重要です。正確な結果を得るためには、Z 単位は X、Y の単位と等しくなければなりません。もし等しくない場合には、Z 係数を使用して Z 単位を X、Y の単位に変換しなければなりません。たとえば、X と Y の単位がメートルであり、Z 単位がフィートの場合、Z 係数 0.3048 を使用して Z 単位をフィートからメートルへ変換します。
-
投影座標系(単位: メートル)内でデータを保存することをお勧めします。ただし、球面座標系を使用した解析の実行を選択する場合には、その緯度に適した Z 係数を指定する必要があります。X、Y の単位が 10 進度で Z 単位がメートルの場合、特定の緯度に適した Z 係数は、次のようになることがあります。
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
-
解析エリアの緯度(単位: 10 進度、北半球では正の値、南半球では負の値)が太陽赤緯と太陽の位置などの計算に使用されます。日射量の解析は地域ごとの地勢スケールにのみ適用するよう設計されているため、DEM 全体に対して 1 つの緯度の値を使用することが可能です。広範な地理的範囲を分析するには、解析領域を緯度ごとに異なるゾーンに分割する必要があります。
-
空間参照を含む入力サーフェス ラスタに対しては、平均緯度が自動的に計算されます。空間参照を含まない場合、緯度はデフォルトの 45 度に設定されます。入力レイヤを使用する場合には、データ フレームの空間参照が使用されます。
-
天空サイズは、日射量の計算に使用される可視領域、天空図、太陽軌道図ラスタの解像度です(単位: 一辺のセル数)。これらは地表から見上げた際の天空の上半球のラスタ表現であり、地理座標系を持ちません。これらのグリッドは正方形(列と行の数が等しい)です。
天空サイズを増やすと計算の精度が上がりますが、計算時間も大幅に増加します。
-
「日間隔」設定が小さい(14 日未満など)場合には、より大きい天空サイズを使用する必要があります。解析において、直達日射量を計算するために、一定期間の太陽の位置(軌跡)を表す太陽軌道図(天空サイズによって決定)が使用されます。日間隔が小さい場合、天空サイズの解像度が十分に高くないと、太陽の軌道が重複して、その軌道に対して 0 以下の日射量の値が算出されます。解像度を上げると、より正確な結果を得ることができます。
-
天空サイズの最大値は 4000 です。デフォルト値は 200 で、大きめの日間隔(> 14 日など)でのすべての DEM にとって十分な値です。天空サイズの値が 512 の場合、計算時間があまりかからない、ポイント位置の計算には十分な値です。日間隔が小さい(< 14 日など)場合、高い値を使用することをお勧めします。たとえば、日間隔 = 1 で赤道位置での日射量を計算する場合、天空サイズ 2800 以上を使用することをお勧めします。
-
天空サイズや一年のどの時期かによって異なりますが、概して、太陽軌道は 3 日以内では同じ場所を通るため、日間隔は 4 日以上にすることをお勧めします。一月間隔で一年間の計算を行う場合には、日間隔は使用できなくなり、プログラムは内部でカレンダー月の 1 間隔を使用します。デフォルト値は 14。
-
可視領域の計算は非常に負担のかかるものであるため、水平角は指定された計算方向の数だけをトレースします。有効な値は 8 の倍数(8、16、24、32 など)でなければなりません。一般的に、8 または 16 は、なだらかな地形に適しています。これに対し、32 は、複雑な地形に適しています。デフォルト値は 32 です。デフォルト値は 32。
-
必要とされる方位計算の数は、入力 DEM の解像度に関連します。30m 解像度の自然地形は一般的に非常に平坦であるため、ほとんどの状況では条件を満たす方向はさらに少なくなります(16 または 32)。より解像度の高い DEM を使用する場合や、特に DEM に組み込まれた人工の構造体を用いる場合は、方位計算の数を増やすことが必要になります。方向の数を増やすことは精度を上げることになりますが、計算時間が増すことにもなります。
-
[各間隔で出力を作成] チェックボックスは、指定された期間に統合された日射量、または時系列の各間隔での日射量を計算するという柔軟性を提供します。たとえば、間隔が 1 時間に設定された 1 日という期間、このチェックボックスをオンにすると 1 時間おきに日射量の値を作成します。それが行われない場合には、1 日に統合された日射量が計算されます。
-
[各間隔で出力を作成] チェックボックス パラメータは、出力日射量ファイルの形式と数に影響します。エリア解析の場合、複数の出力が作成されるため、計算を開始する前に、十分なディスク領域があることを必ず確認してください。オンの場合、デフォルトの出力形式は Esri GRID スタックで、各期間の日射量や日照時間に対応する複数のバンドを含みます(時間構成が 1 日未満の場合は間隔が時間、複数日の場合は間隔が日)。
-
拡散率は、全天標準日射量のうち散乱する比率です。値の範囲は、0 から 1 です。この値は大気の状態に従って設定しなければなりません。一般的に、快晴の場合で 0.2、概ね晴れの場合で 0.3 になります。
-
地表が受ける日射量は、大気圏外の日射量のほんの一部にすぎません。透過性は大気の特性であり、大気の最上部に受けるエネルギーが最短距離(天頂角の方向)を通った場合に地表まで届くエネルギーの割合です。透過性は、すべての波長の長さの透過率の平均値で示されます。値の範囲は、0(不透過)から 1(完全透過)です。一般的に、快晴の場合で 0.6 または 0.7、概ね晴れの場合で 0.5 の観測値が得られます。
アルゴリズムは標高エフェクトを考慮するため、透過性は常に海面に設定されなければなりません。透過性は、拡散率パラメータと逆相関関係にあります。
構文
パラメータ | 説明 | データ タイプ |
in_surface_raster |
入力標高サーフェス ラスタ | Raster Layer |
latitude (オプション) |
解析エリアの緯度。単位は 10 進度で、北半球では正の値、南半球では負の値で表されます。 空間参照を含む入力サーフェス ラスタに対して、平均緯度が自動的に計算されます。空間参照がない場合、緯度はデフォルトの 45 度に設定されます。 | Double |
sky_size (オプション) |
可視領域、天空図、太陽軌道図グリッドの解像度または天空サイズ。単位はセルです。 デフォルトでは、200 x 200 セルのラスタが作成されます。 | Long |
time_configuration (オプション) |
日射量の計算に使用する時間設定(期間)を指定します。 [Time] クラス オブジェクトは、時間設定を指定するために使用します。 使用可能な異なるタイプの時間設定には、TimeWithinDay、TimeMultiDays、TimeSpecialDays、TimeWholeYear があります。 形式は次のとおりです。
デフォルトの時間設定は、TimeMultiDays で、現在のユリウス年の start_day が 5、end_day が 160 に設定されます。 | Time configuration |
day_interval (オプション) |
1 年間の時間間隔(単位: 日)太陽軌道図の天空のセクタの計算のために使用されます。 デフォルト値は 14(隔週) です。 | Long |
hour_interval (オプション) |
1 日間の時間間隔(単位: 時間)太陽軌道図の天空のセクタの計算のために使用されます。 デフォルト値は 0.5。 | Double |
each_interval (オプション) |
すべての位置に対して、1 つの総日射量の値を計算するか、または特定の時間と日にちの間隔で複数の値を計算するかを指定します。
| 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 (オプション) |
解析のために、傾斜角と傾斜方向の情報を得る方法
| 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 (オプション) |
拡散日射モデルのタイプ
| 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 |
コードのサンプル
次の 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")
地理領域全体の日射量を計算します。
# 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")