We start by creating a list of coordinates using the cell centers (the initial waterlevel values are defined per cell).
Set intial confitions
coordinates = [[cell.Center.X, cell.Center.Y] for cell in fmModel.Grid.Cells]
Then we get the waterlevel for these coordinates at the start time and set them as the initial waterlevel of our model.
Set intial confitions
# add initial conditions
import csv
initialWaterLevels = []
initialCsvFilePath = "D:\\Workshop\\initial.csv"
with open(initialCsvFilePath) as csvfile:
lines = csv.reader(csvfile, delimiter=',')
for line in lines:
initialWaterLevels.append(float(line[0]))
fmModel.InitialWaterLevels.SetValues(initialWaterLevels)
To limit the calculation time we change the maximum and initial delta t (time) to 1 hour using the SetModelProperty" function.
Set dtMax and dtInitial
# set model max and initial timestep size
timeStep = timedelta(hours=1)
SetModelProperty(fmModel, KnownProperties.DtMax, str(timeStep.total_seconds()))
SetModelProperty(fmModel, KnownProperties.DtInit, str(timeStep.total_seconds()))