dummy / std

Description

This toy model is implemented in the CIF as a testing utility. It can easily be run on office laptop with low computational requirements. Thus, features in pycif can be explored quickly.

It is also proposed as a minimal example of a fully implemented model in pycif. We recommend developers to explore its code as a template for new model implementation in pycif.

Gaussian plume equation

The Toy Gaussian Model follows the standard version of the Gaussian plume equation based on Pasquill-Gifford stability classification:

(1)\[\frac{1}{2 \, \pi \;.\;\sigma_y \;.\; \sigma_z \;.\;\bar{u}} \exp\left(-\,\dfrac{y^2}{\sigma_y ^2}\right) \exp\left(-\,\dfrac{z^2}{\sigma_z ^2}\right)\]

with

(2)\[\begin{split}\left\{ \begin{array}{rcl} \sigma_z &=& a\;.\;x^b \\ \sigma_y &=& | 465.11628 \;x\;.\; \tan(0.017653293 (c - d \;\ln x)) | \end{array} \right.\end{split}\]

x is the distance between the source and receptor points, (a, b, c, d) are parameters depending on the stability class.

Parameter values

The Gaussian plume model as implemented in pycif is based on the U.S. E.P.A. model ISC3 (Industrial Source Complex). The model is described in the report EPA-454/B-95-003b of September 1995. The parameter values are given in Section 1.1.5 from page 1-15 to 1-19.

Yaml arguments

The following arguments are used to configure the plugin. pyCIF will return an exception at the initialization if mandatory arguments are not specified, or if any argument does not fit accepted values or type:

Mandatory arguments

file_pg: (mandatory)

file with Pasquill-Gifford stability classes. Give correspondences between stability classes and gaussian dispersion parameters. The file is provided alongside pyCIF sources in the directory: ${CIF_root}/model_sources/dummy_gauss/

accepted type: str

Optional arguments

autoflush: (optional): False

Cleans big temporary files when the simulation is done. Triggers the function flushrun of the model if available

accepted type: bool

periods: (optional): 1D

length of simulation sub-periods

accepted type: str

tstep: (optional): 1H

length of simulation temproal steps

accepted type: str

save_H: (optional): False

save the sensitivity matrix to a pickle file

accepted type: bool

reload_H: (optional):

Load the sensitivity matrix from the given pickle file

accepted type: str

Requirements

The current plugin requires the present plugins to run properly:

Requirement name

Requirement type

Explicit definition

Any valid

Default name

Default version

domain

Domain

False

False

dummy

std

flux

DataStream

True

False

dummy

nc

meteo

DataStream

True

False

dummy

csv

Yaml template

Please find below a template for a Yaml configuration:

 1model:
 2  plugin:
 3    name: dummy
 4    version: std
 5    type: model
 6
 7  # Mandatory arguments
 8  file_pg: XXXXX  # str
 9
10  # Optional arguments
11  autoflush: XXXXX  # bool
12  periods: XXXXX  # str
13  tstep: XXXXX  # str
14  save_H: XXXXX  # bool
15  reload_H: XXXXX  # str