r.sun QGIS (GRASS)
-
- Интересующийся
- Сообщения: 28
- Зарегистрирован: 10 окт 2015, 01:53
- Репутация: 0
r.sun QGIS (GRASS)
Здравстауйте, я пишу дипломку на тему сравнение вычислений солярного потенциалу в ARCGIS Area Solar Radiation(ASR) и QGIS или GRASS r.sun. В ASR (ARCGIS) все чудесно, проблема возникла в QGIS r.sun. По вычислении, значения не соответствуют реальности. Например: солнце светит зимой и летом 6-12 (0-12) часов, и соответственно завышены данные непосредственного, диффузного и глобального солнечного света. То есть по непонятной мне причине r.sun в QGIS не вычислил мне данные солнечного света (рассвет и закат). Везде пишут (в литературе) что r.sun должен это уметь. Поэтому я пытаюсь втянуть входящие параметры в GRASS, что у меня и не получаеться.
Входящие параметры в QGIS r.sun находяться здесь:
http://uloz.to/xU5ZGkFt/data-tar-gz
Пароль: rsun
1) ЦМР = digital terrain model (dtm)
2) Aspect
3) Slope
4) link turbidity май, июнь, сентябрь, декабрь.
5)latitude (lat)
6) longitude (lon)
7) Beam
Diffuse
Дни на основании которых происходит вычисление (day):
20. 03. 2014 (79 день)
21. 06. 2014 (172 день)
23. 09. 2014 (266 день)
22. 12. 2014 (356 день)
Видео с вычислением в QGIS находиться здесь:
https://www.youtube.com/watch?v=ecirIsx ... cirIsxbHSA (Смотреть начало и конец)
Видео на котором я пытаюсь сформатировать растр, чтоб вложить его в GRASS
: https://www.youtube.com/watch?v=AGVMs_ekv_M
Система координат для Чешской республики:
EPSG:5514 - S-JTSK (Greenwich) / Krovak East North
EPSG:4326 - WGS 84 (ну и др)
Благодарю за помощь
Входящие параметры в QGIS r.sun находяться здесь:
http://uloz.to/xU5ZGkFt/data-tar-gz
Пароль: rsun
1) ЦМР = digital terrain model (dtm)
2) Aspect
3) Slope
4) link turbidity май, июнь, сентябрь, декабрь.
5)latitude (lat)
6) longitude (lon)
7) Beam
Diffuse
Дни на основании которых происходит вычисление (day):
20. 03. 2014 (79 день)
21. 06. 2014 (172 день)
23. 09. 2014 (266 день)
22. 12. 2014 (356 день)
Видео с вычислением в QGIS находиться здесь:
https://www.youtube.com/watch?v=ecirIsx ... cirIsxbHSA (Смотреть начало и конец)
Видео на котором я пытаюсь сформатировать растр, чтоб вложить его в GRASS
: https://www.youtube.com/watch?v=AGVMs_ekv_M
Система координат для Чешской республики:
EPSG:5514 - S-JTSK (Greenwich) / Krovak East North
EPSG:4326 - WGS 84 (ну и др)
Благодарю за помощь
- Максим Дубинин
- MindingMyOwnBusiness
- Сообщения: 9128
- Зарегистрирован: 06 окт 2003, 20:20
- Репутация: 747
- Ваше звание: NextGIS
- Откуда: Москва
- Контактная информация:
Re: r.sun QGIS (GRASS)
1. посмотрите исходный код r.sun (GRASS)
2. сравните со своими вычислениями "на коленке" - вы же сделали их?
3. сравните с кодом ArcGIS....oh wait...
2. сравните со своими вычислениями "на коленке" - вы же сделали их?
3. сравните с кодом ArcGIS....oh wait...
пристегивайтесь, турбулентность прямо по курсу
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: r.sun QGIS (GRASS)
На заметку: в QGIS нет никакого "r.sun", это тот же модуль GRASS через Processing.
Редактор материалов, модератор форума
-
- Интересующийся
- Сообщения: 28
- Зарегистрирован: 10 окт 2015, 01:53
- Репутация: 0
Re: r.sun QGIS (GRASS)
Именно это я и хотел сделать. Проблема в том что я не могу втянуть свой растр в GRASS. Через r.in.gdal это не получается.Максим Дубинин писал(а):1. посмотрите исходный код r.sun (GRASS)
2. сравните со своими вычислениями "на коленке" - вы же сделали их?
3. сравните с кодом ArcGIS....oh wait...
Наверняка можно и в QGIS включить где-то код вычисления, но где не знаю. Работать с Pythonem я к сожалению не умею.
- Максим Дубинин
- MindingMyOwnBusiness
- Сообщения: 9128
- Зарегистрирован: 06 окт 2003, 20:20
- Репутация: 747
- Ваше звание: NextGIS
- Откуда: Москва
- Контактная информация:
Re: r.sun QGIS (GRASS)
Начните с более подробного объяснения что именно не получаетсяlist писал(а): не могу втянуть свой растр в GRASS. Через r.in.gdal это не получается.
пристегивайтесь, турбулентность прямо по курсу
-
- Интересующийся
- Сообщения: 28
- Зарегистрирован: 10 окт 2015, 01:53
- Репутация: 0
Re: r.sun QGIS (GRASS)
Мой растр который без проблем работает в Arc Gis и QGIS (модуль GRASS) находиться в формате FCELL (float), окончание растра .adf (hdr), сист. координат наставлена на кровак EPSG:5514. Из этого растра я делаю еще один (трансформирую), где изменяю сист.координат на EPSG:4326 (wgs 84) и меняю окончание на .tif (geotiff).Максим Дубинин писал(а):Начните с более подробного объяснения что именно не получаетсяlist писал(а): не могу втянуть свой растр в GRASS. Через r.in.gdal это не получается.
Включаю GRASS, открываю r.in.gdal и импортирую сперва .adf (hdr) потом .tif (geotiff). Локация GRASS наставлена на EPSG:4326 (wgs 84).
Результат:
adf (hdr) = пишет что нужно сделать новую локацию с параметрами из входящего растра.
.tif (geotiff) = пишет что обрабатывает очень подробные входящие данные с округлением южной границы (-988660>6.66667e-07). И еще, что север должен быть севернее от юга.
Видео: https://www.youtube.com/watch?v=nrCbY43 ... e=youtu.be
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: r.sun QGIS (GRASS)
Во-первых, вам надо сделать область GRASS в проекции EPSG:5514 (это можно сделать разными путями - в командной строке или при запуске wxGUI). Обычно можно задать СК области прямо из геопривязанного файла, но в данном случае это не подойдёт - GDAL не распознаёт систему координат ваших файлов в формате Arc/Info Binary Grid.
Пример:
Поэтому при создании области GRASS на основе этого файла получается область XY (т.е. "план-схема").
Лучше перегнать файл в геотифф с указанием исходной СК:
Теперь можно из полученного геотиффа делать область GRASS или использовать растр в QGIS.
------------------------------
Как вариант, при открытии .adf-файла в QGIS можно прямо изменить СК растра и указать EPSG:5514.
Пример:
Код: Выделить всё
$ gdalinfo raster
Driver: AIG/Arc/Info Binary Grid
Files: raster
raster.ovr
raster.aux.xml
raster/sta.adf
raster/hdr.adf
raster/metadata.xml
raster/w001001.adf
raster/dblbnd.adf
raster/w001001x.adf
Size is 1875, 1500
Coordinate System is `'
Origin = (-642500.030000000027940,-987250.030000000027940)
Pixel Size = (1.000000000000000,-1.000000000000000)
Corner Coordinates:
Upper Left ( -642500.030, -987250.030)
Lower Left ( -642500.030, -988750.030)
Upper Right ( -640625.030, -987250.030)
Lower Right ( -640625.030, -988750.030)
Center ( -641562.530, -988000.030)
Band 1 Block=256x16 Type=Float32, ColorInterp=Undefined
Description = raster
Min=-1.485 Max=60.171
NoData Value=-3.4028234663852886e+38
Overviews: 938x750, 469x375, 235x188
Лучше перегнать файл в геотифф с указанием исходной СК:
Код: Выделить всё
gdal_translate -a_srs "EPSG:5514" raster/ dtm_epsg_5514.tif
Теперь можно из полученного геотиффа делать область GRASS или использовать растр в QGIS.
------------------------------
Как вариант, при открытии .adf-файла в QGIS можно прямо изменить СК растра и указать EPSG:5514.
Редактор материалов, модератор форума
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: r.sun QGIS (GRASS)
Насколько я понял, обычно при использовании модуля <r.sun> все необходимые входные данные (aspect, slope и т.д.) рассчитывают из ЦМР здесь же. Импортировать аркгисовские данные необязательно.
Для сравнения было бы интересно увидеть результаты, получающиеся в ArcGIS (картинки или сами выходные растры).
Для сравнения было бы интересно увидеть результаты, получающиеся в ArcGIS (картинки или сами выходные растры).
Редактор материалов, модератор форума
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: r.sun QGIS (GRASS)
Несколько ссылок по теме (которые вы, наверное, уже и так видели):
https://grasswiki.osgeo.org/wiki/R.sun
https://ma.ellak.gr/documents/2015/07/g ... uide-2.pdf (par. 5.4 "Solar radiation")
http://citeseerx.ist.psu.edu/viewdoc/do ... 1&type=pdf
http://spatial.usc.edu/wp-content/uploa ... Thesis.pdf
http://www.marshallplan.at/images/paper ... Weyrer.pdf
http://www.ac.uma.es/~siham/max-map.pdf
http://koenigstuhl.geog.uni-heidelberg. ... GI2013.pdf
https://grasswiki.osgeo.org/wiki/R.sun
https://ma.ellak.gr/documents/2015/07/g ... uide-2.pdf (par. 5.4 "Solar radiation")
http://citeseerx.ist.psu.edu/viewdoc/do ... 1&type=pdf
http://spatial.usc.edu/wp-content/uploa ... Thesis.pdf
http://www.marshallplan.at/images/paper ... Weyrer.pdf
http://www.ac.uma.es/~siham/max-map.pdf
http://koenigstuhl.geog.uni-heidelberg. ... GI2013.pdf
Редактор материалов, модератор форума
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: r.sun QGIS (GRASS)
Полезно читать мануал:list писал(а):по непонятной мне причине r.sun в QGIS не вычислил мне данные солнечного света (рассвет и закат). Везде пишут (в литературе) что r.sun должен это уметь.
Т.е. <r.sun> заносит эти значения в метаданные растра. Посмотреть можно командой <r.info> (см. раздел "Comments"):Solar parameters (e.g. sunrise, sunset times, declination, extraterrestrial irradiance, daylight length) are saved in the map history file.
Код: Выделить всё
> r.info global_rad_79
+----------------------------------------------------------------------------+
| Map: global_rad_79 Date: Mon Oct 19 16:26:29 2015 |
| Mapset: PERMANENT Login of Creator: amuriy |
| Location: grass_loc |
| DataBase: /home/amuriy/Desktop/r.sun_test |
| Title: ( beam_rad_79 ) |
| Timestamp: none |
|----------------------------------------------------------------------------|
| |
| Type of Map: raster Number of Categories: 0 |
| Data Type: FCELL |
| Rows: 1500 |
| Columns: 1875 |
| Total Cells: 2812500 |
| Projection: Krovak |
| N: -987250.03 S: -988750.03 Res: 1 |
| E: -640625.03 W: -642500.03 Res: 1 |
| Range of data: min = 427.714 max = 7396.285 |
| |
| Data Description: |
| generated by r.sun |
| |
| Comments: |
| ---------------------------------------------------------------- |
| Day [1-365]: 79 |
| Solar constant (W/m^2): 1367 |
| Extraterrestrial irradiance (W/m^2): 1378.781555 |
| Declination (rad): -0.002668 |
| Latitude min-max(deg): 50.6873 - 50.7027 |
| Sunrise time min-max (hr.): 6.01 - 6.01 |
| Sunset time min-max (hr.): 17.99 - 17.99 |
| Time step (hr.): 0.5000 |
| Linke turbidity factor: 3.0 |
| Ground albedo: 0.200 |
| ----------------------------------------------------------------- |
| |
| r.sun elevation="dtm" aspect="aspect" aspect_value=270 slope="slope"\ |
| slope_value=0.0 linke_value=3.0 albedo_value=0.2 beam_rad="beam_rad\ |
| _79" diff_rad="diff_rad_79" glob_rad="global_rad_79" day=79 step=0.5\ |
| distance_step=1.0 npartitions=1 |
| |
+----------------------------------------------------------------------------+
Редактор материалов, модератор форума
-
- Интересующийся
- Сообщения: 28
- Зарегистрирован: 10 окт 2015, 01:53
- Репутация: 0
Re: r.sun QGIS (GRASS)
Перевести растр на геотиф с помощью translate это можно, но потом у меня выходит все по старому. QGIS (r.sun) показывает странные выходные данные (из r.sun). А в GRASS немогу наставить локацию (видио здесь: https://www.youtube.com/watch?v=oX1bjPx ... e=youtu.be).Александр Мурый писал(а):Поэтому при создании области GRASS на основе этого файла получается область XY (т.е. "план-схема").
Лучше перегнать файл в геотифф с указанием исходной СК:
В аркгис я слегка научился ориентировать, благодаря (help, ressource). А r.sun для меня как китайская грамота, из мануала ничего нипонятно. Поэтому если можно пишите пожолуста поподробнее (лучше всего видео).
Если r.sun заносит эти параметры в растр то почему тогда солнце светит все время 6-12 (0-12) часов. Например (r.info) в 79 дне восход солнца в 6.01 а закат в 17.99 (17.59). r. Info вычислить у меня тоже неполучаеться (видио здесь: https://www.youtube.com/watch?v=NroMm2_ ... e=youtu.be ).Александр Мурый писал(а): Т.е. <r.sun> заносит эти значения в метаданные растра. Посмотреть можно командой <r.info> (см. раздел "Comments"):
Спасибо
-
- Гуру
- Сообщения: 810
- Зарегистрирован: 22 авг 2007, 14:58
- Репутация: 123
- Откуда: Казань
Re: r.sun QGIS (GRASS)
Посмотрел видео. Больше всего похоже на то, что вы как-то не так перепроецировали растр. И в процессе перепроецирования потеряли информацию о привязке. Где именно -- не могу сказать, поскольку не спец в QGIS и его инструментах.
Попробуйте перепроецировать напрямую через gdal: http://live.osgeo.org/ru/quickstart/gda ... start.html
Попробуйте перепроецировать напрямую через gdal: http://live.osgeo.org/ru/quickstart/gda ... start.html
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: r.sun QGIS (GRASS)
После создания локации выполните команду:list писал(а):А в GRASS немогу наставить локацию
Код: Выделить всё
g.proj -c epsg=5514
Редактор материалов, модератор форума
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: r.sun QGIS (GRASS)
Что аркгисовский хелп, что грассовский мануал требуют изучения матчасти (хотя бы в общем виде). Иначе вашу задачу не решить. Поищите и почитайте статьи по теме.list писал(а): В аркгис я слегка научился ориентировать, благодаря (help, ressource). А r.sun для меня как китайская грамота, из мануала ничего нипонятно. Поэтому если можно пишите пожолуста поподробнее (лучше всего видео).
Видео снимать не привык, уж извините.
И в этой "солнечной" теме я понимаю не больше вашего - никогда дела не имел.
================
Вот область/набор GRASS ("локация") с импортированным растром "dtm", в EPSG:5514.
https://db.tt/T3epZiuR
Редактор материалов, модератор форума
-
- Интересующийся
- Сообщения: 28
- Зарегистрирован: 10 окт 2015, 01:53
- Репутация: 0
Re: r.sun QGIS (GRASS)
Локация не начитывается а растр отсутствует (https://www.youtube.com/watch?v=kzkJqhn ... e=youtu.be )Александр Мурый писал(а): Вот область/набор GRASS ("локация") с импортированным растром "dtm", в EPSG:5514.
https://db.tt/T3epZiuR
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей