#mikeio
#mikeio
Вопрос:
Я хотел бы использовать выходные данные модели из модели MIKE21fm в формате DFS1 для создания усредненного по глубине файла DFS2, который будет использоваться в качестве граничных условий в модели MIKE3fm.
Для каждого временного шага каждый слой должен использовать усредненные по глубине данные из файла DFS1 на этом временном шаге.
Я заметил, что в MIKEIO уже существует функция для преобразования файлов DFS2 в файлы DFS1 dfs2todfs1
, однако мне было интересно, существует ли какой-либо существующий код / функции MIKEIO для создания файлов DFS2 из DFS1?
В настоящее время я пытаюсь выполнить это самостоятельно в Jupyter Notebook, однако я подумал, что сначала спрошу, поскольку, похоже, в MIKEIO уже было много полезной работы!
Спасибо!
Ответ №1:
В MIKE IO нет функции для выполнения именно этого, но вы можете попробовать что-то вроде этого.
import numpy as np
from mikeio import Dataset, Dfs1, Dfs2
dfs = Dfs1("mikeio/tests/testdata/tide1.dfs1")
ds = dfs.read()
wl = ds['Level']
wl2d = np.expand_dims(wl, 1) # 1d -> 2d
newds = Dataset([wl2d], time=ds.time, items=ds.items)
dfs2 = Dfs2()
dfs2.write("tide2d.dfs2", newds, dy=1.0, coordinate = ["UTM-32", 0, 0, 0.0])