FloPy / Python предупреждение при запуске пакета River MODFLOW? - PullRequest
0 голосов
/ 12 июля 2020

Я пытаюсь добавить реки в свою модель, но это предупреждение появляется, когда после запуска:

WARNING: Unable to resolve dimension of ('gwf6', 'riv', 'period', 'stress_period_data', 'cellid') based on shape "ncelldim"

Я получаю данные из растра в чтобы получить позицию ячейки (строка и столбец) и значения стадии и русла реки. Пока что это единственный способ сделать это с меньшим количеством ошибок (по крайней мере, я пока не получаю исключения или чего-то подобного). Ниже приведен код, который я использую.

df = pd.DataFrame({'Layer': data[0], 'Row': data[1], 'Column': data[2], 'RiverStage': data[3], 'RiverBed': data[4]})

cellid = (dataset['Layer'], dataset['Row'],dataset['Column'])

stress_period_data = [((cellid), dataset['RiverStage'], 10., dataset['RiverBed'])]

river = flopy.mf6.ModflowGwfriv(gwf, stress_period_data = stress_period_data)

Кроме того, у меня есть два дополнительных вопроса; если моя модель находится в устойчивом состоянии, мне нужно добавить пакет CHD? Кроме того, я указал свой период (опять же, поскольку он постоянный) как 1.0, 1, 1.0. Связано ли что-нибудь из того, что я упомянул, с предыдущим предупреждением?

Любая помощь приветствуется.

1 Ответ

1 голос
/ 13 июля 2020

Вы создаете кортеж из одномерных массивов для переменной cellid вместо списка кортежей.

Вы хотите иметь по 1 кортежу для каждой ячейки реки, описывающей слой, строку и столбец для каждого, например:

cellid = [(0, 0, 0), (0, 1, 1), (0, 1, 2), ...]

Не кортеж с 1-мерными массивами значений уровня, строки, столбца, который у вас есть:

cellid = (array[0 0 0 0 0 0 0 ...], array[0 1 1 1 1 1 1 1 ...], array[0 1 2 3 4 5 ...])
...