GRIB конвертация

Не знаете, где задать вопрос? Задавайте здесь.
racing1063
Новоприбывший
Сообщения: 11
Зарегистрирован: 19 ноя 2022, 07:59
Репутация: 0
Откуда: Mars

Re: GRIB конвертация

Сообщение racing1063 » 20 ноя 2022, 20:49

gamm, не совсем понял. Я когда компилировал файл на сайте, то изначально вырезал все нужные мне данные, включая координаты долготу и широту. Их надо ещё где-то вручную прописать, я верно понял? И не совсем понятно где искать и куда прописать нужный массив. Прошу прощения за глупые вопросы, не имел раньше опыта с подобным.

gamm
Гуру
Сообщения: 3781
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 990
Ваше звание: программист
Откуда: Казань

Re: GRIB конвертация

Сообщение gamm » 20 ноя 2022, 22:03

я тоже ничего не понял, в первую очередь, чего вы хотите сделать, и зачем Ёксель нужен

1) Что мы видим в выхлопе print
- 6 трехмерных массивов или матриц [longitude,latitude,time]
long_name: Relative humidity
long_name: Specific humidity
long_name: Specific rain water content
long_name: Temperature
long_name: U component of wind
long_name: V component of wind
данные в трехмерных матрицах, естественно, никакой долготы и широты не содержат, значения долготы и широты, естественно, хрянятся в отдельных переменных. Я вытащил долготу в var.lon и широту в var.lat. Отметки времени можно вытащить в переменную var.time аналогично
var.time <- ncvar_get(ncin,"time")
(dim.time <- dim(var.time))
str(var.time)
range(var.time)

2) Массивы обрезаны по долготе от 22 до 44 с шагом 0.25, по широте от 44 до 52 с шагом 0.25, и по времени от 1051902 до 1060674 с переменным шагом 3 и 12 часов, судя по всему срочные наблюдения (отсчет hours since 1900-01-01 00:00:00.0, как нам сообщает print)

3) Как вытащить сечение для фиксированного времени, я показал на примере относительной влажности

4) Чего вы хотите сделать неизвестно - вы не говорите, а Ванга умерла, и помочь не может. Я тоже больше ничем помочь не могу ... успехов :-)

racing1063
Новоприбывший
Сообщения: 11
Зарегистрирован: 19 ноя 2022, 07:59
Репутация: 0
Откуда: Mars

Re: GRIB конвертация

Сообщение racing1063 » 20 ноя 2022, 22:42

gamm, благодарю за помощь. Мне нужно из GRIB или ncdf файла вытащить данные для того что бы с помощью Excel(пока он, так как я с таким объёмом работы сталкиваюсь впервые и хочу понимать что к чему) рассчитать свои индексы. Данные за двадцатилетний период(но сам сайт не позволяет компилировать за весь нужный срок, приходится за год файл делать). Всё нужное указал в компиляторе. Осталось только как-то их все вытянуть, вот тут то и возникла проблема. А считаю я индексы пожароопасности. В итоге будет расчёт старого-доброго советского Нестерова и новых FWI, HDW. Ещё раз благодарю за помощь :wink:

gamm
Гуру
Сообщения: 3781
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 990
Ваше звание: программист
Откуда: Казань

Re: GRIB конвертация

Сообщение gamm » 21 ноя 2022, 10:02

данные я показал как вытаскивать, зачем нужен Ёксель непонятнео, считайте в R. Но если все же нужен Ёксель (а он - зло, которое всегда приводит к гигантским проблемам), то я показал, как выталкивать срез в один столбец, аналогично через as.double() можно превратить всю матрицу в один столбец, и записать его в csv. Если нужно, туда же можно приделать долготу, широту, и время отдельными столбцами.

P.S. Про пожарную опасность интересно, если есть описание индексов, выложите - скорее всего там все просто, я напишу на R, с выводом результатов в растровые слои для загрузки в ГИС

racing1063
Новоприбывший
Сообщения: 11
Зарегистрирован: 19 ноя 2022, 07:59
Репутация: 0
Откуда: Mars

Re: GRIB конвертация

Сообщение racing1063 » 21 ноя 2022, 14:48

gamm, Excel решил взять для удобства расчёта и решил что возможно он лучше будет подходить для отображения. Плюс то что для нужных данных для расчётов пришлось скомпилировать два nc файла.
Для FWI нашел макрос для Excel, где написано какие исходные данные нужны https://medium.com/planet-os/fighting-f ... a30d345a0b но как понял с Excel действительно будут проблемы и я запутаюсь.
Индекс HDW https://www.mdpi.com/2073-4433/9/7/279/htm вроде как легко посчитать: скорость ветра умножить на VPD https://ru.abcdef.wiki/wiki/Vapour-pressure_deficit, но есть один нюанс это расчёт VPD.
Ну и индекс Нестерова http://method.meteorf.ru/danger/fire/ca ... ulate.html
Как я понял(на практике это потом проверю) можно использовать данные только за полдень и мне сайт заодно дал возможность скачать данные за многолетний период одним файлом. То есть у меня получается 2 файла, так как в первому не все данные.
https://drive.google.com/file/d/1hU5OjP ... sp=sharing
https://drive.google.com/file/d/1LVxoPQ ... sp=sharing

gamm
Гуру
Сообщения: 3781
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 990
Ваше звание: программист
Откуда: Казань

Re: GRIB конвертация

Сообщение gamm » 21 ноя 2022, 15:04

Я так понял, что готовой расчетной схемы по матрицам из этого файла, пригодной для программирования, нет. А изучать мтатьи и пр. нет сил и времени. Так что ничем помочь не смогу. За сим удаляюсь. Успехов!

racing1063
Новоприбывший
Сообщения: 11
Зарегистрирован: 19 ноя 2022, 07:59
Репутация: 0
Откуда: Mars

Re: GRIB конвертация

Сообщение racing1063 » 21 ноя 2022, 15:45

Кажется я нашел то что вы имели ввиду. Только не совсем понял как скормить питону ncdf файл. https://www.researchgate.net/publicatio ... dex_System

Ответить

Вернуться в «Я новичок!»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 26 гостей