Доступно с лицензией Spatial Analyst.
Краткая информация
Выводит поступающее солнечное излучение из поверхности растра.
Использование
Вычисление инсоляции может занимать значительный промежуток времени, для больших цифровых моделей рельефа (DEM) – до нескольких часов, а для очень больших – даже нескольких дней. Вы можете сделать ряд тестовых запусков с использованием меньшего разрешения или вырезав поднабор данных, чтобы убедиться, что вы указали корректные параметры, перед тем как запустить процесс получения данных в максимальном разрешении.
Выходные растры радиации всегда будут представлены числами с плавающей точкой и выражены в ваттах на квадратный метр (Вт/м2). Растр продолжительности прямого излучения будет целочисленным, а единицами измерения его значений будут часы.
Широта изучаемой области (единицы измерения: десятичные градусы, значения положительные для северного полушария и отрицательные для южного полушария).
Методика анализа разработана только для ландшафтов локального уровня, поэтому рекомендуется для всей ЦМР использовать одно значение широты. Для больших наборов данных, например, штатов, стран или континентов, результаты инсоляции будут значительно различаться на разных широтах (отличающихся более, чем на 1 градус). Для анализа более обширных географических регионов, необходимо разделить изучаемую территорию на зоны с различными широтами.
Для многодневных моделей, максимальное количество дней может быть равно одному году (365 дней, или 366 для високосного года). Если дата первого дня превышает дату последнего дня, вычисления времени будут продолжены с переходом на следующий год.
Например, выражение [start day, end day] = [365, 31] подразумевает временной интервал с 31 декабря до 31 января следующего года. Например, когда параметр определен как [1, 2], в вычислениях будет использован период от первого дня с 0:00 часов (1 января) до 0:00 второго дня (2 января). Даты первого и последнего дня не могут совпадать.
Значение этого года для времени конфигурации используется для определения високосного года. Другого влияния на анализ солнечного излучения оно не имеет, поскольку анализ солнечного излучения является функцией временного периода, определенного днями Юлианского календаря.
Для однодневных моделей, максимальный диапазон времени составляет один день (24 часа). Вычисления не могут быть выполнены через дни (например, с 12:00 пополудни до 12:00 пополудни следующего дня). Начальное время должно быть меньше времени окончания.
Для однодневных конфигураций времени время начала и окончания вычислений отображается как солнечное время (единицы измерения: десятичные часы). Используйте диалог преобразования времени для перевода местного стандартного времени в солнечное время (в формате часы, минуты, секунды – (HMS). При преобразовании локального стандартного времени в солнечное, программа использует уравнение времени.
В тех случаях, когда z-значения поверхности выражены в единицах измерения, отличающихся от наземных единиц измерения x,y, для корректировки вычислений используют коэффициента по z. Чтобы получить правильные результаты, единицы z должны быть такими же, как у наземных единиц измерения x,y. Если единицы отличаются, используйте коэффициент z, чтобы преобразовать единицы z в единицы x,y. Например, если x,y-единицами измерения являются метры, а z-единицами – футы, то можно использовать z-коэффициент 0,3048 для преобразования футов в метры.
Рекомендуется использовать данные, представленные в системе координат проекции с единицами измерения – метрами. Если вы запустите анализ со сферической системой координат, то вам нужно будет задать соответствующий z-фактор для широты. Далее следует список некоторых подходящих z-факторов для использования, если единицы измерения ваших координат x,y – десятичные градусы, а единицы измерения по 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
Широта изучаемой области (единицы измерения: десятичные градусы, значения положительные для северного полушария и отрицательные для южного полушария). Поскольку методика анализа солнечного излучения разработана для ландшафтов локального уровня, допускается использование одного значения широты для всей ЦМР. Для более обширных географических регионов, необходимо разделить изучаемую территорию на зоны с различными широтами.
Для входных растров поверхности, имеющих пространственную привязку, автоматически вычисляется средняя широта; в противном случае, значение широты по умолчанию будет равно 45 градусам. Если вы работаете с входным слоем, используется пространственная привязка фрейма данных.
Размер неба определяется разрешением растров видимости, карты неба и карты солнечного излучения, которые используются в вычислениях радиации (единицы измерения: ячейки на одну сторону) Это перевернутые полусферические растровые представления неба, которые не привязаны к географической системе координат. Эти растры представляют собой квадраты (имеют равное количество строк и столбцов).
Увеличение размера неба повышает точность вычислений, но также значительно увеличивает время, необходимое на выполнение вычислений.
Если параметр дневной интервал маленький (например, < 14 дней), то следует использовать больший размер неба. В ходе анализа для вычисления прямого излучения для представления положения солнца (траекторий движения солнца для конкретных временных периодов) используется карта солнца (определяемая размером неба). При еще меньших интервалах (в днях), если разрешение размера неба недостаточно велико, траектории солнца могут перекрываться, в результате чего для этих траекторий радиация будет равна нулю или ее величины будут незначительны. Увеличение разрешения дает более точный результат.
Значение 10 000 является максимальным размером неба. Значение 200 – это значение по умолчанию, и оно достаточно для больших ЦМР с большими временными интервалами (например, > 14 дней). Значение размера 512 достаточно для вычислений в местоположении точки, где время вычисления – менее важная проблема. В меньших дневных интервалах (например, < 14 дней), рекомендуется использовать большие значения. Например, чтобы вычислить инсоляцию для местоположения на экваторе с временным интервалом = 1 день, рекомендуется использовать размер неба, равный 2800 или выше.
Рекомендуется использовать временные интервалы длиннее 3 дней, так как траектории движения солнца в пределах трех дней, как правило, пересекаются, в зависимости от размера неба и времени года. Для вычислений инсоляции за весь год с месячным интервалом, временной интервал, выраженный в днях, не используется, и программа внутренне применяет интервалы календарного месяца. Значение, предлагаемое по умолчанию, равно 14.
Поскольку вычисления видимости могут быть достаточно интенсивными, для целого ряда заданных направлений вычислений отслеживаются только горизонтальные углы. Действительные значения должны быть множителями 8 (8, 16, 24, 32 и так далее). Как правило, для областей с мягким рельефом подходит значение 8 или 16, в то время как значение 32 должно быть использовано для территорий с сильно расчлененным рельефом. Значение, предлагаемое по умолчанию, равно 32.
Число необходимых направлений вычислений связано с разрешением входной ЦМР. Модель земной поверхности с разрешением 30 м обычно представляет собой довольно сглаженную поверхность, следовательно, для большинства ситуаций достаточно использовать меньшее количество направлений (16 или 32). Для ЦМР с более высоким разрешением, и в особенности, для тех случаев, когда в ЦМР отражены искусственные структуры, количество направлений необходимо увеличить. Увеличение количества направлений повысит точность, но при этом возрастет и время, необходимое на выполнение вычислений.
Опция Создавать выходные данные для каждого интервала (Create outputs for each interval) обеспечивает гибкость вычисления совокупной радиации за установленный период времени либо радиации временной серии. Например, для временного интервала в один день с часовым интервалом, отметка в этом окошке приведет к созданию почасовых значений радиации; в противном случае, будет вычислена суммарная радиации для всего дня.
Параметр Создать выходные данные для каждого интервала (Create outputs for each interval) влияет на формат и число выходных файлов радиации. Когда стоит отметка для этого параметра, выходной растр будет состоять из нескольких каналов, которые соответствуют значениям излучения или продолжительности для каждого временного интервала (часового интервала в тех случаях, когда временной интервал составляет меньше одного дня, либо интервала в один день, в тех случаях, когда временной интервал составляет несколько дней).
Доля рассеивания – это часть общего нормального потока излучения, которая рассеивается. Значения находятся в диапазоне от 0 до 1. Это значение должно быть задано в соответствии с атмосферными условиями. Типичные значения – это 0.2 для очень ясного неба и 0.3 – для, в целом, ясного неба.
Объем солнечного излучения, полученного поверхностью, – это только часть излучения, полученного за пределами атмосферы. Удельный коэффициент пропускания является свойством атмосферы и представляет собой соотношение энергии (среднее значение всех длин волн), достигающей поверхности земли, к энергии, полученной на верхней границе атмосферы (внеземной). Типичные значения находятся в диапазоне от 0 (нет пропускания радиации) до 1 (полное пропускание). Типичные значения – 0,6 или 0,7 для очень ясного неба и 0,5 для, в целом, ясного неба.
Значение энергии, полученное на поверхности земли, измеряется на кратчайшем пути через атмосферу (когда солнце в зените или над головой) и для уровня моря. Для областей за Южным тропиком и Северным тропиком солнце не может быть точно в зените, даже во время полудня; однако, это значение всегда относится к времени, когда солнце в зените. Так как алгоритм корректирует эффекты рельефа, удельный эффект пропускания всегда должен быть дан для уровня моря.
Пропускная способность обратно пропорциональна параметру доли рассеивания.
См. раздел Среда анализа и 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 (дополнительно) | Широта изучаемой области. Единицы – десятичные градусы, где положительные значения – для северного полушария, а отрицательные – для южного. Для входных растров поверхности, имеющих пространственную привязку, автоматически вычисляется средняя широта; в противном случае, значение широты по умолчанию будет равно 45 градусам. | Double |
sky_size (дополнительно) | Разрешение или размер неба для гридов видимости, карты неба и карты солнца. Единицами являются ячейки. По умолчанию будет создан растр размером 200 на 200 ячеек. | Long |
time_configuration (дополнительно) | Задает конфигурацию времени (период), используемую для вычисления солнечного излучения. Объекты класса Time используются для определения конфигурации времени. Различными типами конфигурации времени являются: TimeWithinDay, TimeMultiDays, TimeSpecialDays и TimeWholeYear. Ниже приведены формы:
По умолчанию конфигурация времени – TimeMultiDays, где startDay равен 5, а endDay равен 160, для текущего года по Юлианскому календарю. | Time configuration |
day_interval (дополнительно) | Временной интервал в течение года (единицы: дни) используется для вычисления секторов неба для карты солнечного освещения. Значение по умолчанию равно 14 дням (две недели). | Long |
hour_interval (дополнительно) | Временной интервала в течение года (единицы: часы) используется для вычисления секторов неба для карты солнечного освещения. Значение, предлагаемое по умолчанию, равно 0.5. | Double |
each_interval (дополнительно) | Задает, нужно ли вычислять одно значение полной инсоляции для всех ячеек или несколько значений для заданного часового или дневного интервала.
| Boolean |
z_factor (дополнительно) | Число наземных единиц измерения координат x,y в одной единице измерения z-значения поверхности. Коэффициент z (z-factor) приводит в соответствие единицы измерения z-значений в том случае, если они отличаются от единиц измерения координат x,y входной поверхности. При вычислении результирующей выходной поверхности z-значения входной поверхности умножаются на коэффициент по z. Если координаты x,y и z-значения приведены в одной и той же системе координат, коэффициент z равен 1. Это значение используется по умолчанию. Если координаты x,y и z-значения приведены в отличающихся единицах измерения, для коэффициента по z должно быть задано соответствующее значение, или же результаты будут некорректными. Например, если единицы измерения для z-значений – футы, а координаты x,y приведены в метрах, для преобразования z-значений из футов в метры вы должны использовать коэффициент по z, равный 0,3048 (1 фут = 0,3048 метра). | Double |
slope_aspect_input_type (дополнительно) | Как можно получить информацию об уклоне и экспозиции для анализа.
| String |
calculation_directions (дополнительно) | Число азимутных направлений, используемых при вычислении видимости. Действительные значения должны быть множителями 8 (8, 16, 24, 32 и так далее). Значение по умолчанию – 32 направления; это значение хорошо подходит для сложной топографии. | Long |
zenith_divisions (дополнительно) | Число делений, используемых для создания секторов неба на карте неба. Значение по умолчанию равно восьми делениям (относительно зенита). Значения должны быть больше нуля и меньше, чем половина значения размера неба. | Long |
azimuth_divisions (дополнительно) | Число делений, используемых для создания секторов неба на карте неба. Значение по умолчанию равно восьми делениям (относительно севера). Корректное значение должно быть кратно 8. Значения должны быть больше нуля и меньше 160. | Long |
diffuse_model_type (дополнительно) | Тип модели рассеивания радиации.
| String |
diffuse_proportion (дополнительно) | Доля совокупного потока радиации, которая рассеивается. Значения находятся в диапазоне от 0 до 1. Это значение должно устанавливаться в соответствии с атмосферными условиями. Значение по умолчанию равно 0.3 и соответствует, в целом, ясному небу. | Double |
transmittivity (дополнительно) | Доля радиации, проходящей через атмосферу (усредненная для всех длин волн). Значения находятся в диапазоне от 0 (нет пропускания) до 1 (полное пропускание радиации). Значение по умолчанию равно 0.5 и соответствует, в целом, ясному небу. | Double |
out_direct_radiation_raster (дополнительно) | Выходной растр, представляющий поступающее прямое солнечное излучение для каждого местоположения. Выходные данные измеряются в ваттах на квадратный метр в час (Вт/м2). | Raster Dataset |
out_diffuse_radiation_raster (дополнительно) | Выходной растр, представляющий поступающее прямое солнечное излучение для каждого местоположения. Выходные данные измеряются в ваттах на квадратный метр в час (Вт/м2). | Raster Dataset |
out_direct_duration_raster (дополнительно) | Выходной растр, представляющий продолжительность поступающего прямого солнечного излучения. Единицы измерения выходных данных – часы. | Raster Dataset |
Возвращено значение
Имя | Объяснение | Тип данных |
out_global_radiation_raster | Выходной растр, представляющий совокупное излучение или общее количество поступающего солнечного излучения (прямого + рассеянного), вычисляемого для каждого местоположения входной поверхности. Выходные данные измеряются в ваттах на квадратный метр в час (Вт/м2). | Raster |
Пример кода
AreaSolarRadiation, пример 1 (окно Python)
Пример скрипта окна Python для использования функции.
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")
Параметры среды
- Автоподтверждение (Auto Commit)
- Размер ячейки (Cell size)
- Текущая рабочая область (Current Workspace)
- Экстент (Extent)
- Географические преобразования (Geographic Transformations)
- Маска (Mask)
- Выходное ключевое слово CONFIG (Output CONFIG Keyword)
- Выходная система координат (Output Coordinate System)
- Временная рабочая область (Scratch Workspace)
- Растр привязки (Snap Raster)
- Размер листа (Tile Size)