ラベル | 説明 | データ タイプ |
入力サーフェス ラスター | 入力標高サーフェス ラスター。 | Raster Layer |
入力ポイントまたはポリゴン フィーチャ | 受けた日射量を計算する場所または人工的なサーフェスを表す入力フィーチャ (ポイントまたはポリゴン)。 | Feature Layer |
一意の ID フィールド | 各フィーチャを定義する値を含むフィールド。 入力フィーチャの整数または文字列フィールドを使用できます。 | Field |
出力テーブル | 入力フィーチャが受けた日射量の集計を含む出力テーブル。 テーブルの形式は、出力先とパスによって決定されます。 デフォルトでは、出力は、ジオデータベース ワークスペースではジオデータベース テーブル、ファイル ワークスペースでは dBASE テーブルになります。 | Table |
開始日時 | 解析の開始日時。 | Date |
終了日時 | 解析の終了日時。 | Date |
タイム ゾーン (オプション) | 開始時間と終了時間に使用されるタイム ゾーン。 デフォルトは協定世界時 (UTC) です。
| String |
サマータイムに合わせた時間の調整 (オプション) | 入力時間設定をサマータイムに合わせて調整するかどうかを指定します。 このパラメーターは、月での解析には適用されません。
| Boolean |
時間間隔に対する日射量の計算 (オプション) | 全時間設定に対して 1 つの総日射量の値を計算するか、指定した間隔に対して複数の日射量の値を計算するかを指定します。
| Boolean |
時間間隔の単位 (オプション) | 全時間設定に対して、日射量の値の計算に使用する時間単位を指定します。 このパラメーターは、[時間間隔に対する日射量の計算] パラメーターがオンの場合のみ使用できます。
| String |
時間間隔 (オプション) | 各間隔の間の期間または時間の値。 デフォルト値は、指定した間隔単位によって異なります。 使用可能な各単位のデフォルト値は以下のとおりです。
| Long |
フィーチャ オフセット (オプション) | 解析用にラスター サーフェスに追加される垂直距離。 値は整数または浮動小数点で指定する必要があります。 入力フィーチャ データセットからフィールドを選択するか、数値を指定できます。 たとえば、オブジェクトがパネルの場合、パネルの高さを指定します。 このパラメーターに値を指定すると、その値がすべてのフィーチャで使用されます。 個々のフィーチャごとに別の値を指定するには、入力フィーチャ データセットからフィールドを選択します。 デフォルト値は 0 です。 | Double; Field |
フィーチャの面積 (オプション) | 入力フィーチャに関連付けられた面積。 値は整数または浮動小数点で指定する必要があります。 入力フィーチャ データセットからフィールドを選択するか、数値を指定できます。 たとえば、オブジェクトがパネルの場合、パネルの面積を指定します。 このパラメーターに値を指定すると、その値がすべてのフィーチャで使用されます。 個々のフィーチャごとに別の値を指定するには、入力フィーチャ データセットからフィールドを選択します。 デフォルトでは、面積は入力フィーチャから取得されます。 ポイント フィーチャの場合、デフォルトの面積は 0 です。 | Double; Field |
フィーチャの傾斜角 (オプション) | 入力フィーチャに関連付けられた相対的な傾斜角。 値は整数または浮動小数点で指定する必要があります。 入力フィーチャ データセットからフィールドを選択するか、数値を指定できます。 たとえば、オブジェクトがパネルの場合、パネルの傾斜角を指定します。 このパラメーターに値を指定すると、その値がすべてのフィーチャで使用されます。 個々のフィーチャごとに別の値を指定するには、入力フィーチャ データセットからフィールドを選択します。 傾斜角は 0 〜 90 度で表されます。 解析のデフォルト値は、入力サーフェス ラスターの基になる値から計算されます。 | Double; Field |
フィーチャの傾斜方向 (オプション) | 入力フィーチャに関連付けられた相対的な傾斜方向。 値は整数または浮動小数点で指定する必要があります。 入力フィーチャ データセットからフィールドを選択するか、数値を指定できます。 たとえば、オブジェクトがパネルの場合、パネル面の方向を指定します。 このパラメーターに値を指定すると、その値がすべてのフィーチャで使用されます。 個々のフィーチャごとに別の値を指定するには、入力フィーチャ データセットからフィールドを選択します。 傾斜方向は 0 〜 360 度で表されます。 解析エリアのデフォルト値は、入力サーフェス ラスターの基になる値から計算されます。 | Double; Field |
近傍距離 (オプション) | 出力日射量の値を計算する対象となるセルの中心からの距離。 これによって近傍のサイズを決定します。 デフォルト値は入力サーフェス ラスターのセル サイズで、3 x 3 の近傍になります。 | Linear Unit |
適応近傍の使用 (オプション) | 地形の変化に応じて近傍距離が変化するかどうかを指定します (アダプティブ)。 最大距離は近傍距離によって決定されます。 最小距離は、出力ラスターのセル サイズです。
| Boolean |
散乱モデル タイプ (オプション) | 使用される散乱日射モデルのタイプを指定します。
| String |
散乱率 (オプション) | 全天標準日射量のうち散乱する比率。 値の範囲は、0 から 1 です。 大気の状態に従って、この値を設定します。 デフォルト値は、一般的に晴れの場合で 0.3 です。 | Double |
透過率 (オプション) | 大気を通過する日射量の一部 (波長全体での平均値)。 値の範囲は、0 (不透過) から 1 (完全透過) です。 デフォルト値は、一般的に晴れの場合で 0.5 です。 | Double |
解析のターゲット デバイス (オプション) | 計算の実行に使用するデバイスを指定します。
| String |
出力結合レイヤー (オプション) | 出力テーブルを入力フィーチャクラスに結合することで作成される出力レイヤー。 これは、任意の出力です。 | Feature Layer |
太陽図グリッド レベル (オプション) |
内部計算に使用される H3 六角形グリッド セルを生成する際に使用する解像度。 グリッド レベルの値が小さいと、作成される大規模な太陽図エリアが少なくなるため、ツールの実行時間が短縮されます。 グリッド レベルの値が大きいと、作成される小規模な太陽図エリアが多くなるため、結果の正確度が上がります。 地球の場合、太陽図グリッド レベルの有効な値の範囲は 5 ~ 7 です。 月の場合、有効な値の範囲は 4 ~ 6 です。 デフォルトのグリッド レベルは入力サーフェス ラスターによって決まります。 地球のサーフェス データの解析では、解析セル サイズが 4 メートル以下の場合、デフォルトのグリッド レベルは 6 になります。 解析セル サイズが 4 メートルを超える場合、デフォルトのグリッド レベルは 5 になります。 月のサーフェス データの解析では、デフォルトのグリッド レベルは 6 になります。 | Long |
Spatial Analyst のライセンスで利用可能。
サマリー
地球または月の表面 (地表) を基準とした入力ポイントまたはポリゴン フィーチャの日射量を計算します。
入力フィーチャは、サイズ、高さ、および地表に対する解析の方位を定義する属性を指定することで、場所または人工的なサーフェスを表すことができます。 日射量は、各フィーチャが一定時間内に受けた日射エネルギーの量として計算されます。 値は、フィーチャの面積の合計および平均として表され、単位はそれぞれキロワット時 (kWh) および 1 平方メートルあたりのキロワット時 (kWh/m2) です。
使用法
[入力サーフェス ラスター] パラメーターの定義済みの空間参照は、解析対象が地球であるか月であるかを指定します。
日射量の計算では、出力座標系の環境値が投影座標系 (PCS) である必要があります。 メートル単位で PCS でデータを保存することをお勧めします。 球面座標系で解析を実行する場合、出力座標系の環境を有効な PCS に設定する必要があります。
入力フィーチャは、ポイントまたはポリゴン フィーチャ データである必要があります。 3D またはマルチパッチでの解析はサポートされていません。
入力フィーチャ パラメーターを使用し、すべてのフィーチャまたは個々のフィーチャに方向、傾き、面積、およびオフセットを指定してその他の詳細情報を追加することで、人工的なサーフェスを表すことができます。たとえば、ポイントの集合を地表または建物の屋根に設置したソーラー パネル アレイとして表すことができます。
出力テーブル形式にジオデータベースを指定することをお勧めします。 これにより、パフォーマンスと機能が向上します。 dBase ファイル形式 (.dbf) のテーブルでは、精度、フィールド名の長さ、および日時形式に既知の制限があります。
総日射量、直達日射量、散乱日射量、および日照時間の計算値が属性として出力テーブルに追加されます。 これらの値には、各フィーチャの総日射量 (地域全体) と平均日射量 (単位面積あたり) が含まれます。 単位はそれぞれキロワット時 (kWh) および 1 平方メートルあたりのキロワット時 (kwh/m2) です。 期間の単位は時間です。
総日射量は、フィーチャ (またはその一部) と交差する入力サーフェス ラスターの各セルの位置を解析し、そのフィーチャの面積を掛けて計算されます。 フィーチャの中心の 1 箇所に対して計算されるわけではありません。
ポリゴン フィーチャが少数、または非常に分散している大規模な範囲の解析を実行する場合、ラスター化に必要な解像度により、処理にさらに時間がかかる場合があります。
[フィーチャの傾斜角]、[フィーチャの傾斜方向]、[フィーチャの面積]、および [フィーチャ オフセット] パラメーターを使用して、方向、傾き、面積、オフセットなどのその他の詳細情報を指定することで、日射を遮る可能性のある人工的なサーフェスを表すことができます。 これらのサーフェスには、静的なものもあれば、時間に応じて位置や方位が変化するものもあります。 たとえば、地表または建物の屋上に設置されたソーラー パネル アレイや、移動中の車両に搭載されたパネルなどを表すポイントの集合を指定できます。
フィーチャ パラメーターが指定されていない場合、デフォルトでは入力サーフェス ラスターまたは個々のフィーチャから値が計算されます。 特に指定しない限り、ポイントの面積は 0 です。
これらのパラメーターのいずれかの値を指定すると、その値はすべての入力フィーチャに適用されます。 あるいは、入力フィーチャから入力フィールド属性を指定して、各フィーチャを個別に解析することもできます。 フィールドが指定され、値が存在しない (NULL) 場合、その値は 0 として設定されます。
サマータイムは地球の場合にのみ使用できます。 月の場合、時刻を UTC で指定する必要があります。
[終了日時] パラメーター値は、開始日時以降である必要があります。 合計期間は 1 年以内にする必要があります。 開始日時と終了日時は暦年をまたぐことができます。
出力日射量の値は、それぞれの時間間隔ごとに計算されます。 ある時間間隔における日射量が 0 の場合、その場所に対する結果は 0 になります。
開始時間と終了時間で指定された合計時間が時間間隔で均等に分割できない場合、合計期間は必要なタイム スライス数を提供するために内部的に延長されます。 たとえば、[時間間隔] パラメーターが 3 日に設定されているものの、指定された開始時間と終了時間の差が 8 日の場合、時間間隔は 9 日に延長されます。 時間に対する部分的な結果は返されません。
地球データの最小時間間隔は 30 分であり、30 に比例する必要があります。 月データの最小時間間隔は 2 時間であり、2 に比例する必要があります。
[近傍距離] (Python では neighborhood_distance) パラメーターは近傍サイズを決定し、ターゲット セルの中心からこの距離でサーフェス パラメーターを計算します。 入力ラスターのセル サイズよりも値を小さくすることはできません。
近傍距離が小さいほど、小さな地形フィーチャの特性など、地形の局所的な変動性を取得できます。 高解像度の標高データでは、距離が大きい方が適切な場合があります。
[適応可能な近傍の使用] パラメーターをオンにしている場合 (Python では use_adaptive_neighborhood = "ADAPTIVE_NEIGHBORHOOD")、近隣距離が地形の変動により変化します。 計算ウィンドウの変動性が大きすぎる場合、近傍距離は減少します。
月には大気が存在しないため、放射パラメーターの散乱率と透過率は解析時には関係ありません。 その結果、散乱日射量は 0 になり、総日射量は直達日射量に等しくなります。
散乱率は、全天標準日射量のうち散乱する比率です。 値の範囲は、0 から 1 です。 大気の状態に従って、この値を設定します。 一般的に、快晴の場合で 0.2、概ね晴れの場合で 0.3 になります。
透過率は、大気の上限部分で受け取られるエネルギーに対する、地表まで届いているエネルギーの割合です。 値の範囲は、0 (不透過) から 1 (完全透過) です。 一般的に、快晴の場合で 0.6 または 0.7、概ね晴れの場合で 0.5 の観測値が得られます。
透過率は、散乱率パラメーターと逆相関関係にあります。 これらの値を変更すると、モデルの結果に影響を与える可能性があります。 対象地域の最適な値を特定する際は、複数の変数 (場所、時間など) による影響を受けます。 これらの値を変更して、結果に与える影響を比較できます。
[太陽図グリッド レベル] パラメーターでは、計算の速度と精度を制御します。 これにより、H3 地理空間インデックス システムに基づいて、内部計算に使用される六角形グリッド セルの解像度が調整されます。
グリッド レベルの値が小さいと、作成される大規模な太陽図エリアが少なくなるため、ツールの実行時間が短縮されます。 グリッド レベルの値が大きいと、作成される小規模な太陽図エリアが多くなるため、結果の精度が上がります。
地球の場合、太陽図グリッド レベルの有効な値の範囲は 5 ~ 7 です。 月の場合、有効な値の範囲は 4 ~ 6 です。
デフォルト レベルは入力サーフェス ラスターによって決まります。 地球のサーフェス データの解析では、解析セル サイズが 4 メートル以下の場合、デフォルトのグリッド レベルは 6 になります。 セル サイズが 4 メートルを超える場合、デフォルトのグリッド レベルは 5 になります。 月のサーフェス データの解析では、デフォルト レベルは 6 になります。
次の表には、太陽図グリッド レベルごとの六角形グリッド セルの平均面積が平方キロメートル単位で示されています。
レベル 地球 月 4
該当なし
131.6
5
252.9 (デフォルト > 4m)
18.8
6
36.1 (デフォルト < 4m)
2.69 (デフォルト)
7
5.16
該当なし
このツールは GPU により処理を加速化できます。つまり、システムで互換性のあるグラフィックス処理装置 (GPU) を使用可能な場合は、それを使用してツールのパフォーマンスを強化できます。 このツールの実行に GPU と CPU のどちらを使用するかを制御するには、[解析のターゲット デバイス] (Python では analysis_target_device) パラメーターを使用します。
互換性のある GPU、GPU デバイスの構成と動作、トラブルシューティングのヒントの詳細については、Spatial Analyst での GPU 処理をご参照ください。
このツールに適用されるジオプロセシング環境の詳細については、「解析環境と Spatial Analyst」をご参照ください。
参考資料:
Acton, C. A. "Ancillary data services of NASA's Navigation and Ancillary Information Facility". Planetary and Space Science. Vol. 44, Issue 1, January 1996, 65-70. https://doi.org/10.1016/0032-0633(95)00107-7
Acton, C, Bachman, Semenov, B., and Wright, E. "A look towards the future in the handling of space science mission geometry". Planetary and Space Science. Volume 150, January 2018, 9-12. https://doi.org/10.1016/j.pss.2017.02.013
Brodsky, I., "Uber’s Hexagonal Hierarchical Spatial Index H3", Engineering (blog), June 27, 2018, https://www.uber.com/blog/h3/
パラメーター
FeatureSolarRadiation(in_surface_raster, in_features, unique_id_field, out_table, start_date_time, end_date_time, {time_zone}, {adjust_DST}, {use_time_interval}, {interval_unit}, {interval}, {feature_offset}, {feature_area}, {feature_slope}, {feature_aspect}, {neighborhood_distance}, {use_adaptive_neighborhood}, {diffuse_model_type}, {diffuse_proportion}, {transmittivity}, {analysis_target_device}, {out_join_layer}, {sunmap_grid_level})
名前 | 説明 | データ タイプ |
in_surface_raster | 入力標高サーフェス ラスター。 | Raster Layer |
in_features | 受けた日射量を計算する場所または人工的なサーフェスを表す入力フィーチャ (ポイントまたはポリゴン)。 | Feature Layer |
unique_id_field | 各フィーチャを定義する値を含むフィールド。 入力フィーチャの整数または文字列フィールドを使用できます。 | Field |
out_table | 入力フィーチャが受けた日射量の集計を含む出力テーブル。 テーブルの形式は、出力先とパスによって決定されます。 デフォルトでは、出力は、ジオデータベース ワークスペースではジオデータベース テーブル、ファイル ワークスペースでは dBASE テーブルになります。 | Table |
start_date_time | 解析の開始日時。 | Date |
end_date_time | 解析の終了日時。 | Date |
time_zone (オプション) | 開始時間と終了時間に使用されるタイム ゾーン。 デフォルトは協定世界時 (UTC) です。
| String |
adjust_DST (オプション) | 入力時間設定をサマータイムに合わせて調整するかどうかを指定します。 このパラメーターは、月での解析には適用されません。
| Boolean |
use_time_interval (オプション) | 全時間設定に対して 1 つの総日射量の値を計算するか、指定した間隔に対して複数の日射量の値を計算するかを指定します。
| Boolean |
interval_unit (オプション) | 全時間設定に対して、日射量の値の計算に使用する時間単位を指定します。 このパラメーターは、use_time_interval パラメーターが INTERVAL に設定されている場合のみサポートされます。
| String |
interval (オプション) | 各間隔の間の期間または時間の値。 デフォルト値は、指定した間隔単位によって異なります。 使用可能な各単位のデフォルト値は以下のとおりです。
| Long |
feature_offset (オプション) | 解析用にラスター サーフェスに追加される垂直距離。 値は整数または浮動小数点で指定する必要があります。 入力フィーチャ データセットからフィールドを選択するか、数値を指定できます。 たとえば、オブジェクトがパネルの場合、パネルの高さを指定します。 このパラメーターに値を指定すると、その値がすべてのフィーチャで使用されます。 個々のフィーチャごとに別の値を指定するには、入力フィーチャ データセットからフィールドを選択します。 デフォルト値は 0 です。 | Double; Field |
feature_area (オプション) | 入力フィーチャに関連付けられた面積。 値は整数または浮動小数点で指定する必要があります。 入力フィーチャ データセットからフィールドを選択するか、数値を指定できます。 たとえば、オブジェクトがパネルの場合、パネルの面積を指定します。 このパラメーターに値を指定すると、その値がすべてのフィーチャで使用されます。 個々のフィーチャごとに別の値を指定するには、入力フィーチャ データセットからフィールドを選択します。 デフォルトでは、面積は入力フィーチャから取得されます。 ポイント フィーチャの場合、デフォルトの面積は 0 です。 | Double; Field |
feature_slope (オプション) | 入力フィーチャに関連付けられた相対的な傾斜角。 値は整数または浮動小数点で指定する必要があります。 入力フィーチャ データセットからフィールドを選択するか、数値を指定できます。 たとえば、オブジェクトがパネルの場合、パネルの傾斜角を指定します。 このパラメーターに値を指定すると、その値がすべてのフィーチャで使用されます。 個々のフィーチャごとに別の値を指定するには、入力フィーチャ データセットからフィールドを選択します。 傾斜角は 0 〜 90 度で表されます。 解析のデフォルト値は、入力サーフェス ラスターの基になる値から計算されます。 | Double; Field |
feature_aspect (オプション) | 入力フィーチャに関連付けられた相対的な傾斜方向。 値は整数または浮動小数点で指定する必要があります。 入力フィーチャ データセットからフィールドを選択するか、数値を指定できます。 たとえば、オブジェクトがパネルの場合、パネル面の方向を指定します。 このパラメーターに値を指定すると、その値がすべてのフィーチャで使用されます。 個々のフィーチャごとに別の値を指定するには、入力フィーチャ データセットからフィールドを選択します。 傾斜方向は 0 〜 360 度で表されます。 解析エリアのデフォルト値は、入力サーフェス ラスターの基になる値から計算されます。 | Double; Field |
neighborhood_distance (オプション) | 出力日射量の値を計算する対象となるセルの中心からの距離。 これによって近傍のサイズを決定します。 デフォルト値は入力サーフェス ラスターのセル サイズで、3 x 3 の近傍になります。 | Linear Unit |
use_adaptive_neighborhood (オプション) | 地形の変化に応じて近傍距離が変化するかどうかを指定します (アダプティブ)。 最大距離は近傍距離によって決定されます。 最小距離は、出力ラスターのセル サイズです。
| Boolean |
diffuse_model_type (オプション) | 使用される散乱日射モデルのタイプを指定します。
| String |
diffuse_proportion (オプション) | 全天標準日射量のうち散乱する比率。 値の範囲は、0 から 1 です。 大気の状態に従って、この値を設定します。 デフォルト値は、一般的に晴れの場合で 0.3 です。 | Double |
transmittivity (オプション) | 大気を通過する日射量の一部 (波長全体での平均値)。 値の範囲は、0 (不透過) から 1 (完全透過) です。 デフォルト値は、一般的に晴れの場合で 0.5 です。 | Double |
analysis_target_device (オプション) | 計算の実行に使用するデバイスを指定します。
| String |
out_join_layer (オプション) | 出力テーブルを入力フィーチャクラスに結合することで作成される出力レイヤー。 これは、任意の出力です。 | Feature Layer |
sunmap_grid_level (オプション) |
内部計算に使用される H3 六角形グリッド セルを生成する際に使用する解像度。 グリッド レベルの値が小さいと、作成される大規模な太陽図エリアが少なくなるため、ツールの実行時間が短縮されます。 グリッド レベルの値が大きいと、作成される小規模な太陽図エリアが多くなるため、結果の正確度が上がります。 地球の場合、太陽図グリッド レベルの有効な値の範囲は 5 ~ 7 です。 月の場合、有効な値の範囲は 4 ~ 6 です。 デフォルトのグリッド レベルは入力サーフェス ラスターによって決まります。 地球のサーフェス データの解析では、解析セル サイズが 4 メートル以下の場合、デフォルトのグリッド レベルは 6 になります。 解析セル サイズが 4 メートルを超える場合、デフォルトのグリッド レベルは 5 になります。 月のサーフェス データの解析では、デフォルトのグリッド レベルは 6 になります。 | Long |
コードのサンプル
次の Python ウィンドウ スクリプトは、FeatureSolarRadiation 関数の使用方法を示しています。
import arcpy
from arcpy.sa import *
from arcpy import env
env.workspace = "C:/sapyexamples/solardata.gdb"
env.scratchWorkspace = "C:/sapyexamples/outfile.gdb"
#Run FeatureSolarRadiation
arcpy.sa.FeatureSolarRadiation("dem30m.tif","solar_pnts","pntID","SolarPnts_radiation_092023",
"9/1/2023 06:30:00 AM","10/1/2023 6:30:00 PM","Pacific_Standard_Time")
ポイント フィーチャで表された人工的なフィーチャに対して、2023 年 1 年間の日射量を 1 週間ごとに計算します。
# Name: FeatureSolarRadiation_standalone.py
# Description: Calculate the solar insolation for the whole year 2023 at one week
# intervals for engineered features represented by point features.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy.sa import *
# Set environment settings
arcpy.env.workspace = "C:/sapyexamples/solardata.gdb"
arcpy.env.scratchWorkspace = "C:/sapyexamples/outfile.gdb"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Run FeatureSolarRadiation
arcpy.sa.FeatureSolarRadiation(
in_surface_raster="dem30m.tif",
in_features="solar_pnts",
unique_id_field="pntID",
out_table=r"SolarPnts_radiation_092023",
start_date_time="1/1/2023",
end_date_time="12/31/2023",
time_zone="Mountain_Standard_Time",
adjust_DST="ADJUSTED_FOR_DST",
use_time_interval="NO_INTERVAL",
interval_unit="WEEK",
interval=1,
feature_offset=2.5,
feature_area="Area_FLD",
feature_slope="Slope_FLD",
feature_aspect="Aspect_FLD",
neighborhood_distance="",
use_adaptive_neighborhood="",
diffuse_model_type="UNIFORM_SKY",
diffuse_proportion=0.3,
transmittivity=0.5,
analysis_target_device="GPU_THEN_CPU",
out_join_layer=None
)
環境
ライセンス情報
- Basic: 次のものが必要 Spatial Analyst
- Standard: 次のものが必要 Spatial Analyst
- Advanced: 次のものが必要 Spatial Analyst