Полярная стереографическая проекция на регулярную решетку широта / долгота

Это продолжение моего предыдущего вопроса в том, что это гораздо более конкретно с примерами и данными. У меня есть массив ледяных данных 304 на 448 (в полярной стереографической проекции), из которых netcdf можно получить здесь. Соответствующие точки широты / долготы каждого поля сетки можно найти в этом файле. Я хотел бы преобразовать эти данные в регулярную решетку широта / долгота (скажем, 180x360), где каждый прямоугольник сетки представляет собой градус. Есть ли Python способ сделать это? И т.д., используя Basemap или, альтернативно, используя CDO (операторы климатических данных)?

Спасибо заранее. Джеймс

1 ответ

Решение

Если вы сначала добавите сетку в файл данных с помощью, например,

ncks -A -v lat,lon NSIDC_LatLon.nc sample.nc

Затем вы можете использовать ncremap от NCO, чтобы пересмотреть это, например,

ncremap -i sample.nc -d 1x1.nc -o out.nc

К сожалению, для этого потребуется текущий снимок NCO (а не выпущенная версия), потому что входные файлы содержали измерения в необычном порядке, который я только что исправил для обработки NCO. Образец зарегистрированного выхода здесь.

По просьбе ОП я пересмотрел его файл и загрузил его ( здесь). У меня не было набора данных 1x1, поэтому я сначала создал файл сетки 1x1, как показано в руководстве, а затем сопоставил его (с параметром ncremap -g):

ncremap -i ~/NSIDC.nc -g ${DATA}/grids/180x360_SCRIP.20150901.nc -o ~/NSIDC_1x1.nc

Обычно команда для этого в CDO выглядит следующим образом:

cdo remapcon,r360x180 in.nc out.nc 

вместо con = консервативного переназначения вы можете использовать bil = билинейный, nn = ближайший сосед, con2 = консервативное переназначение 2-го порядка.

Согласно этому сообщению, https://code.mpimet.mpg.de/boards/1/topics/8302?r=8326 последние версии cdo должны поддерживать полярные стереографические проекции.

Другие вопросы по тегам