flopy package

Subpackages

Submodules

Module contents

The FloPy package consists of a set of Python scripts to run MODFLOW, MT3D, SEAWAT and other MODFLOW-related groundwater programs. FloPy enables you to run all these programs with Python scripts. The FloPy project started in 2009 and has grown to a fairly complete set of scripts with a growing user base.

This version of Flopy (FloPy3) was released in December 2015 with a few great enhancements that make FloPy3 backwards incompatible. The first significant change is that FloPy3 uses zero-based indexing everywhere, which means that all layers, rows, columns, and stress periods start numbering at zero. This change was made for consistency as all array-indexing was already zero-based (as are all arrays in Python). This may take a little getting-used-to, but hopefully will avoid confusion in the future. A second significant enhancement concerns the ability to specify time-varying boundary conditions that are specified with a sequence of layer-row-column-values, like the WEL and GHB packages. A variety of flexible and readable ways have been implemented to specify these boundary conditions. FloPy is an open-source project and any assistance is welcomed. Please email the development team if you want to contribute.

run_model(exe_name, namefile, model_ws='./', silent=False, pause=False, report=False, normal_msg='normal termination', use_async=False, cargs=None)[source]

This function will run the model using subprocess.Popen. It communicates with the model’s stdout asynchronously and reports progress to the screen with timestamps

Parameters
  • exe_name (str) – Executable name (with path, if necessary) to run.

  • namefile (str) – Namefile of model to run. The namefile must be the filename of the namefile without the path. Namefile can be None to allow programs that do not require a control file (name file) to be passed as a command line argument.

  • model_ws (str) – Path to the location of the namefile. (default is the current working directory - ‘./’)

  • silent (boolean) – Echo run information to screen (default is True).

  • pause (boolean, optional) – Pause upon completion (default is False).

  • report (boolean, optional) – Save stdout lines to a list (buff) which is returned by the method . (default is False).

  • normal_msg (str or list) – Normal termination message used to determine if the run terminated normally. More than one message can be provided using a list. (Default is ‘normal termination’)

  • use_async (boolean) – asynchronously read model stdout and report with timestamps. good for models that take long time to run. not good for models that run really fast

  • cargs (str or list of strings) – additional command line arguments to pass to the executable. Default is None

Returns

  • (success, buff)

  • success (boolean)

  • buff (list of lines of stdout)

which(cmd, mode=1, path=None)[source]

Given a command, mode, and a PATH string, return the path which conforms to the given mode on the PATH, or None if there is no such file.

mode defaults to os.F_OK | os.X_OK. path defaults to the result of os.environ.get(“PATH”), or can be overridden with a custom search path.