Brief introduction to USDOS

USDOS is a simulation model for the spread of livestock disease in the United States cattle population. The model can be used to model foot-and-mouth disease (FMD). The model is coded in C++, with R scripts used for pre- and post-processing.

To become familiar with USDOS and determine whether it is a good fit for the research question, please see Gilbertson et al (2022) “The Importance of Livestock Demography and Infrastructure in Driving Foot and Mouth Disease Dynamics.” Life 12(10), 1604. and Tsao et al (2019) “Effects of regional differences and demography in modelling foot-and-mouth disease in cattle at the national scale.” Interface Focus 10: 20190054. and Buhnerkempe et al (2014) “The Impact of Movements and Animal Density on Continental Scale Cattle Disease Outbreaks in the United States.” Plos One 9(3): 10. Related foundational work building a cattle shipment model for the United States:

  • Buhnerkempe et al (2013) “A national-scale picture of US cattle movements obtained from Interstate Certificate of Veterinary Inspection data.” Preventive Veterinary Medicine 112(3-4): 318-329.
  • Gorsich et al (2018) “Model-guided suggestions for targeted surveillance based on cattle shipments in the US.” Preventive Veterinary Medicine 150: 52-59.
  • Lindstrom et al (2013) “A Bayesian Approach for Modeling Cattle Movements in the United States: Scaling up a Partially Observed Network.” Plos One 8(1): 11.
  • Portacci et al (2013) “Assessment of paper interstate certificates of veterinary inspection used to support disease tracing in cattle.” Journal of the American Veterinary Medical Association 243(4): 555-560.

Introduction to this User Manual

This user manual accompanies USDOS version 2.1 as described in Gilbertson et al (2022) “The Importance of Livestock Demography and Infrastructure in Driving Foot and Mouth Disease Dynamics.” Life 12(10), 1604.

This user manual is intended as a guide for parameterizing and running the model. It assumes that the user is already familiar with USDOS and has determined that it is a good fit for their question. This manual describes USDOS parameters and options, as well as how to specify parameters when generating input files.

This manual also assumes that the user has access to a computer or computing cluster running a Linux or Mac operating system and the following required software installed:

  • R. Version up to 3.6.3 has been tested, versions 4+ may not work.
  • GNU Compiler Collection (GCC). Version 6.1.0 has been thoroughly tested with the code, though other versions may work.
  • GNU Scientific Library (GSL). Version 2.1 has been thoroughly tested with the code, though other versions may work.

Style conventions used in this guide

Text in this font is code

Items in single quotes (’ ’) are file names

xx signifies a two-digit number (01 to 10)

** signifies text that can vary (such as a filename)

Quick start guide

This section is intended as a brief reminder of the steps required to initialize and run USDOS for experienced users. A more detailed explaination can be found in subsequent sections of this User Manual.

Initial USDOS setup

Note: If USDOS is already initialized on your computing system, please proceed to the run-specific steps below

  1. Download zipped USDOS folder from Github repository
  2. Unzip USDOS folder into your working directory
  3. Create object directory (mkdir obj)
  4. Add any additional required files
  5. Ensure USDOS compiles (using make) and modify ‘makefile’ if needed
Run-specific steps
  1. Use ‘createConfig_Function.R’ to generate input files
  2. Run USDOS via command line
  3. Export output files
  4. Generate results files with ‘post_processing.R’

Initial USDOS setup

Note: These steps are only required once per model version

  1. Download the zipped USDOS master folder (‘usdos.zip’) from the appropriate repository.

  2. Transfer the zipped directory onto the desired working directory.

  3. Unzip the folder in the working directory: unzip usdos.zip

  4. Enter the upzipped directory: cd ./usdos

  5. Create an object directory: mkdir obj

  6. Add any required files using SFTP

  7. If on a cluster system requiring explicit module loading, load required modules.

module load gcc/6.1.0
module load gsl/2.1
  1. Compile USDOS using make. If it fails to compile, try these troubleshooting steps.

Simulation options

Infection settings

USDOS simulates foot-and-mouth disease (FMD) in cattle spread based both on shipment and local spread. It is modeled with a daily timestep.

Shipment spread is modeled via the United States Animal Movement Model (USAMM, see Gilbertson et al (2022) “The Importance of Livestock Demography and Infrastructure in Driving Foot and Mouth Disease Dynamics.” Life 12(10), 1604. and Lindstrom et al (2013) “A Bayesian Approach for Modeling Cattle Movements in the United States: Scaling up a Partially Observed Network.” Plos One (8)1. and Buhnerkempe et al (2013) “A national-scale picture of U.S. cattle movements obtained from Interstate Certificate of Veterinary Inspection data.” Preventive Veterinary Medicine 112(3-4)) Shipment parameters can be modified. Users can select the method of generating shipment (USAMM version) or turn shipments off entirely. They can also set whether shipments should be considered infectious if originating from an exposed premises.

Local spread represents all non-shipment spread, such as via shared equipment, feed trucks, personnel visiting multiple premises, airborne spread, fomites, and fenceline contact. Local spread is not necessarily limited to short distances, as some feed truck routes, for example, move within a large area. The local spread kernel parameters can be user-specified.

Parameters related to the disease process itself can also be user-modified. Users can specify whether partial transition of disease states of premises should be considered or whether the entire herd should transition between disease states as a unit.

Control Types

Several types of control are possible within USDOS. Different control measures can be applied together or to different types of premises, such as reported premises, dangerous contacts, or premises within a ring around a reported premises. The examples below are intended to demonstrate potential control options, but do not represent an exhaustive set of possibilities. Definitions of terms used can be found here.

  • Base runs do not include any response actions
  • Infected premises (IP) cull runs include culling of the infected and reported premises. Runs of this type are abbreviated “IP cull”.
  • IP cull & Dangerous Contacts (DC) cull runs include culling of both IPs and premises identified as dangerous contacts. Runs of this type are abbreviated “IP & DC cull”.
  • IP cull & DC vaccination runs include culling of IPs and vaccination of DCs. Runs of this type are abbreviated “IP cull & DC Vax”.
  • IP cull & ring vaccination runs include culling of IPs and vaccination within a ring around IPs. Standard ring vaccination radii are 3 and 10 kilometers. Runs of this type are abbreviated “IP cull & XXkm Vax”.

A movement ban can be added to the control types above. As an example, you may have an IP & DC cull run with a 90% effective movement ban.

Configuration file contents

Parameters are specified in the configuration file. Each line of the config file specifies an option or parameter for the run. Settings are grouped into sections: Output, General, Infection-related, FMD within-herd infection-related, Grid-related, Shipment-related, Control-related, and Reporting and Tracing (DC).

An example configuration file is shown here. Below the file is a detailed description of each line and instructions for editing the configuration file during pre-processing.

## One variable per row, comments start with #
## Empty rows ignored. Rows with numbers and without descriptions are placeholders for future variables.
## Arguments not provided should be replaced with '*'.
## Values in parentheses are the index in the vector where value is stored.
## '~' after the value indicates that this value is required
## '+' after the value indicates that one of these adjacent options is required
## 'x' after the value indicates that this feature is not yet functional

######################## Output settings ########################
BATCH_NAME #(1) Batch name, used as prefix for output files. Only letters, numbers and underscore.
1 #(2) Summary output on/off (1/0) - one line per replicate with # infected, duration, seed info, run time
1 #(3) Detailed infection output on/off (1/0) - one line per exposed premises with time, source of infection, route of infection
0 #(4) Print grid cells on/off
0 #(5)x Additional functionality under development. Do not change default value.
0 #(6)x Additional functionality under development. Do not change default value.
* #(7) Unused.
* #(8) Unused.
* #(9) Unused.
* #(10) Unused.

######################## General settings ########################
FLAPS_LOCATION  #(11)~Name of file containing premises ID, FIPS, x, y, lat, lon, premises class (b,d,f,m), beef herd size, dairy herd size. Premises classes (b,d,f,m) are beef, dairy, feedlot, market. Make sure the premises file doesn't have numbers in 1e+05 format (may happen with IDs)
beef,dairy          #(12)~List of species for which counts are provided in premises file, comma-separated
365                 #(13)~Timesteps (days) to run
*   #(14) Max infectious premises before stopping an outbreak (* = no limit)
1   #(15)~Verbose level: Output extra information to console as model runs (0=off, 1=basic steps, 2=debug)
0   #(16)x~Pairwise algorithm on (1) or off (0) in addition to gridding (disabled)
0   #(17)~Reverse x/y option: in case input file is entered as lat/long (y/x)(set to 1) instead of long/lat (x/y)(set to 0)
inputfiles/FIPS_20151805.txt #(18)~Name of file containing fips name, state name, area (m2), x, y. Tab separated.
0   #(19) Day of the year to start simulation/generation on (jan 1 = day 1). Must be 0 - 365. 0 = one random day [1-365].
0 #(20)x Additional functionality under development. Do not change default value.
allFips #(21)~Seed source: filename or "allFips". "allFips" chooses one random premises from each county containing premises. Filename is of a file containing identifiers (FIPS codes or premisesIDs) from which to seed infection, one line per simulation.
fips #(22)~Seed file type: type of information on each line of the file named in (21). "fips" = choose 1 premises at random within the FIPS code on a given line in (21), "singlePremises" = use the premisesID provided on a given line in (21), "multiplePremises" = use all comma separated premisesIDs on a given line in (21)
0 #(23) ~Controls market behavior with regard to within-herd spread. This is a real number probability (range [0,1], default = 0.5) that a shipment from an infected market transmits infection. 

######################## Infection-related settings ########################
1,1     #(24)~Susceptibility exponents(q), species-specific & comma-separated in order listed in (12) 0.42,0.49
1,1 #(25)~Infectiousness exponents(p), species-specific & comma-separated in order listed in (12) 0.41,0.2
1,1 #(26)~Susceptibility constants(S), species-specific & comma-separated in order listed in (12) 5.7,1
10.252,10.252 #(27)~Infectiousness constants(T), species-specific & comma-separated in order listed in (12)0.00082,0.00083
0 #(28)~Kernel type for local (diffusion) spread: 0: k1/(1 + (distance/k2)^k3), 1: data file in (30), 2: k1/(1+d/k2)^k3
1.46e-08,1686.155,2.267 #(29)x~Kernel parameters k1, k2, k3
* #(30) Name of file containing data-based local spread probabilities by distance, ie inputfiles/UKDataKernel.txt
5,0 #(31)~Mean, variance (around normal) days from premises exposure to infectiousness (latency duration)
20,0 #(32)~Mean, variance (around normal) days from premises infectiousness to immunity (infectiousness duration)

######################## FMD within-herd infection-related settings ########################
1 #(33)~Partial transition flag 0: off, 1: on
0.05,0.006,0.44,4,6.30852 #(34)+Partial transition parameters: r0 (0.05), r1 (0.006), gamma (0.44), tS0 (4), scaling factor.
*(35) Unused.
######################## Grid-related settings ########################
*               #(36)+Filename containing grid cells (will override other options)
*               #(37)+Length of cell side for uniform cells (will override density options)
500,100000  #(38)+Max farms per cell, cell size minimum side length in m
* #(39) Unused.
* #(40) Unused.

######################## Shipment-related settings ########################
5 #(41)~Method to generate county-county shipments (USAMM), comma-separated (0: shipments off; 1: USAMMv1; 3: USAMMv2 kernel 1; 4: USAMMv2 kernel 2; 5: USAMMv2 kernel 3)
1 #(42)~Shipment scaling factor (default 1)
* #(43) Unused.
inputfiles/beef_k3_cov.post, inputfiles/dairy_k3_cov.post #(44) USAMM posterior files. Must match method selected in (41). Comma-separated, one file for each species.
Q1,Q2,Q3,Q4 #(45) The order in which the in which the temporal switching of USAMM parameters should happen. Comma separated, time periods exactly as the temporal component of the USAMM parameter names in the file in option 44.
1,91,182,274 #(46) Day of the year (Jan 1 = day 1) where each time period begins. Comma separated integers. Assume no leap years.
inputfiles/county_covariates_scaled_mean_zero.txt,inputfiles/county_covariates_scaled_mean_zero.txt #(47) Origin covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
inputfiles/county_covariates_scaled_mean_zero.txt,inputfiles/county_covariates_scaled_mean_zero.txt #(48) Destination covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
*,* #(49) Disabled
1 #(50) Exposed shipments: shipping from a farm with status exposed will cause the receiver to become exposed as well. 1 = on, 0 = off. Affects FMD simulations only.

######################## Control-related settings ########################
shipBan,cull #(51)~Names for unique control types, comma-separated (fixed options: shipBan, cull, vax) '*' will turn off control.
noLimit,stateSum    #(52) Control constraint function types, comma-separated
0;240,0 #(53) Control constraint parameters, comma-separated parameters, SEMICOLON-separated by type. stateSum: constraint is mean/var max animals/day/premises. 20 cows/hr*12 hrs/day = 240
state,premises #(54)~Spatial scale at which control is applied, comma-separated (fixed options: premises, county (shipBan only), state (shipBan only))
NA;inputfiles/landfills_formatted.txt #(55) List additional files here, comma-separated, SEMICOLON-separated by type
NA;resourceLocs #(56) Specify file types for (55) here: (NA, resourceLocs) comma-separated, SEMICOLON-separated by type
0,0 #(57)~Implemented to effective: mean number of days, comma-separated for each control type
0,0 #(58)~Implemented to effective: variance number of days, comma-separated for each control type
366,366 #(59)~Effective to inactive: mean number of days, comma-separated for each control type
0,0 #(60)~Effective to inactive: variance number of days, comma-separated for each control type
1,1;1,1 #(61)~Effectiveness (including compliance) of control types as proportion, comma-separated probability of preventing exposure given exposure and probability of transmission given infectiousness. SEMICOLON-separated by type.
* #(62) Unused.
newRegionReportsOverX,newPremReportsOverX #(63)~Control triggers, comma-separated (fixed options). '*' will turn off control.
0,0 #(64)~Control trigger thresholds, comma-separated (numeric)
shipBan,cull #(65)~Control trigger responses, comma-separated (must exist in (51))
0,0 #(66)~Control response targets, comma-separated. -1 = DCs, 0 = triggers only, # = radius in units of x/y coordinates of premises
earliest,earliest #(67)~Control response priority, comma-separated. Options: earliest (closest, largest, random)
* #(68) Unused.
* #(69) Unused.
* #(70) Unused.

######################## Reporting and Tracing (DC) settings ########################
15,0        #(71)~Mean, variance days from INDEX premises exposure to reporting
8,0     #(72)~Mean, variance days from (non-dangerous-contact) premises exposure to reporting
2,0     #(73)~Mean, variance days from (dangerous-contact) premises exposure to reporting
sus,4; exp,5 #(74) Dangerous Contact scaling parameters relative to risk: status, then scale, SEMICOLON-separated (only used if at least one of (66) is -1)
* #(75) Unused.
* #(76) Unused.
* #(77) Unused.

######################## Additional functionality under development. Do not change. ########################
* #(78)x Additional functionality under development. Do not change default value.
* #(79)x Additional functionality under development. Do not change default value.
NA #(80)x Additional functionality under development. Do not change default value.
NA #(81)x Additional functionality under development. Do not change default value.
* #(82)x Additional functionality under development. Do not change default value.
NA #(83)x Additional functionality under development. Do not change default value.
NA #(84)x Additional functionality under development. Do not change default value.
NA #(85)x Additional functionality under development. Do not change default value.
NA #(86)x Additional functionality under development. Do not change default value.
NA #(87)x Additional functionality under development. Do not change default value.
NA #(88)x Additional functionality under development. Do not change default value.
*   #(89) Unused
*   #(90) Unused
NA #(91)x Additional functionality under development. Do not change default value.
0 #(92)x Additional functionality under development. Do not change default value.
* #(93)x Additional functionality under development. Do not change default value.
0 #(94)x Additional functionality under development. Do not change default value.
NA #(95)x Additional functionality under development. Do not change default value.
* #(96)
* #(97)
* #(98)
* #(99)

######################## Additional functionality under development. Do not change. ########################
0,0     #(100)~x Additional functionality under development. Do not change default value.
0,0     #(101)x Additional functionality under development. Do not change default value.
* #(102) Unused.
* #(103) Unused.
* #(104) Unused.
* #(105) Unused.
* #(106) Unused.
* #(107) Unused.
* #(108) Unused.
NA #(109)x Additional functionality under development. Do not change default value.
NA #(110)x Additional functionality under development. Do not change default value.
* #(111) Unused.
* #(112) Unused.
* #(113) Unused.
* #(114) Unused.
* #(115) Unused.
* #(116) Unused.
* #(117) Unused.
* #(118) Unused.
* #(119) Unused.

######################## Additional functionality under development. Do not change. ########################
* #(120) Unused. 
* #(121) Unused. 
0, 0 #(122)x Additional functionality under development. Do not change default value.
0, 0 #(123)x Additional functionality under development. Do not change default value.
0 #(124)x Additional functionality under development. Do not change default value.
* #(125) Unused.
* #(126) Unused. 
* #(127) Unused. 
* #(128) Unused. 
NA #(129)x Additional functionality under development. Do not change default value.

########################  Additional functionality under development. Do not change. ########################
) #(130)x Additional functionality under development. Do not change default value.
0 #(131)x Additional functionality under development. Do not change default value.
0 #(132)x Additional functionality under development. Do not change default value.
0,0 #(133)x Additional functionality under development. Do not change default value.
0,0  #(134)x Additional functionality under development. Do not change default value.
0 #(135)x Additional functionality under development. Do not change default value.
0 #(136)x Additional functionality under development. Do not change default value.
* #(137) Unused.
0, 0 #(138)x Additional functionality under development. Do not change default value.
0, 0 #(139)x Additional functionality under development. Do not change default value.
0 #(140)x Additional functionality under development. Do not change default value.
0 #(141)x Additional functionality under development. Do not change default value.
0 #(142)x Additional functionality under development. Do not change default value.
0 #(143)x Additional functionality under development. Do not change default value.
0 #(144)x Additional functionality under development. Do not change default value.
0 #(145)x Additional functionality under development. Do not change default value.
0 #(146)x Additional functionality under development. Do not change default value.
0 #(147)x Additional functionality under development. Do not change default value.
0 #(148)x Additional functionality under development. Do not change default value.
* #(149) Unused.

Configuration file guide

The line number in the config file is denoted by (#), along with a brief descriptive variable name and description including possible values. If there is a default value for all run types it is indicated, but default values for many parameters vary by run type. For FMD runs the timestep is days.

Output settings (lines 1-10)

(1) Batch name A string containing only letters, numbers and underscore, used as prefix for output files. This is generated automatically based on selected options. The date and time of run start are appended to the end of the file name.

(2) Summary output Whether to generate the summary result file, which contains one line per replicate with number infected, duration, seed info, and run time.

  • 1 = Summary output on [default]. File will be outputted in working directory with name [Batch name]_[date]_[time]_summary.txt
  • 0 = Summary output off

(3) Detailed output Whether to generate the detail result file, which contains one line per exposed premises with time, source of infection, and route of infection.

  • 1 = Detailed output on [default]. File will be outputted in working directory with name [Batch name]_[date]_[time]_detail.txt
  • 0 = Detailed output off

(4) Print grid cells Whether to generate a file containing the grid cells used …

  • 1 = Grid cells output on. File will be outputted in working directory with name [Batch name]_cells.txt
  • 0 = Grid cells output off [default]

(5) Additional functionality under development. Do not change default value [0].

(6) Additional functionality under development. Do not change default value [0].

(7) Unused

(8) Unused

(9) Unused

(10) Unused

General settings (lines 11-20)

(11) Premises file (FLAPS) Path and name of file containing premises ID, FIPS (county ID), x, y, and population for each species- ie flaps12_min_0001.txt. By default this file is located in the FLAPS folder, and its path would thus be FLAPS/flaps12_min_0001.txt. Make sure there are no numbers in scientific notation (ex. 1e+05. This may happen with IDs in R-formatted files)

(12) Species List of species for which counts are provided in premises file, comma-separated. Default is “beef, dairy”

(13) Timesteps to run Positive integer of maximum number of timesteps to run each simulation. If an outbreak ends before this time, the simulation will end at that point instead. The default is 365.

(14) Max infectious premises Positive integer of threshold number of infectious premises allowed. If the total number of premises that have reached infectious status (not necessarily at the same time) surpasses this number, the simulation will end. The default value of * means there is no limit on the number of infectious premises

(15) Verbose level How much information to output to the console as model runs

  • 0 = Output only critical information to console
  • 1 = Output basic progress to console [default]
  • 2 = Output debug-level information to console

(16) Currently disabled

(17) Reverse x/y This option allws you to specify if input files list locations as latitude (y) before longitude (x) (instead of the default long-lat).

  • 0 = Location input file for premises (line 11) lists longitude (x) before latitude (y) [default]
  • 1 = Location input file for premises (line 11) lists latitude (y) before longitude (x)

(18) FIPS info Name and path of of file containing fips name, state name, area (m2), x, y. Tab separated. Default is inputfiles/FIPS_updated_new.txt

(19) Day to seed outbreak January 1 = day 1. Must be an integer 0 - 365. The default of 0 selects one random day [1-365].

(20) Additional functionality under development. Do not change default value [0].

FMD partial-transition parameters (lines 33-35)

(33) Partial transition flag

  • 0= off
  • 1 = on [default]

(34) Partial transition parameters r0 (0.05), r1 (0.006), gamma (0.44), tS0 (4), scaling factor. Default is 0.05,0.006,0.44,4,6.30852.

(35) Unused

Reporting and Tracing (DC) settings (lines 71-77)

(71) Index reporting lag Two comma-separated positive numeric values describing the mean and variance about a normal distribution for the number of timesteps from index premises exposure to reporting.

(72) Reporting lag Two comma-separated positive numeric values describing the mean and variance about a normal distribution for the number of timesteps from premises exposure to reporting, if the premises has NOT been designated as a dangerous contact.

(73) DC reporting lag Two comma-separated positive numeric values describing the mean and variance about a normal distribution for the number of timesteps from premises exposure to reporting, if the premises HAS been designated as a dangerous contact.

(74) DC scaling Dangerous contact scaling parameters relative to risk. Only used if at least one value in line 66 is -1, i.e. if dangerous contacts are a specified control target. Comma-separated pairs of a string and a numeric value >=1, semicolon separated. The string is the disease status for which the scaling constant will apply, and the number is the scaling constant. Generally, there will be two pairs, one each for statuses sus and exp. The value for ‘exp’ generally will be higher than the value for ‘sus’, indicating that premises are more likely to be identified as dangerous contacts if they truly are exposed at the time of this identification than if they are not. Default is sus,4; exp,5

(75) Unused

(76) Unused

(77) Unused

Additional functionality under development. Do not change lines 78-149

Generating input files

File types required to run the model

Each model run requires one to three types of files:

  • config files, discussed above, set run parameters. Each simulation requires a configuration file. A standard run, during which each of 10 FLAPS iterations is seeded 10 times per county, requires 100 configuration files. Most of the regularly-modified options in the config files can be changed using the pre-processing R script. Details for editing options using the script are below. An example configuration file was shown above, and an example file for each control type can be found in the Appendix.

If running on a cluster enviornment with a queuing system, the following files are also required

  • BATCH files are used in a cluster computing environment to specify computing parameters, such as the run priority, memory allowed, and maximum runtime when running a config file. Each config file has a corresponding BATCH file. The BATCH files are generated automatically using the pre-processing script. Config file names are updated automatically, but if the user wishes to change run options (memory, etc.), that must be done manually by manipulating the template BATCH file (SH_FILE_TEMPLATE.txt in the templates folder). An example BATCH file is below.
#!/bin/bash

##SBATCH -J MI_f01_01

#SBATCH -t 24:00:00
#SBATCH -n 1
#SBATCH -o MI_f01_01.out
#SBATCH -e MI_f01_01.err
#SBATCH --partition shas

#

module load gcc/6.1.0
./USDOSv2_new config_IP_VAX_10km_MvmtBan90_flaps12_0001_01_20180925.txt


# End of script, no wait needed
  • A job file is used to run all the BATCH files, which in turn run the config files. This file is also generated automatically using the pre-processing script. The first five lines of an example file are below.
sbatch BATCH_IP_VAX_10km_MvmtBan90_flaps12_0001_01_20180925.sh
sbatch BATCH_IP_VAX_10km_MvmtBan90_flaps12_0001_02_20180925.sh
sbatch BATCH_IP_VAX_10km_MvmtBan90_flaps12_0001_03_20180925.sh
sbatch BATCH_IP_VAX_10km_MvmtBan90_flaps12_0001_04_20180925.sh
sbatch BATCH_IP_VAX_10km_MvmtBan90_flaps12_0001_05_20180925.sh

Using the pre-processing code to generate required input files

All three types of file (config, batch, and job) are generated using the ‘createConfig_Function.R’ pre-processing script. The options listed below are items in the configuration file that can be set within the createConfigs() function in the ‘createConfig_Function.R’ pre-processing script. For example, the R command to generate files for an run with IP culling and a 75% effective movement ban is createConfigs(run.control="MB_IPcull").

The options below are grouped according to their location in the config file. Options in the first section, “File locations & run settings”, are not found in the config file but are used to set general options for USDOS.

File locations & run settings

template.config.location The location of the template for the config file. Default is a ‘templates’ folder within the current working directory. The correct template works for simulations of all types.

sh_template The location of the SH_FILE_TEMPLATE.txt file used to generate BATCH files. Default is the ‘templates’ folder. Any changes to computing options (priority, memory allocation, etc.) should be made in this template prior to running createConfigs() function. The relevant config file name will be inserted by the pre-processing script.

jobfile.name The name of the jobfile used to run USDOS on computers with a queueing system. Default is ‘USDOS_Sim.job’.

reps The number of times each FLAPS file will be repeated. The default value is 10, for a total of 100 runs. This is the minumum number of runs allowable for USDOS. Using fewer runs than this does not adequately represent the uncertainty in the model. Post-processing code will not accept fewer than 100 runs.

destination.folder The location to put all generated files. Folder must already exist. Default is the current working directory.

replacement.df The dataframe containing information used by createConfig() to modify the default config file. This is created with the time, date, and replacement_df as its title. The user does not need to interact with this file.

Output settings

Batch.Name Text that will be added to the front of a model-generated text string containing information about the simulation’s options and date/time. This option can be used to give runs clear names that can be parsed by post-processing code.

General settings

sim_type Specifies the run type to be initiated. This value changes the default values for specific additional parameters listed below. The default value is ‘noControl’, indicating no controls will be implemented. Options include “MB” (movement ban), ‘MB_IPcull’ (movement ban + infected premises (IP) culling), ‘MB_IPDCcull (movement ban + culling of IPs and dangerous contacts (DCs))’, ‘MB_cullVax’ (movement ban, IP culling, and vaccination either of DCs or in a ring), ‘IPcull’ (IP culling), and “other”. For “other” runs, the user must specify all control-related inputs manually.

  • The default value is ‘noControl’, indicating no controls will be implemented.
  • ‘MB’ sets
    • ctrl.type to “shipBan”
    • ctrl.constraint.type to “noLimit”
    • ctrl.scale to state, indicating a state level movement ban
    • mb.eff to 0.75
    • ctrl.triggers to “newRegionReportsOverX”
    • ctrl.trigger.threshold to 0
    • ctrl.trigger.response to “shipBan”
  • ‘MB_IPcull’ sets
    • ctrl.type to “shipBan,cull”
    • ctrl.constraint.type to “noLimit,stateSum”
    • ctrl.scale to “state,premises”
    • mb.eff to 0.75
    • cull.eff to 1
    • ctrl.triggers to “newRegionReportsOverX,newPremReportsOverX”
    • ctrl.trigger.threshold to “0,0”
    • ctrl.trigger.response to “shipBan,cull”
  • ‘MB_IPDCcull’ sets
    • ctrl.type to “shipBan,cull”
    • ctrl.constraint.type to “noLimit,stateSum”
    • ctrl.scale to “state,premises”
    • mb.eff to 0.75
    • cull.eff to 1
    • ctrl.triggers to “newRegionReportsOverX,newPremReportsOverX,newPremReportsOverX”
    • ctrl.trigger.threshold to “0,0,0”
    • ctrl.trigger.response to “shipBan,cull,cull”
  • ‘MB_IPcullVax’ sets
    • ** ctrl.type** to “shipBan,cull,vax”
    • ctrl.constraint.type to “noLimit,stateSum,nationalLimit”
    • vax.rate to 6804
    • vax.rate.sd to 0
    • ctrl.scale to “state,premises,premises”
    • mb.eff to 0.75
    • cull.eff to 1
    • vax.eff to0.9
    • vax.range to -1, indicating default to DC vaccination
    • ctrl.triggers to “newRegionReportsOverX,newPremReportsOverX,newPremReportsOverX”
    • ctrl.trigger.threshold to “0,0,0”
    • ctrl.trigger.response to “shipBan,cull,vax”
    • vaccine.file to “vaccineBankUpdated.txt”
  • ‘IPcull’ sets
    • ctrl.type to “cull”
    • ctrl.constraint.type to “stateSum”
    • ctrl.scale to “premises”
    • cull.eff to 1
    • ctrl.triggers to “newRegionReportsOverX”
    • ctrl.trigger.threshold to “0”
    • ctrl.trigger.response to “cull”
  • “noControl” sets
    • partial to 1,
    • partial_param to “0.05,0.006,0.44,4,6.30852” and
    • infectious to 20

flaps The subname of the FLAPS version being used. For example, ‘flaps12’ will use the files ‘flaps12_0001.txt’ to ‘flaps12_0010.txt’. This will be used to generate the value in line 11 of the config.

cutoff_days The number of timesteps to run for each seeded outbreak. Corresponds to line 13 in the config file.

cutoff The max number of infectious premises to allow before stopping each outbreak. The default ’*’ indicates no limit. Corresponds to line 14 in the config file.

verbose How much detail should be outputted to the console as the model runs (0=none, 1=standard, 2=detailed). Using a higher verbose level can be helpful when troubleshooting.

fips.info Name of file containing fips name, state name, area (m2), x, y. Tab separated. Corresponds to line 18 in the config file.

Reporting and Tracing (DC) settings

index_rep_time The mean time (days) from index premises exposure to reporting. Contributes to line 71 in the config file.

rep_time The mean time (days) from non-dangerous contact premises exposure to reporting. Contributes to line 72 in the config file.

DC_rep_time The mean time (days) from dangerous contact premises exposure to reporting. Contributes to line 73 in the config file.

Pre-processing steps

  1. Edit the pre-processing R script using nano createConfig_Function.R. Use the above options to set run parameters. Example commands intended to demonstrate a range of options are included in the ‘createConfig_Function.R’ script.

  2. Run ‘createConfig_Function.R’ to generate the config, batch, and job files.

module load R
Rscript createConfig_Function.R

Running the model

Ensure that you have followed the initial setup steps and that the job, batch, and config files are saved in the folder containing the USDOS program. Note: This folder should also contain the /inputfiles, /include, and /FLAPS folders.

  1. If needed, load required modules
module load gcc/6.1.0
module load gsl/2.1
  1. If needed, make an empty /obj directory in the folder containing the USDOS program

  2. Compile the USDOS program with make Note: if you have made changes since the previous run, use make clean to remove the previous program, then make to re-generate it

  3. Run the program

  • In this step, you can run the jobfile on a cluster environment
chmod a+x jobname.job
./jobname.job

Running the ./jobname.job command above should result in a list of 100 (per run) lines reading “Submitted batch job [a number]”

  • It is also possible to run individual BATCH files
chmod a+x BATCH.sh
./BATCH.sh
  1. Check that the run is working
    1. If running on a single machine, the terminal output will provide status updates as USDOS runs.
    2. If running on a cluster enviornment, check your working directory for .err and .out files (’MI_**_fxx_xx.err/.out’)
      1. If nothing is present, check your queue-your job may not have been allocated computing time yet.
      2. If present, check these files using nano [file name]
        1. .err files should be blank
        2. .out files should list steps the process has completed. Note: These steps take some time to complete, so what you see in the .out file will vary depending on how far along the process is.

Output files

Four types of files are generated by the model.

The .err and .out files display information on the run itself: the .err file records any errors during model runs, while the .out file records step taken during the run. This includes the time to initialize various model components and information on the outbreaks resulting from the seeded infection. The information in these files is not intended for analysis, but is useful for diagnosing issues while running the models.

The summary and detail files contain the results. The detail file contains one line per exposure event, whereas the summary file contains one line per replicate.

The summary file contains information about the number of infected premises and counties, the outbreak duration, seed premises and FIPS, and whether control measures were implemented and effective. Summary file columns and descriptions are below. The first seven columns will be in the summary files for all run types, but the control-specific columns are ommitted if that control type is not used.

Summary file variable name Description
Rep The replicate number. One per seed unit (usually a county)
Num_Inf The number of premises infected
nAffCounties The number of counties affected
Duration The length (in days) of the simulation, from the first time a premises is infected until there are no more infectious premises.
Seed_Farms The premises where infection was seeded (usually one per replicate, chosen randomly from within the seed county)
Seed_FIPS The FIPS code of the county seeded with infection
RunTimeSec The computation time (in seconds) taken to run the outbreak
Num_Reports The number of reported premises.
shipBanImplemented The number of geographical units (state or county, as specified by your parameters) in which a movement ban was implemented. This column is only present for runs with a Shipment Ban.
shipBanEffective The number of geographical units (state or county, as specified by your parameters) in which a movement ban was effective. This column is only present for runs with a Shipment Ban.
cullImplemented The number of premises on which culling was implemented. This column is only present for runs with Culling.
cullEffective The number of premises on which culling was effective. This column is only present for runs with Culling.
vaxImplemented The number of premises on which vaccination was implemented. This column is only present for runs with Vaccination.
vaxEffective The number of premises on which vaccination was effective. This column is only present for runs with Vaccination.
cullImplementedDCSubset The number of DC culls. This column is only present for runs with DC Culling.
meanDCsPerRP The mean number of DCs identified per reported premises. This column is only present for runs with DC Culling.

The detail file contains information on the source and exposed premises and county, time and route of exposure, and whether/how the exposure was prevented. Detail file columns and descriptions are below.

Detail file variable name Description
Rep The replicate during which the exposure occurred
ExposedID The exposed premises
atTime The simulation day on which exposure occurred
SourceID The infectious premises that exposed the ExposedID premises
InfRoute The route of infection (0 = local spread, 1 = shipment spread)
ControlPrevented Was this exposure prevented by a control measure. “none” signifies a successful exposure event, while the name of a control measure (ex “shipBan”) indicates that the exposure was prevented by that control measure. “src” indicates the control measure was applied to the source premises, whereas “exp” indicates control applied to the exposed premises. “src:vax” therefore indicates a potential exposure that was prevented by vaccination of the source premises.
ExposedCounty The FIPS code of the exposed county
SourceCounty The FIPS code of the source county

Post-processing

When the run is completed, extract all run-associated files and save them in a directory with the ‘post-processing.R’ code:

  • Input files
    • config
    • BATCH
    • .job
    • Runlog.txt
  • Output files
    • .err
    • .out
    • _detail.txt
    • _summary.txt

You can process the detail and summary files using the post-processing code ‘post-processing.R’. For each of the metrics described below, this code will generate a .csv file that contains metric-specific data from all summary and/or detail files and .jpeg files that include histograms, violin plots, and maps of the results for that metric.

Metrics generated during post-processing:

For all run types * Duration: The number of days between the initial seed infection and when there are no more infected premises, or 365 days, whichever happens sooner. * Number of infected premises: The national total number of infected and reported premises. * Number of cattle infected: The national total number of infected and reported cattle. * Number of infected counties: The total number of counties infected when infection is seeded in that county, also known as epidemic extent. * County risk: The proportion of simulations in which a county is infected, not including simulations in which infection was seeded in that county. * Proportion local transmission: The proportion of transmission events at the county level that result from local transmission (as opposed to shipment spread)

Additional Information

Abbreviations & Acronyms

Base: A run with no control implemented

DC: Dangerous Contact

FIPS: Federal Information Processing Standard

FLAPS: Farm Location and Animal Population Simulator

IP: Infected and Reported Premises

IP cull: A type of control run that implements culling of IPs

IP & DC cull: A type of control run that implements culling of IPs and DCs

IP cull & DC vax: A type of control run that implements culling of IPs and vaccination of DCs

IP cull & XXkm vax: A type of control run that implements culling of IPs and vaccination of premises with a radius of XX kilometers.

SFTP: Secure File Transfer Protocol

USAMM: United States Animal Movement Model

USDOS: United States Disease Outbreak Simulation

VAX: Vaccine/vaccinated/vaccination

Definitions

Cull: To depopulate the animals on a permises.

Dangerous Contact (DC): Premises that have an epidemiological link to the infected premises or are at a higher risk of infection from infected premises.

FIPS code: A five-digit code assigned to each US county. The first two digits indicate the state, and the final three are county-specific.

Infected Premises (IP): Premises that are infected, and are reported.

Movement ban: A prohibition on animal movements, here implemented at the state or county level.

(Ring) Vaccination: Vaccination in a solid circle centered on the IP. Rings of radius 3 or 10 kilometers are commonly used in modeling studies and encompass a good range of possible ring sizes. The optimum ring size for controlling the UK 2001 outbreak was predicted to be around 10Km (Tildesley, et al. 2006). Currently, vaccinations are prioritized by the time when a premises was identified as requiring vaccination. This does not follow either the ‘outside-in’ or ‘inside-out’ vaccination method. Vaccination is currently vaccination to die.

Model file descriptions

File Types

Input

  • Config file: config_**.txt

  • Batch file: BATCH_**.sh

  • Job file: **.job

Output

  • Error file: **.err

  • Out file: **.out

  • Detail file: **_detail.txt

  • Summary file: **_summary.txt

File Group File Type File Naming Pattern File Contents
Input files
Config(uration) config_**.txt The parameters used for a set of model runs.
Batch BATCH_**.sh The computing options for the runs. There is one batch file per config file.
Job **.job The master queuing file that runs all the batch files.
Output files
Error MI_**_fxx_xx.err The errors generated while running a given config file. Will be empty for a successful run.
Out MI_**_fxx_xx.out Information on the steps for each config file and the time they took. Will be large for a successful run. May also contain helpful error messages showing where a run stopped.
Detail **_detail.txt One line per exposure containing information on the replicate generating the exposure, the source and exposed premises and county, time and route of exposure, and whether/how the exposure was prevented. Additional details on this file’s contents can be found here.
Summary **_summary.txt One line per replicate containing information on replicate runtime, the number of infected premises and counties, the outbreak duration, seed premises and FIPS, and whether control measures were implemented and effective. Additional details on this file’s contents can be found here.

Troubleshooting

Pre-processing

“>50 warnings of”In readLines(template.config.location) : incomplete final line found on templates/USDOS_CONFIG_TEMPLATE_General.txt’”

  • Incomplete final line in template: open the file, hit return after last line, save and close.

Running the model

Can’t access BATCH files

  • Check in R code that allFips is correctly capitalized (is not “allfips”)
  • Make sure FLAPS names are right in R code

Compile fail

  • Check that your makefile heading, and edit if not using nano makefile. The top lines (CC through INCLUDE) may vary by system, as they are pointers to local directories for required libraries. You should not edit the makefile below the OBJDIR line
CC        =g++
CFLAGS    =-c -std=gnu++11 -Wall -O3 -I/curc/sw/gsl/2.1/gcc/6.1.0/include
LDFLAGS   =-lstdc++ -L/curc/sw/gsl/2.1/gcc/6.1.0/lib -lgsl -lgslcblas -lm
INCLUDE   =-I./include/
OBJDIR    =obj/
  • Always double check the makefile if you get further errors. Any time it errors and a restart of ‘make’ is needed, use:
make clean
make

The model runs, but only produces .err and .out files

  • Look into these files
  • If the last line refers to a file, re-download it and try again (might have an end of line error)

Appendix: Example configuration files

This section includes an example configuration file for each of the standard run types: Base (no control) with Partial Transition turned off, Base (no control) with Partial Transition turned on, IP cull, IP and DC cull, IP cull and DC vaccination, IP cull and ring vaccination. All the control run examples below include a state-level movement ban.

Base (no control) with Partial Transition turned off

## One variable per row, comments start with #
## Empty rows ignored. Rows with numbers and without descriptions are placeholders for future variables.
## Arguments not provided should be replaced with '*'.
## Values in parentheses are the index in the vector where value is stored.
## '~' after the value indicates that this value is required
## '+' after the value indicates that one of these adjacent options is required
## 'x' after the value indicates that this feature is not yet functional

######################## Output settings ########################
FMD_PToff_Infectious7days_noControl_FLAPS12_Quarterly_USDOS_format_0003_08_20200303 #(1) Batch name, used as prefix for output files. Only letters, numbers and underscore.
1 #(2) Summary output on/off (1/0) - one line per replicate with summary information (specific metrics will vary with run settings, but examples include total number of infected premises, duration, seed info, run time, and control measures applied)
1 #(3) Detailed infection output on/off (1/0) - one line per exposure with information about the exposure event (such as time, source of infection, route of infection, and whether control measures were effective in preventing the exposure)
0 #(4) Print grid cells on/off (1/0)
0 #(5)xAdditional functionality under development. Do not change default. (Print shipments)
0 #(6)xAdditional functionality under development. Do not change default. (Print control implementations)
* #(7)
* #(8)
* #(9)
* #(10)

######################## General settings ########################
FLAPS/FLAPS12_Quarterly_USDOS_format_0003.txt #(11)~Name of file containing premises ID, FIPS, x, y, lat, long, premises class (b,d,f,m), beef herd size, dairy herd size. Beef and dairy herd sizes can be either one column each with yearly herd sizes (i.e. [bY, dY]), or four columns each with quarterly herd sizes (i.e. [b1, b2, b3, b4, d1, d2, d3, d4]. Premises classes (b,d,f,m) are beef, dairy, feedlot, market. Make sure the premises file doesn't have numbers in 1e+05 format (may happen with IDs)
beef,dairy #(12)~List of species for which counts are provided in premises file, comma-separated
365 #(13)~Timesteps to run (in days for foot and mouth disease (FMD))
* #(14) Max infected premises before stopping an outbreak (* = no limit)
1 #(15)~Verbose level: Output extra information to console as model runs (0=off, 1=basic steps, 2=debug)
0   #(16) Do not change default.
0 #(17)~Reverse x/y option: if input file is entered as lat/long (y/x) set to 1, and if long/lat (x/y) set to 0 (default)
inputfiles/FIPS_updated_new.txt #(18)~Name of file containing FIPS name, state name, area (m2), x, y. Tab separated.
0 #(19) Day of the year to start simulation (Jan 1 = day 1). Must be 0 - 365. 0 = random day [1-365]. 
0 #(20) ~Type of infectious disease to simulate. 0 = foot and mouth disease (FMD).
allFips #(21)~Seed source: filename or "allFips". "allFips" chooses one random premises from each county containing premises. Filename is of a file containing identifiers (FIPS codes or premisesIDs) from which to seed infection, one line per simulation.
fips #(22)~Seed file type: type of information on each line of the file named in (21). "fips" = choose 1 premises at random within the FIPS code on a given line in (21), "singlePremises" = use the premisesID provided on a given line in (21), "multiplePremises" = use all comma separated premisesIDs on a given line in (21)
0.5 #(23) +Controls market behavior with regard to within-herd spread. This is a real number probability (range [0,1], default = 1) that a shipment from an infected market transmits infection. 

######################## FMD Infection-related settings ########################
1,1 #(24)~Susceptibility exponents(q), species-specific & comma-separated in order listed in (12)
1,1 #(25)~Transmissibility (infectiousness) exponents(p), species-specific & comma-separated in order listed in (12)
1,1 #(26)~Susceptibility constants(S), species-specific & comma-separated in order listed in (12)
10.252,10.252 #(27)~Transmissibility (infectiousness) constants(T), species-specific & comma-separated in order listed in (12)
0 #(28)~Kernel type for local (diffusion) spread: 0: k1/(1 + (distance/k2)^k3), 1: data file in (30), 2: k1/(1+d/k2)^k3
1.46e-08,1686.155,2.267 #(29)x~Kernel parameters k1, k2, k3
* #(30) Name of file containing data-based local spread probabilities by distance, ie inputfiles/UKDataKernel.txt
5,0 #(31)~Mean, standard deviation (around normal) timesteps from premises exposure to infectiousness (latency duration)
7,0 #(32)~Mean, standard deviation (around normal) timesteps from premises infectiousness to immunity (infectiousness duration)
0 #(33)+Partial transition flag 0: off, 1: on
* #(34)+Partial transition parameters: r0 (0.05), r1 (0.006), gamma (0.44), tS0 (4), scaling factor.
* #(35)

######################## Grid-related settings ########################
* #(36)+Filename containing grid cells (will override other options)
* #(37)+Length of cell side for uniform cells (will override density options)
500,100000 #(38)+Max farms per cell, cell size minimum side length in m
* #(39)
* #(40)

######################## Shipment-related settings ########################
5 #(41)~Method to generate county-county shipments (USAMM), comma-separated (0: shipments off; 1: USAMMv1; 3: USAMMv2 kernel 1; 4: USAMMv2 kernel 2; 5: USAMMv2 kernel 3)
* #(42)
* #(43)
inputfiles/beef_k3_cov.post, inputfiles/dairy_k3_cov.post #(44) USAMM posterior files. Must match method selected in (41). Comma-separated, one file for each species.
Q1,Q2,Q3,Q4 #(45) The order in which the in which the temporal switching of USAMM parameters should happen. Comma separated, time periods exactly as the temporal component of the USAMM parameter names in the file in option 44.
1,91,182,274 #(46) Day of the year (Jan 1 = day 1) where each time period begins. Comma separated integers. Assume no leap years.
inputfiles/county_covariates_scaled_mean_zero.txt, inputfiles/county_covariates_scaled_mean_zero.txt #(47) Origin covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
inputfiles/county_covariates_scaled_mean_zero.txt, inputfiles/county_covariates_scaled_mean_zero.txt #(48) Destination covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
*,* #(49)
1 #(50) Exposed shipments: shipping from a farm with status exposed will cause the receiver to become exposed as well. 1 = on, 0 = off. Affects FMD simulations only.

######################## Control-related settings ########################
* #(51)~Names for unique control types, comma-separated (fixed options: shipBan, cull, vax). '*' will turn off control.
noLimit #(52) Control constraint function types, comma-separated (fixed options: noLimit, dailyLimit, stateSum (cull only), and nationalLimit (vax only))
0 #(53) Control constraint parameters, comma-separated, SEMICOLON-separated by type. Provide a single value for a shipBan and a mean and standard deviation for cull and vax.
state #(54)~Spatial scale at which control is applied, comma-separated (fixed options: premises, county (shipBan only), state (shipBan only))
NA #(55) List control constraint files here, comma-separated, SEMICOLON-separated by type
NA #(56) Specify file types for (55), comma-separated, SEMICOLON-separated by type (fixed options: NA, resourceLocs (must be used with stateSum in line 52), resourceBoosts (must be used with nationalLimit in line 52))
0 #(57)~Implemented to effective: mean number of timesteps, comma-separated for each control type
0 #(58)~Implemented to effective: standard deviation number of timesteps, comma-separated for each control type
0 #(59)~Effective to inactive: mean number of timesteps, comma-separated for each control type
0 #(60)~Effective to inactive: standard deviation number of timesteps, comma-separated for each control type
0 #(61)~Effectiveness (including compliance) of control types as proportion. Comma-separated probability of preventing exposure given exposure and probability of transmission given infectiousness. SEMICOLON-separated by type.
* #(62)
* #(63)~Control triggers, comma-separated (fixed options). '*' will turn off control.
0 #(64)~Control trigger thresholds, comma-separated (numeric)
* #(65)~Control trigger responses, comma-separated (must exist in (51))
0 #(66)~Control response targets, comma-separated. -1 = DCs, 0 = triggers only, # = radius in units of x/y coordinates of premises
earliest #(67)~Control response priority, comma-separated. Options: earliest
* #(68)
* #(69)
* #(70)

######################## Reporting and Tracing (DC) settings ########################
15,0 #(71)~Mean, standard deviation timesteps from INDEX premises exposure to reporting
8,0 #(72)~Mean, standard deviation timesteps from non-dangerous-contact premises exposure to reporting
2,0 #(73)~Mean, standard deviation timesteps from dangerous-contact premises exposure to reporting
sus,4;exp,5 #(74) Dangerous Contact scaling parameters relative to risk: status, then scale, SEMICOLON-separated (only used if at least one of (66) is -1)
* #(75)
* #(76)
* #(77)

######################## Additional functionality under development. Do not change. ########################
* #(78)x Additional functionality under development. Do not change default value.
* #(79)x Additional functionality under development. Do not change default value.
NA #(80)x Additional functionality under development. Do not change default value.
NA #(81)x Additional functionality under development. Do not change default value.
* #(82)x Additional functionality under development. Do not change default value.
NA #(83)x Additional functionality under development. Do not change default value.
NA #(84)x Additional functionality under development. Do not change default value.
NA #(85)x Additional functionality under development. Do not change default value.
NA #(86)x Additional functionality under development. Do not change default value.
NA #(87)x Additional functionality under development. Do not change default value.
NA #(88)x Additional functionality under development. Do not change default value.
*   #(89) Unused
*   #(90) Unused
NA #(91)x Additional functionality under development. Do not change default value.
0 #(92)x Additional functionality under development. Do not change default value.
* #(93)x Additional functionality under development. Do not change default value.
0 #(94)x Additional functionality under development. Do not change default value.
NA #(95)x Additional functionality under development. Do not change default value.
* #(96)
* #(97)
* #(98)
* #(99)

######################## Additional functionality under development. Do not change. ########################
0,0     #(100)~x Additional functionality under development. Do not change default value.
0,0     #(101)x Additional functionality under development. Do not change default value.
* #(102) Unused.
* #(103) Unused.
* #(104) Unused.
* #(105) Unused.
* #(106) Unused.
* #(107) Unused.
* #(108) Unused.
NA #(109)x Additional functionality under development. Do not change default value.
NA #(110)x Additional functionality under development. Do not change default value.
* #(111) Unused.
* #(112) Unused.
* #(113) Unused.
* #(114) Unused.
* #(115) Unused.
* #(116) Unused.
* #(117) Unused.
* #(118) Unused.
* #(119) Unused.

######################## Additional functionality under development. Do not change. ########################
* #(120) Unused. 
* #(121) Unused. 
0, 0 #(122)x Additional functionality under development. Do not change default value.
0, 0 #(123)x Additional functionality under development. Do not change default value.
0 #(124)x Additional functionality under development. Do not change default value.
* #(125) Unused.
* #(126) Unused. 
* #(127) Unused. 
* #(128) Unused. 
NA #(129)x Additional functionality under development. Do not change default value.

########################  Additional functionality under development. Do not change. ########################
) #(130)x Additional functionality under development. Do not change default value.
0 #(131)x Additional functionality under development. Do not change default value.
0 #(132)x Additional functionality under development. Do not change default value.
0,0 #(133)x Additional functionality under development. Do not change default value.
0,0  #(134)x Additional functionality under development. Do not change default value.
0 #(135)x Additional functionality under development. Do not change default value.
0 #(136)x Additional functionality under development. Do not change default value.
* #(137) Unused.
0, 0 #(138)x Additional functionality under development. Do not change default value.
0, 0 #(139)x Additional functionality under development. Do not change default value.
0 #(140)x Additional functionality under development. Do not change default value.
0 #(141)x Additional functionality under development. Do not change default value.
0 #(142)x Additional functionality under development. Do not change default value.
0 #(143)x Additional functionality under development. Do not change default value.
0 #(144)x Additional functionality under development. Do not change default value.
0 #(145)x Additional functionality under development. Do not change default value.
0 #(146)x Additional functionality under development. Do not change default value.
0 #(147)x Additional functionality under development. Do not change default value.
0 #(148)x Additional functionality under development. Do not change default value.
* #(149) Unused.

Base (no control) with Partial Transition turned on

## One variable per row, comments start with #
## Empty rows ignored. Rows with numbers and without descriptions are placeholders for future variables.
## Arguments not provided should be replaced with '*'.
## Values in parentheses are the index in the vector where value is stored.
## '~' after the value indicates that this value is required
## '+' after the value indicates that one of these adjacent options is required
## 'x' after the value indicates that this feature is not yet functional

######################## Output settings ########################
FMD_PTon_Infectious20days_noControl_FLAPS12_Quarterly_USDOS_format_0007_07_20200327 #(1) Batch name, used as prefix for output files. Only letters, numbers and underscore.
1 #(2) Summary output on/off (1/0) - one line per replicate with summary information (specific metrics will vary with run settings, but examples include total number of infected premises, duration, seed info, run time, and control measures applied)
1 #(3) Detailed infection output on/off (1/0) - one line per exposure with information about the exposure event (such as time, source of infection, route of infection, and whether control measures were effective in preventing the exposure)
0 #(4) Print grid cells on/off (1/0)
0 #(5)xAdditional functionality under development. Do not change default. (Print shipments)
0 #(6)xAdditional functionality under development. Do not change default. (Print control implementations)
* #(7)
* #(8)
* #(9)
* #(10)

######################## General settings ########################
FLAPS/FLAPS12_Quarterly_USDOS_format_0007.txt #(11)~Name of file containing premises ID, FIPS, x, y, lat, long, premises class (b,d,f,m), beef herd size, dairy herd size. Beef and dairy herd sizes can be either one column each with yearly herd sizes (i.e. [bY, dY]), or four columns each with quarterly herd sizes (i.e. [b1, b2, b3, b4, d1, d2, d3, d4]. Premises classes (b,d,f,m) are beef, dairy, feedlot, market. Make sure the premises file doesn't have numbers in 1e+05 format (may happen with IDs)
beef,dairy #(12)~List of species for which counts are provided in premises file, comma-separated
365 #(13)~Timesteps to run (in days for foot and mouth disease (FMD) 
* #(14) Max infected premises before stopping an outbreak (* = no limit)
1 #(15)~Verbose level: Output extra information to console as model runs (0=off, 1=basic steps, 2=debug)
0   #(16) Do not change default.
0 #(17)~Reverse x/y option: if input file is entered as lat/long (y/x) set to 1, and if long/lat (x/y) set to 0 (default)
inputfiles/FIPS_updated_new.txt #(18)~Name of file containing FIPS name, state name, area (m2), x, y. Tab separated.
0 #(19) Day of the year to start simulation (Jan 1 = day 1). Must be 0 - 365. 0 = random day [1-365]. 
0 #(20) ~Type of infectious disease to simulate. 0 = foot and mouth disease (FMD)
allFips #(21)~Seed source: filename or "allFips". "allFips" chooses one random premises from each county containing premises. Filename is of a file containing identifiers (FIPS codes or premisesIDs) from which to seed infection, one line per simulation.
fips #(22)~Seed file type: type of information on each line of the file named in (21). "fips" = choose 1 premises at random within the FIPS code on a given line in (21), "singlePremises" = use the premisesID provided on a given line in (21), "multiplePremises" = use all comma separated premisesIDs on a given line in (21)
0.5 #(23) +Controls market behavior with regard to within-herd spread. This is a real number probability (range [0,1], default = 1) that a shipment from an infected market transmits infection. 

######################## FMD Infection-related settings ########################
1,1 #(24)~Susceptibility exponents(q), species-specific & comma-separated in order listed in (12)
1,1 #(25)~Transmissibility (infectiousness) exponents(p), species-specific & comma-separated in order listed in (12)
1,1 #(26)~Susceptibility constants(S), species-specific & comma-separated in order listed in (12)
10.252,10.252 #(27)~Transmissibility (infectiousness) constants(T), species-specific & comma-separated in order listed in (12)
0 #(28)~Kernel type for local (diffusion) spread: 0: k1/(1 + (distance/k2)^k3), 1: data file in (30), 2: k1/(1+d/k2)^k3
1.46e-08,1686.155,2.267 #(29)x~Kernel parameters k1, k2, k3
* #(30) Name of file containing data-based local spread probabilities by distance, ie inputfiles/UKDataKernel.txt
5,0 #(31)~Mean, standard deviation (around normal) timesteps from premises exposure to infectiousness (latency duration)
20,0 #(32)~Mean, standard deviation (around normal) timesteps from premises infectiousness to immunity (infectiousness duration)
1 #(33)+Partial transition flag 0: off, 1: on
0.05,0.006,0.44,4,6.30852 #(34)+Partial transition parameters: r0 (0.05), r1 (0.006), gamma (0.44), tS0 (4), scaling factor.
* #(35)

######################## Grid-related settings ########################
* #(36)+Filename containing grid cells (will override other options)
* #(37)+Length of cell side for uniform cells (will override density options)
500,100000 #(38)+Max farms per cell, cell size minimum side length in m
* #(39)
* #(40)

######################## Shipment-related settings ########################
5 #(41)~Method to generate county-county shipments (USAMM), comma-separated (0: shipments off; 1: USAMMv1; 3: USAMMv2 kernel 1; 4: USAMMv2 kernel 2; 5: USAMMv2 kernel 3)
* #(42)
* #(43)
inputfiles/beef_k3_cov.post, inputfiles/dairy_k3_cov.post #(44) USAMM posterior files. Must match method selected in (41). Comma-separated, one file for each species.
Q1,Q2,Q3,Q4 #(45) The order in which the in which the temporal switching of USAMM parameters should happen. Comma separated, time periods exactly as the temporal component of the USAMM parameter names in the file in option 44.
1,91,182,274 #(46) Day of the year (Jan 1 = day 1) where each time period begins. Comma separated integers. Assume no leap years.
inputfiles/county_covariates_scaled_mean_zero.txt,inputfiles/county_covariates_scaled_mean_zero.txt #(47) Origin covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
inputfiles/county_covariates_scaled_mean_zero.txt,inputfiles/county_covariates_scaled_mean_zero.txt #(48) Destination covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
*,* #(49)
1 #(50) Exposed shipments: shipping from a farm with status exposed will cause the receiver to become exposed as well. 1 = on, 0 = off. Affects FMD simulations only.

######################## Control-related settings ########################
* #(51)~Names for unique control types, comma-separated (fixed options: shipBan, cull, vax). '*' will turn off control.
noLimit #(52) Control constraint function types, comma-separated (fixed options: noLimit, dailyLimit, stateSum (cull only), and nationalLimit (vax only))
0 #(53) Control constraint parameters, comma-separated, SEMICOLON-separated by type. Provide a single value for a shipBan and a mean and standard deviation for cull and vax.
state #(54)~Spatial scale at which control is applied, comma-separated (fixed options: premises, county (shipBan only), state (shipBan only))
NA #(55) List control constraint files here, comma-separated, SEMICOLON-separated by type
NA #(56) Specify file types for (55), comma-separated, SEMICOLON-separated by type (fixed options: NA, resourceLocs (must be used with stateSum in line 52), resourceBoosts (must be used with nationalLimit in line 52))
0 #(57)~Implemented to effective: mean number of timesteps, comma-separated for each control type
0 #(58)~Implemented to effective: standard deviation number of timesteps, comma-separated for each control type
0 #(59)~Effective to inactive: mean number of timesteps, comma-separated for each control type
0 #(60)~Effective to inactive: standard deviation number of timesteps, comma-separated for each control type
0 #(61)~Effectiveness (including compliance) of control types as proportion. Comma-separated probability of preventing exposure given exposure and probability of transmission given infectiousness. SEMICOLON-separated by type.
* #(62)
* #(63)~Control triggers, comma-separated (fixed options). '*' will turn off control.
0 #(64)~Control trigger thresholds, comma-separated (numeric)
* #(65)~Control trigger responses, comma-separated (must exist in (51))
0 #(66)~Control response targets, comma-separated. -1 = DCs, 0 = triggers only, # = radius in units of x/y coordinates of premises
earliest #(67)~Control response priority, comma-separated. Options: earliest
* #(68)
* #(69)
* #(70)

######################## Reporting and Tracing (DC) settings ########################
15,0 #(71)~Mean, standard deviation timesteps from INDEX premises exposure to reporting
8,0 #(72)~Mean, standard deviation timesteps from non-dangerous-contact premises exposure to reporting
2,0 #(73)~Mean, standard deviation timesteps from dangerous-contact premises exposure to reporting
sus,4;exp,5 #(74) Dangerous Contact scaling parameters relative to risk: status, then scale, SEMICOLON-separated (only used if at least one of (66) is -1)
* #(75)
* #(76)
* #(77)

######################## Additional functionality under development. Do not change. ########################
* #(78)x Additional functionality under development. Do not change default value.
* #(79)x Additional functionality under development. Do not change default value.
NA #(80)x Additional functionality under development. Do not change default value.
NA #(81)x Additional functionality under development. Do not change default value.
* #(82)x Additional functionality under development. Do not change default value.
NA #(83)x Additional functionality under development. Do not change default value.
NA #(84)x Additional functionality under development. Do not change default value.
NA #(85)x Additional functionality under development. Do not change default value.
NA #(86)x Additional functionality under development. Do not change default value.
NA #(87)x Additional functionality under development. Do not change default value.
NA #(88)x Additional functionality under development. Do not change default value.
*   #(89) Unused
*   #(90) Unused
NA #(91)x Additional functionality under development. Do not change default value.
0 #(92)x Additional functionality under development. Do not change default value.
* #(93)x Additional functionality under development. Do not change default value.
0 #(94)x Additional functionality under development. Do not change default value.
NA #(95)x Additional functionality under development. Do not change default value.
* #(96)
* #(97)
* #(98)
* #(99)

######################## Additional functionality under development. Do not change. ########################
0,0     #(100)~x Additional functionality under development. Do not change default value.
0,0     #(101)x Additional functionality under development. Do not change default value.
* #(102) Unused.
* #(103) Unused.
* #(104) Unused.
* #(105) Unused.
* #(106) Unused.
* #(107) Unused.
* #(108) Unused.
NA #(109)x Additional functionality under development. Do not change default value.
NA #(110)x Additional functionality under development. Do not change default value.
* #(111) Unused.
* #(112) Unused.
* #(113) Unused.
* #(114) Unused.
* #(115) Unused.
* #(116) Unused.
* #(117) Unused.
* #(118) Unused.
* #(119) Unused.

######################## Additional functionality under development. Do not change. ########################
* #(120) Unused. 
* #(121) Unused. 
0, 0 #(122)x Additional functionality under development. Do not change default value.
0, 0 #(123)x Additional functionality under development. Do not change default value.
0 #(124)x Additional functionality under development. Do not change default value.
* #(125) Unused.
* #(126) Unused. 
* #(127) Unused. 
* #(128) Unused. 
NA #(129)x Additional functionality under development. Do not change default value.

########################  Additional functionality under development. Do not change. ########################
) #(130)x Additional functionality under development. Do not change default value.
0 #(131)x Additional functionality under development. Do not change default value.
0 #(132)x Additional functionality under development. Do not change default value.
0,0 #(133)x Additional functionality under development. Do not change default value.
0,0  #(134)x Additional functionality under development. Do not change default value.
0 #(135)x Additional functionality under development. Do not change default value.
0 #(136)x Additional functionality under development. Do not change default value.
* #(137) Unused.
0, 0 #(138)x Additional functionality under development. Do not change default value.
0, 0 #(139)x Additional functionality under development. Do not change default value.
0 #(140)x Additional functionality under development. Do not change default value.
0 #(141)x Additional functionality under development. Do not change default value.
0 #(142)x Additional functionality under development. Do not change default value.
0 #(143)x Additional functionality under development. Do not change default value.
0 #(144)x Additional functionality under development. Do not change default value.
0 #(145)x Additional functionality under development. Do not change default value.
0 #(146)x Additional functionality under development. Do not change default value.
0 #(147)x Additional functionality under development. Do not change default value.
0 #(148)x Additional functionality under development. Do not change default value.
* #(149) Unused.

IP cull

## One variable per row, comments start with #
## Empty rows ignored. Rows with numbers and without descriptions are placeholders for future variables.
## Arguments not provided should be replaced with '*'.
## Values in parentheses are the index in the vector where value is stored.
## '~' after the value indicates that this value is required
## '+' after the value indicates that one of these adjacent options is required
## 'x' after the value indicates that this feature is not yet functional

######################## Output settings ########################
FMD_PTon_Infectious20days_MB_IPcull_MvmtBan_75_FLAPS12_Quarterly_USDOS_format_0001_01_20220715 #(1) Batch name, used as prefix for output files. Only letters, numbers and underscore.
1 #(2) Summary output on/off (1/0) - one line per replicate with summary information (specific metrics will vary with run settings, but examples include total number of infected premises, duration, seed info, run time, and control measures applied)
1 #(3) Detailed infection output on/off (1/0) - one line per exposure with information about the exposure event (such as time, source of infection, route of infection, and whether control measures were effective in preventing the exposure)
0 #(4) Print grid cells on/off (1/0)
0 #(5)xAdditional functionality under development. Do not change default. 
0 #(6)x Additional functionality under development. Do not change default. 
* #(7)
* #(8)
* #(9)
* #(10)

######################## General settings ########################
FLAPS/FLAPS12_Quarterly_USDOS_format_0001.txt #(11)~Name of file containing premises ID, FIPS, x, y, lat, long, premises class (b,d,f,m), beef herd size, dairy herd size. Beef and dairy herd sizes can be either one column each with yearly herd sizes (i.e. [bY, dY]), or four columns each with quarterly herd sizes (i.e. [b1, b2, b3, b4, d1, d2, d3, d4]. Premises classes (b,d,f,m) are beef, dairy, feedlot, market. Make sure the premises file doesn't have numbers in 1e+05 format (may happen with IDs)
beef,dairy #(12)~List of species for which counts are provided in premises file, comma-separated
365 #(13)~Timesteps to run (in days for foot and mouth disease (FMD))
* #(14) Max infected premises before stopping an outbreak (* = no limit)
1 #(15)~Verbose level: Output extra information to console as model runs (0=off, 1=basic steps, 2=debug)
0   #(16) Do not change default.
0 #(17)~Reverse x/y option: if input file is entered as lat/long (y/x) set to 1, and if long/lat (x/y) set to 0 (default)
inputfiles/FIPS_updated_new.txt #(18)~Name of file containing FIPS name, state name, area (m2), x, y. Tab separated.
0 #(19) Day of the year to start simulation (Jan 1 = day 1). Must be 0 - 365. 0 = random day [1-365]. 
0 #(20) x Additional functionality under development. Do not change default. 
allFips #(21)~Seed source: filename or "allFips". "allFips" chooses one random premises from each county containing premises. Filename is of a file containing identifiers (FIPS codes or premisesIDs) from which to seed infection, one line per simulation.
fips #(22)~Seed file type: type of information on each line of the file named in (21). "fips" = choose 1 premises at random within the FIPS code on a given line in (21), "singlePremises" = use the premisesID provided on a given line in (21), "multiplePremises" = use all comma separated premisesIDs on a given line in (21)
0.5 #(23) +Controls market behavior with regard to within-herd spread. This is a real number probability (range [0,1], default = 0.5) that a shipment from an infected market transmits infection. 

######################## FMD Infection-related settings ########################
1,1 #(24)~Susceptibility exponents(q), species-specific & comma-separated in order listed in (12)
1,1 #(25)~Transmissibility (infectiousness) exponents(p), species-specific & comma-separated in order listed in (12)
1,1 #(26)~Susceptibility constants(S), species-specific & comma-separated in order listed in (12)
10.252,10.252 #(27)~Transmissibility (infectiousness) constants(T), species-specific & comma-separated in order listed in (12)
0 #(28)~Kernel type for local (diffusion) spread: 0: k1/(1 + (distance/k2)^k3), 1: data file in (30), 2: k1/(1+d/k2)^k3
1.46e-08,1686.155,2.267 #(29)x~Kernel parameters k1, k2, k3
* #(30) Name of file containing data-based local spread probabilities by distance, ie inputfiles/UKDataKernel.txt
5,0 #(31)~Mean, standard deviation (around normal) timesteps from premises exposure to infectiousness (latency duration)
20,0 #(32)~Mean, standard deviation (around normal) timesteps from premises infectiousness to immunity (infectiousness duration)
1 #(33)+Partial transition flag 0: off, 1: on
0.05,0.006,0.44,4,6.30852 #(34)+Partial transition parameters: r0 (0.05), r1 (0.006), gamma (0.44), tS0 (4), scaling factor.
* #(35)

######################## Grid-related settings ########################
* #(36)+Filename containing grid cells (will override other options)
* #(37)+Length of cell side for uniform cells (will override density options)
500,100000 #(38)+Max farms per cell, cell size minimum side length in m
* #(39)
* #(40)

######################## Shipment-related settings ########################
5 #(41)~Method to generate county-county shipments (USAMM), comma-separated (0: shipments off; 1: USAMMv1; 3: USAMMv2 kernel 1; 4: USAMMv2 kernel 2; 5: USAMMv2 kernel 3)
1 #(42)NA
* #(43)
inputfiles/beef_k3_cov.post, inputfiles/dairy_k3_cov.post #(44) USAMM posterior files. Must match method selected in (41). Comma-separated, one file for each species.
Q1,Q2,Q3,Q4 #(45) The order in which the in which the temporal switching of USAMM parameters should happen. Comma separated, time periods exactly as the temporal component of the USAMM parameter names in the file in option 44.
1,91,182,274 #(46) Day of the year (Jan 1 = day 1) where each time period begins. Comma separated integers. Assume no leap years.
inputfiles/county_covariates_scaled_mean_zero.txt,inputfiles/county_covariates_scaled_mean_zero.txt #(47) Origin covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
inputfiles/county_covariates_scaled_mean_zero.txt,inputfiles/county_covariates_scaled_mean_zero.txt #(48) Destination covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
*,* #(49)
1 #(50) Exposed shipments: shipping from a farm with status exposed will cause the receiver to become exposed as well. 1 = on, 0 = off. Affects FMD simulations only.

######################## Control-related settings ########################
shipBan,cull #(51)~Names for unique control types, comma-separated (fixed options: shipBan, cull, vax). '*' will turn off control.
noLimit,stateSum #(52) Control constraint function types, comma-separated (fixed options: noLimit, dailyLimit, stateSum (cull only), and nationalLimit (vax only))
0;240,0 #(53) Control constraint parameters, comma-separated, SEMICOLON-separated by type. Provide a single value for a shipBan and a mean and standard deviation for cull and vax.
state,premises #(54)~Spatial scale at which control is applied, comma-separated (fixed options: premises, county (shipBan only), state (shipBan only))
NA;inputfiles/landfills_flaps12_0001.txt #(55) List control constraint files here, comma-separated, SEMICOLON-separated by type
NA;resourceLocs #(56) Specify file types for (55), comma-separated, SEMICOLON-separated by type (fixed options: NA, resourceLocs (must be used with stateSum in line 52), resourceBoosts (must be used with nationalLimit in line 52))
0,0 #(57)~Implemented to effective: mean number of timesteps, comma-separated for each control type
0,0 #(58)~Implemented to effective: standard deviation number of timesteps, comma-separated for each control type
366,366 #(59)~Effective to inactive: mean number of timesteps, comma-separated for each control type
0,0 #(60)~Effective to inactive: standard deviation number of timesteps, comma-separated for each control type
0.75,0.75;1,1 #(61)~Effectiveness (including compliance) of control types as proportion. Comma-separated probability of preventing exposure given exposure and probability of transmission given infectiousness. SEMICOLON-separated by type.
* #(62)
newRegionReportsOverX,newPremReportsOverX #(63)~Control triggers, comma-separated (fixed options). '*' will turn off control.
0,0 #(64)~Control trigger thresholds, comma-separated (numeric)
shipBan,cull #(65)~Control trigger responses, comma-separated (must exist in (51))
0,0 #(66)~Control response targets, comma-separated. -1 = DCs, 0 = triggers only, # = radius in units of x/y coordinates of premises
earliest,earliest #(67)~Control response priority, comma-separated. Options: earliest
* #(68)
* #(69)
* #(70)

######################## Reporting and Tracing (DC) settings ########################
15,0 #(71)~Mean, standard deviation timesteps from INDEX premises exposure to reporting
8,0 #(72)~Mean, standard deviation timesteps from non-dangerous-contact premises exposure to reporting
2,0 #(73)~Mean, standard deviation timesteps from dangerous-contact premises exposure to reporting
sus,4;exp,5 #(74) Dangerous Contact scaling parameters relative to risk: status, then scale, SEMICOLON-separated (only used if at least one of (66) is -1)
* #(75)
* #(76)
* #(77)

######################## Additional functionality under development. Do not change. ########################
* #(78)x Additional functionality under development. Do not change default value.
* #(79)x Additional functionality under development. Do not change default value.
NA #(80)x Additional functionality under development. Do not change default value.
NA #(81)x Additional functionality under development. Do not change default value.
* #(82)x Additional functionality under development. Do not change default value.
NA #(83)x Additional functionality under development. Do not change default value.
NA #(84)x Additional functionality under development. Do not change default value.
NA #(85)x Additional functionality under development. Do not change default value.
NA #(86)x Additional functionality under development. Do not change default value.
NA #(87)x Additional functionality under development. Do not change default value.
NA #(88)x Additional functionality under development. Do not change default value.
*   #(89) Unused
*   #(90) Unused
NA #(91)x Additional functionality under development. Do not change default value.
0 #(92)x Additional functionality under development. Do not change default value.
* #(93)x Additional functionality under development. Do not change default value.
0 #(94)x Additional functionality under development. Do not change default value.
NA #(95)x Additional functionality under development. Do not change default value.
* #(96)
* #(97)
* #(98)
* #(99)

######################## Additional functionality under development. Do not change. ########################
0,0     #(100)~x Additional functionality under development. Do not change default value.
0,0     #(101)x Additional functionality under development. Do not change default value.
* #(102) Unused.
* #(103) Unused.
* #(104) Unused.
* #(105) Unused.
* #(106) Unused.
* #(107) Unused.
* #(108) Unused.
NA #(109)x Additional functionality under development. Do not change default value.
NA #(110)x Additional functionality under development. Do not change default value.
* #(111) Unused.
* #(112) Unused.
* #(113) Unused.
* #(114) Unused.
* #(115) Unused.
* #(116) Unused.
* #(117) Unused.
* #(118) Unused.
* #(119) Unused.

######################## Additional functionality under development. Do not change. ########################
* #(120) Unused. 
* #(121) Unused. 
0, 0 #(122)x Additional functionality under development. Do not change default value.
0, 0 #(123)x Additional functionality under development. Do not change default value.
0 #(124)x Additional functionality under development. Do not change default value.
* #(125) Unused.
* #(126) Unused. 
* #(127) Unused. 
* #(128) Unused. 
NA #(129)x Additional functionality under development. Do not change default value.

########################  Additional functionality under development. Do not change. ########################
) #(130)x Additional functionality under development. Do not change default value.
0 #(131)x Additional functionality under development. Do not change default value.
0 #(132)x Additional functionality under development. Do not change default value.
0,0 #(133)x Additional functionality under development. Do not change default value.
0,0  #(134)x Additional functionality under development. Do not change default value.
0 #(135)x Additional functionality under development. Do not change default value.
0 #(136)x Additional functionality under development. Do not change default value.
* #(137) Unused.
0, 0 #(138)x Additional functionality under development. Do not change default value.
0, 0 #(139)x Additional functionality under development. Do not change default value.
0 #(140)x Additional functionality under development. Do not change default value.
0 #(141)x Additional functionality under development. Do not change default value.
0 #(142)x Additional functionality under development. Do not change default value.
0 #(143)x Additional functionality under development. Do not change default value.
0 #(144)x Additional functionality under development. Do not change default value.
0 #(145)x Additional functionality under development. Do not change default value.
0 #(146)x Additional functionality under development. Do not change default value.
0 #(147)x Additional functionality under development. Do not change default value.
0 #(148)x Additional functionality under development. Do not change default value.
* #(149) Unused.

IP & DC cull

## One variable per row, comments start with #
## Empty rows ignored. Rows with numbers and without descriptions are placeholders for future variables.
## Arguments not provided should be replaced with '*'.
## Values in parentheses are the index in the vector where value is stored.
## '~' after the value indicates that this value is required
## '+' after the value indicates that one of these adjacent options is required
## 'x' after the value indicates that this feature is not yet functional

######################## Output settings ########################
FMD_PTon_Infectious20days_MB_IPDCcull_MvmtBan_75__FLAPS12_Quarterly_USDOS_format_0001_01_20220715 #(1) Batch name, used as prefix for output files. Only letters, numbers and underscore.
1 #(2) Summary output on/off (1/0) - one line per replicate with summary information (specific metrics will vary with run settings, but examples include total number of infected premises, duration, seed info, run time, and control\ measures applied)
1 #(3) Detailed infection output on/off (1/0) - one line per exposure with information about the exposure event (such as time, source of infection, route of infection, and whether control measures were effective in preventing the exposure)
0 #(4) Print grid cells on/off (1/0)
0 #(5)xAdditional functionality under development. Do not change default. 
0 #(6)x Additional functionality under development. Do not change default. 
* #(7)
* #(8)
* #(9)
* #(10)

######################## General settings ########################
FLAPS/FLAPS12_Quarterly_USDOS_format_0001.txt #(11)~Name of file containing premises ID, FIPS, x, y, lat, long, premises class (b,d,f,m), beef herd size, dairy herd size. Beef and dairy herd sizes can be either one column each with yearly herd sizes (i.e. [bY, dY]), or four columns each with quarterly herd sizes (i.e. [b1, b2, b3, b4, d1, d2, d3, d4]. Premises classes (b,d,f,m) are beef, dairy, feedlot, market. Make sure the premises file doesn't have numbers in 1e+05 format (may happen with IDs)
beef,dairy #(12)~List of species for which counts are provided in premises file, comma-separated
365 #(13)~Timesteps to run (in days for foot and mouth disease (FMD))
* #(14) Max infected premises before stopping an outbreak (* = no limit)
1 #(15)~Verbose level: Output extra information to console as model runs (0=off, 1=basic steps, 2=debug)
0   #(16) Do not change default.
0 #(17)~Reverse x/y option: if input file is entered as lat/long (y/x) set to 1, and if long/lat (x/y) set to 0 (default)
inputfiles/FIPS_updated_new.txt #(18)~Name of file containing FIPS name, state name, area (m2), x, y. Tab separated.
0 #(19) Day of the year to start simulation (Jan 1 = day 1). Must be 0 - 365. 0 = random day [1-365]. 
0 #(20) x Additional functionality under development. Do not change default. 
allFips #(21)~Seed source: filename or "allFips". "allFips" chooses one random premises from each county containing premises. Filename is of a file containing identifiers (FIPS codes or premisesIDs) from which to seed infection, one line per simulation.
fips #(22)~Seed file type: type of information on each line of the file named in (21). "fips" = choose 1 premises at random within the FIPS code on a given line in (21), "singlePremises" = use the premisesID provided on a given line in (21), "multiplePremises" = use all comma separated premisesIDs on a given line in (21)
0.5 #(23) +Controls market behavior with regard to within-herd spread. This is a real number probability (range [0,1], default = 0.5) that a shipment from an infected market transmits infection. 

######################## FMD Infection-related settings ########################
1,1 #(24)~Susceptibility exponents(q), species-specific & comma-separated in order listed in (12)
1,1 #(25)~Transmissibility (infectiousness) exponents(p), species-specific & comma-separated in order listed in (12)
1,1 #(26)~Susceptibility constants(S), species-specific & comma-separated in order listed in (12)
10.252,10.252 #(27)~Transmissibility (infectiousness) constants(T), species-specific & comma-separated in order listed in (12)
0 #(28)~Kernel type for local (diffusion) spread: 0: k1/(1 + (distance/k2)^k3), 1: data file in (30), 2: k1/(1+d/k2)^k3
1.46e-08,1686.155,2.267 #(29)x~Kernel parameters k1, k2, k3
* #(30) Name of file containing data-based local spread probabilities by distance, ie inputfiles/UKDataKernel.txt
5,0 #(31)~Mean, standard deviation (around normal) timesteps from premises exposure to infectiousness (latency duration)
20,0 #(32)~Mean, standard deviation (around normal) timesteps from premises infectiousness to immunity (infectiousness duration)
1 #(33)+Partial transition flag 0: off, 1: on
0.05,0.006,0.44,4,6.30852 #(34)+Partial transition parameters: r0 (0.05), r1 (0.006), gamma (0.44), tS0 (4), scaling factor.
* #(35)

######################## Grid-related settings ########################
* #(36)+Filename containing grid cells (will override other options)
* #(37)+Length of cell side for uniform cells (will override density options)
500,100000 #(38)+Max farms per cell, cell size minimum side length in m
* #(39)
* #(40)

######################## Shipment-related settings ########################
5 #(41)~Method to generate county-county shipments (USAMM), comma-separated (0: shipments off; 1: USAMMv1; 3: USAMMv2 kernel 1; 4: USAMMv2 kernel 2; 5: USAMMv2 kernel 3)
1 #(42)NA
* #(43)
inputfiles/beef_k3_cov.post, inputfiles/dairy_k3_cov.post #(44) USAMM posterior files. Must match method selected in (41). Comma-separated, one file for each species.
Q1,Q2,Q3,Q4 #(45) The order in which the in which the temporal switching of USAMM parameters should happen. Comma separated, time periods exactly as the temporal component of the USAMM parameter names in the file in option 44.
1,91,182,274 #(46) Day of the year (Jan 1 = day 1) where each time period begins. Comma separated integers. Assume no leap years.
inputfiles/county_covariates_scaled_mean_zero.txt,inputfiles/county_covariates_scaled_mean_zero.txt #(47) Origin covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
inputfiles/county_covariates_scaled_mean_zero.txt,inputfiles/county_covariates_scaled_mean_zero.txt #(48) Destination covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
*,* #(49)
1 #(50) Exposed shipments: shipping from a farm with status exposed will cause the receiver to become exposed as well. 1 = on, 0 = off. Affects FMD simulations only.

######################## Control-related settings ########################
shipBan,cull #(51)~Names for unique control types, comma-separated (fixed options: shipBan, cull, vax). '*' will turn off control.
noLimit,stateSum #(52) Control constraint function types, comma-separated (fixed options: noLimit, dailyLimit, stateSum (cull only), and nationalLimit (vax only))
0;240,0 #(53) Control constraint parameters, comma-separated, SEMICOLON-separated by type. Provide a single value for a shipBan and a mean and standard deviation for cull and vax.
state,premises #(54)~Spatial scale at which control is applied, comma-separated (fixed options: premises, county (shipBan only), state (shipBan only))
NA;inputfiles/landfills_flaps12_0001.txt #(55) List control constraint files here, comma-separated, SEMICOLON-separated by type
NA;resourceLocs #(56) Specify file types for (55), comma-separated, SEMICOLON-separated by type (fixed options: NA, resourceLocs (must be used with stateSum in line 52), resourceBoosts (must be used with nationalLimit in line 52))
0,0 #(57)~Implemented to effective: mean number of timesteps, comma-separated for each control type
0,0 #(58)~Implemented to effective: standard deviation number of timesteps, comma-separated for each control type
366,366 #(59)~Effective to inactive: mean number of timesteps, comma-separated for each control type
0,0 #(60)~Effective to inactive: standard deviation number of timesteps, comma-separated for each control type
0.75,0.75;1,1 #(61)~Effectiveness (including compliance) of control types as proportion. Comma-separated probability of preventing exposure given exposure and probability of transmission given infectiousness. SEMICOLON-separated by type.
* #(62)
newRegionReportsOverX,newPremReportsOverX,newPremReportsOverX #(63)~Control triggers, comma-separated (fixed options). '*' will turn off control.
0,0,0 #(64)~Control trigger thresholds, comma-separated (numeric)
shipBan,cull,cull #(65)~Control trigger responses, comma-separated (must exist in (51))
0,0,-1 #(66)~Control response targets, comma-separated. -1 = DCs, 0 = triggers only, # = radius in units of x/y coordinates of premises
earliest,earliest,earliest #(67)~Control response priority, comma-separated. Options: earliest
* #(68)
* #(69)
* #(70)

######################## Reporting and Tracing (DC) settings ########################
15,0 #(71)~Mean, standard deviation timesteps from INDEX premises exposure to reporting
8,0 #(72)~Mean, standard deviation timesteps from non-dangerous-contact premises exposure to reporting
2,0 #(73)~Mean, standard deviation timesteps from dangerous-contact premises exposure to reporting
sus,4;exp,5 #(74) Dangerous Contact scaling parameters relative to risk: status, then scale, SEMICOLON-separated (only used if at least one of (66) is -1)
* #(75)
* #(76)
* #(77)

######################## Additional functionality under development. Do not change. ########################
* #(78)x Additional functionality under development. Do not change default value.
* #(79)x Additional functionality under development. Do not change default value.
NA #(80)x Additional functionality under development. Do not change default value.
NA #(81)x Additional functionality under development. Do not change default value.
* #(82)x Additional functionality under development. Do not change default value.
NA #(83)x Additional functionality under development. Do not change default value.
NA #(84)x Additional functionality under development. Do not change default value.
NA #(85)x Additional functionality under development. Do not change default value.
NA #(86)x Additional functionality under development. Do not change default value.
NA #(87)x Additional functionality under development. Do not change default value.
NA #(88)x Additional functionality under development. Do not change default value.
*   #(89) Unused
*   #(90) Unused
NA #(91)x Additional functionality under development. Do not change default value.
0 #(92)x Additional functionality under development. Do not change default value.
* #(93)x Additional functionality under development. Do not change default value.
0 #(94)x Additional functionality under development. Do not change default value.
NA #(95)x Additional functionality under development. Do not change default value.
* #(96)
* #(97)
* #(98)
* #(99)

######################## Additional functionality under development. Do not change. ########################
0,0     #(100)~x Additional functionality under development. Do not change default value.
0,0     #(101)x Additional functionality under development. Do not change default value.
* #(102) Unused.
* #(103) Unused.
* #(104) Unused.
* #(105) Unused.
* #(106) Unused.
* #(107) Unused.
* #(108) Unused.
NA #(109)x Additional functionality under development. Do not change default value.
NA #(110)x Additional functionality under development. Do not change default value.
* #(111) Unused.
* #(112) Unused.
* #(113) Unused.
* #(114) Unused.
* #(115) Unused.
* #(116) Unused.
* #(117) Unused.
* #(118) Unused.
* #(119) Unused.

######################## Additional functionality under development. Do not change. ########################
* #(120) Unused. 
* #(121) Unused. 
0, 0 #(122)x Additional functionality under development. Do not change default value.
0, 0 #(123)x Additional functionality under development. Do not change default value.
0 #(124)x Additional functionality under development. Do not change default value.
* #(125) Unused.
* #(126) Unused. 
* #(127) Unused. 
* #(128) Unused. 
NA #(129)x Additional functionality under development. Do not change default value.

########################  Additional functionality under development. Do not change. ########################
) #(130)x Additional functionality under development. Do not change default value.
0 #(131)x Additional functionality under development. Do not change default value.
0 #(132)x Additional functionality under development. Do not change default value.
0,0 #(133)x Additional functionality under development. Do not change default value.
0,0  #(134)x Additional functionality under development. Do not change default value.
0 #(135)x Additional functionality under development. Do not change default value.
0 #(136)x Additional functionality under development. Do not change default value.
* #(137) Unused.
0, 0 #(138)x Additional functionality under development. Do not change default value.
0, 0 #(139)x Additional functionality under development. Do not change default value.
0 #(140)x Additional functionality under development. Do not change default value.
0 #(141)x Additional functionality under development. Do not change default value.
0 #(142)x Additional functionality under development. Do not change default value.
0 #(143)x Additional functionality under development. Do not change default value.
0 #(144)x Additional functionality under development. Do not change default value.
0 #(145)x Additional functionality under development. Do not change default value.
0 #(146)x Additional functionality under development. Do not change default value.
0 #(147)x Additional functionality under development. Do not change default value.
0 #(148)x Additional functionality under development. Do not change default value.
* #(149) Unused.

IP cull & DC vaccination

## One variable per row, comments start with #
## Empty rows ignored. Rows with numbers and without descriptions are placeholders for future variables.
## Arguments not provided should be replaced with '*'.
## Values in parentheses are the index in the vector where value is stored.
## '~' after the value indicates that this value is required
## '+' after the value indicates that one of these adjacent options is required
## 'x' after the value indicates that this feature is not yet functional

######################## Output settings ########################
FMD_PToff_Infectious7days_MB_cullVax_MvmtBan_75_FLAPS12_Quarterly_USDOS_format_0007_06_20201108 #(1) Batch name, used as prefix for output files. Only letters, numbers and underscore.
1 #(2) Summary output on/off (1/0) - one line per replicate with summary information (specific metrics will vary with run settings, but examples include total number of infected premises, duration, seed info, run time, and control measures applied)
1 #(3) Detailed infection output on/off (1/0) - one line per exposure with information about the exposure event (such as time, source of infection, route of infection, and whether control measures were effective in preventing the exposure)
0 #(4) Print grid cells on/off (1/0)
0 #(5)xAdditional functionality under development. Do not change default. (Print shipments)
0 #(6)xAdditional functionality under development. Do not change default. (Print control implementations)
* #(7)
* #(8)
* #(9)
* #(10)

######################## General settings ########################
FLAPS/FLAPS12_Quarterly_USDOS_format_0007.txt #(11)~Name of file containing premises ID, FIPS, x, y, lat, long, premises class (b,d,f,m), beef herd size, dairy herd size. Beef and dairy herd sizes can be either one column each with yearly herd sizes (i.e. [bY, dY]), or four columns each with quarterly herd sizes (i.e. [b1, b2, b3, b4, d1, d2, d3, d4]. Premises classes (b,d,f,m) are beef, dairy, feedlot, market. Make sure the premises file doesn't have numbers in 1e+05 format (may happen with IDs)
beef,dairy #(12)~List of species for which counts are provided in premises file, comma-separated
365 #(13)~Timesteps to run (in days for foot and mouth disease (FMD))
* #(14) Max infected premises before stopping an outbreak (* = no limit)
1 #(15)~Verbose level: Output extra information to console as model runs (0=off, 1=basic steps, 2=debug)
0   #(16) Do not change default.
0 #(17)~Reverse x/y option: if input file is entered as lat/long (y/x) set to 1, and if long/lat (x/y) set to 0 (default)
inputfiles/FIPS_updated_new.txt #(18)~Name of file containing FIPS name, state name, area (m2), x, y. Tab separated.
0 #(19) Day of the year to start simulation (Jan 1 = day 1). Must be 0 - 365. 0 = random day [1-365]. 
0 #(20) ~Type of infectious disease to simulate. 0 = foot and mouth disease (FMD).
allFips #(21)~Seed source: filename or "allFips". "allFips" chooses one random premises from each county containing premises. Filename is of a file containing identifiers (FIPS codes or premisesIDs) from which to seed infection, one line per simulation.
fips #(22)~Seed file type: type of information on each line of the file named in (21). "fips" = choose 1 premises at random within the FIPS code on a given line in (21), "singlePremises" = use the premisesID provided on a given line in (21), "multiplePremises" = use all comma separated premisesIDs on a given line in (21)
0.5 #(23) +Controls market behavior with regard to within-herd spread. This is a real number probability (range [0,1], default = 1) that a shipment from an infected market transmits infection. 

######################## FMD Infection-related settings ########################
1,1 #(24)~Susceptibility exponents(q), species-specific & comma-separated in order listed in (12)
1,1 #(25)~Transmissibility (infectiousness) exponents(p), species-specific & comma-separated in order listed in (12)
1,1 #(26)~Susceptibility constants(S), species-specific & comma-separated in order listed in (12)
10.252,10.252 #(27)~Transmissibility (infectiousness) constants(T), species-specific & comma-separated in order listed in (12)
0 #(28)~Kernel type for local (diffusion) spread: 0: k1/(1 + (distance/k2)^k3), 1: data file in (30), 2: k1/(1+d/k2)^k3
1.46e-08,1686.155,2.267 #(29)x~Kernel parameters k1, k2, k3
* #(30) Name of file containing data-based local spread probabilities by distance, ie inputfiles/UKDataKernel.txt
5,0 #(31)~Mean, standard deviation (around normal) timesteps from premises exposure to infectiousness (latency duration)
7,0 #(32)~Mean, standard deviation (around normal) timesteps from premises infectiousness to immunity (infectiousness duration)
0 #(33)+Partial transition flag 0: off, 1: on
0.05,0.006,0.44,4,6.30852 #(34)+Partial transition parameters: r0 (0.05), r1 (0.006), gamma (0.44), tS0 (4), scaling factor.
* #(35)

######################## Grid-related settings ########################
* #(36)+Filename containing grid cells (will override other options)
* #(37)+Length of cell side for uniform cells (will override density options)
500,100000 #(38)+Max farms per cell, cell size minimum side length in m
* #(39)
* #(40)

######################## Shipment-related settings ########################
5 #(41)~Method to generate county-county shipments (USAMM), comma-separated (0: shipments off; 1: USAMMv1; 3: USAMMv2 kernel 1; 4: USAMMv2 kernel 2; 5: USAMMv2 kernel 3)
1 #(42)NA
* #(43)
inputfiles/beef_k3_cov.post, inputfiles/dairy_k3_cov.post #(44) USAMM posterior files. Must match method selected in (41). Comma-separated, one file for each species.
Q1,Q2,Q3,Q4 #(45) The order in which the in which the temporal switching of USAMM parameters should happen. Comma separated, time periods exactly as the temporal component of the USAMM parameter names in the file in option 44.
1,91,182,274 #(46) Day of the year (Jan 1 = day 1) where each time period begins. Comma separated integers. Assume no leap years.
inputfiles/county_covariates_scaled_mean_zero.txt,inputfiles/county_covariates_scaled_mean_zero.txt #(47) Origin covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
inputfiles/county_covariates_scaled_mean_zero.txt,inputfiles/county_covariates_scaled_mean_zero.txt #(48) Destination covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
*,* #(49)
1 #(50) Exposed shipments: shipping from a farm with status exposed will cause the receiver to become exposed as well. 1 = on, 0 = off. Affects FMD simulations only.

######################## Control-related settings ########################
shipBan,cull,vax #(51)~Names for unique control types, comma-separated (fixed options: shipBan, cull, vax). '*' will turn off control.
noLimit,stateSum,nationalLimit #(52) Control constraint function types, comma-separated (fixed options: noLimit, dailyLimit, stateSum (cull only), and nationalLimit (vax only))
0;240,0;6804,0 #(53) Control constraint parameters, comma-separated, SEMICOLON-separated by type. Provide a single value for a shipBan and a mean and standard deviation for cull and vax.
state,premises,premises #(54)~Spatial scale at which control is applied, comma-separated (fixed options: premises, county (shipBan only), state (shipBan only))
NA;inputfiles/landfills_flaps12_0007.txt;inputfiles/vaccineBankUpdated.txt #(55) List control constraint files here, comma-separated, SEMICOLON-separated by type
NA;resourceLocs;resourceBoosts #(56) Specify file types for (55), comma-separated, SEMICOLON-separated by type (fixed options: NA, resourceLocs (must be used with stateSum in line 52), resourceBoosts (must be used with nationalLimit in line 52))
0,0,11 #(57)~Implemented to effective: mean number of timesteps, comma-separated for each control type
0,0,0 #(58)~Implemented to effective: standard deviation number of timesteps, comma-separated for each control type
366,366,183 #(59)~Effective to inactive: mean number of timesteps, comma-separated for each control type
0,0,0 #(60)~Effective to inactive: standard deviation number of timesteps, comma-separated for each control type
0.75,0.75;1,1;0.9,0.9 #(61)~Effectiveness (including compliance) of control types as proportion. Comma-separated probability of preventing exposure given exposure and probability of transmission given infectiousness. SEMICOLON-separated by type.
* #(62)
newRegionReportsOverX,newPremReportsOverX,newPremReportsOverX #(63)~Control triggers, comma-separated (fixed options). '*' will turn off control.
0,0,0 #(64)~Control trigger thresholds, comma-separated (numeric)
shipBan,cull,vax #(65)~Control trigger responses, comma-separated (must exist in (51))
0,0,-1 #(66)~Control response targets, comma-separated. -1 = DCs, 0 = triggers only, # = radius in units of x/y coordinates of premises
earliest,earliest,earliest #(67)~Control response priority, comma-separated. Options: earliest
* #(68)
* #(69)
* #(70)

######################## Reporting and Tracing (DC) settings ########################
15,0 #(71)~Mean, standard deviation timesteps from INDEX premises exposure to reporting
8,0 #(72)~Mean, standard deviation timesteps from non-dangerous-contact premises exposure to reporting
2,0 #(73)~Mean, standard deviation timesteps from dangerous-contact premises exposure to reporting
sus,4;exp,5 #(74) Dangerous Contact scaling parameters relative to risk: status, then scale, SEMICOLON-separated (only used if at least one of (66) is -1)
* #(75)
* #(76)
* #(77)

######################## Additional functionality under development. Do not change. ########################
* #(78)x Additional functionality under development. Do not change default value.
* #(79)x Additional functionality under development. Do not change default value.
NA #(80)x Additional functionality under development. Do not change default value.
NA #(81)x Additional functionality under development. Do not change default value.
* #(82)x Additional functionality under development. Do not change default value.
NA #(83)x Additional functionality under development. Do not change default value.
NA #(84)x Additional functionality under development. Do not change default value.
NA #(85)x Additional functionality under development. Do not change default value.
NA #(86)x Additional functionality under development. Do not change default value.
NA #(87)x Additional functionality under development. Do not change default value.
NA #(88)x Additional functionality under development. Do not change default value.
*   #(89) Unused
*   #(90) Unused
NA #(91)x Additional functionality under development. Do not change default value.
0 #(92)x Additional functionality under development. Do not change default value.
* #(93)x Additional functionality under development. Do not change default value.
0 #(94)x Additional functionality under development. Do not change default value.
NA #(95)x Additional functionality under development. Do not change default value.
* #(96)
* #(97)
* #(98)
* #(99)

######################## Additional functionality under development. Do not change. ########################
0,0     #(100)~x Additional functionality under development. Do not change default value.
0,0     #(101)x Additional functionality under development. Do not change default value.
* #(102) Unused.
* #(103) Unused.
* #(104) Unused.
* #(105) Unused.
* #(106) Unused.
* #(107) Unused.
* #(108) Unused.
NA #(109)x Additional functionality under development. Do not change default value.
NA #(110)x Additional functionality under development. Do not change default value.
* #(111) Unused.
* #(112) Unused.
* #(113) Unused.
* #(114) Unused.
* #(115) Unused.
* #(116) Unused.
* #(117) Unused.
* #(118) Unused.
* #(119) Unused.

######################## Additional functionality under development. Do not change. ########################
* #(120) Unused. 
* #(121) Unused. 
0, 0 #(122)x Additional functionality under development. Do not change default value.
0, 0 #(123)x Additional functionality under development. Do not change default value.
0 #(124)x Additional functionality under development. Do not change default value.
* #(125) Unused.
* #(126) Unused. 
* #(127) Unused. 
* #(128) Unused. 
NA #(129)x Additional functionality under development. Do not change default value.

########################  Additional functionality under development. Do not change. ########################
) #(130)x Additional functionality under development. Do not change default value.
0 #(131)x Additional functionality under development. Do not change default value.
0 #(132)x Additional functionality under development. Do not change default value.
0,0 #(133)x Additional functionality under development. Do not change default value.
0,0  #(134)x Additional functionality under development. Do not change default value.
0 #(135)x Additional functionality under development. Do not change default value.
0 #(136)x Additional functionality under development. Do not change default value.
* #(137) Unused.
0, 0 #(138)x Additional functionality under development. Do not change default value.
0, 0 #(139)x Additional functionality under development. Do not change default value.
0 #(140)x Additional functionality under development. Do not change default value.
0 #(141)x Additional functionality under development. Do not change default value.
0 #(142)x Additional functionality under development. Do not change default value.
0 #(143)x Additional functionality under development. Do not change default value.
0 #(144)x Additional functionality under development. Do not change default value.
0 #(145)x Additional functionality under development. Do not change default value.
0 #(146)x Additional functionality under development. Do not change default value.
0 #(147)x Additional functionality under development. Do not change default value.
0 #(148)x Additional functionality under development. Do not change default value.
* #(149) Unused.

IP cull & ring vaccination

## One variable per row, comments start with #
## Empty rows ignored. Rows with numbers and without descriptions are placeholders for future variables.
## Arguments not provided should be replaced with '*'.
## Values in parentheses are the index in the vector where value is stored.
## '~' after the value indicates that this value is required
## '+' after the value indicates that one of these adjacent options is required
## 'x' after the value indicates that this feature is not yet functional

######################## Output settings ########################
FMD_PToff_Infectious7days_MB_cullVax_3km_MvmtBan_75_FLAPS12_Quarterly_USDOS_format_0003_07_20200308 #(1) Batch name, used as prefix for output files. Only letters, numbers and underscore.
1 #(2) Summary output on/off (1/0) - one line per replicate with summary information (specific metrics will vary with run settings, but examples include total number of infected premises, duration, seed info, run time, and control measures applied)
1 #(3) Detailed infection output on/off (1/0) - one line per exposure with information about the exposure event (such as time, source of infection, route of infection, and whether control measures were effective in preventing the exposure)
0 #(4) Print grid cells on/off (1/0)
0 #(5)xAdditional functionality under development. Do not change default. (Print shipments)
0 #(6)xAdditional functionality under development. Do not change default. (Print control implementations)
* #(7)
* #(8)
* #(9)
* #(10)

######################## General settings ########################
FLAPS/FLAPS12_Quarterly_USDOS_format_0003.txt #(11)~Name of file containing premises ID, FIPS, x, y, lat, long, premises class (b,d,f,m), beef herd size, dairy herd size. Beef and dairy herd sizes can be either one column each with yearly herd sizes (i.e. [bY, dY]), or four columns each with quarterly herd sizes (i.e. [b1, b2, b3, b4, d1, d2, d3, d4]. Premises classes (b,d,f,m) are beef, dairy, feedlot, market. Make sure the premises file doesn't have numbers in 1e+05 format (may happen with IDs)
beef,dairy #(12)~List of species for which counts are provided in premises file, comma-separated
365 #(13)~Timesteps to run (in days for foot and mouth disease (FMD))
* #(14) Max infected premises before stopping an outbreak (* = no limit)
1 #(15)~Verbose level: Output extra information to console as model runs (0=off, 1=basic steps, 2=debug)
0   #(16) Do not change default.
0 #(17)~Reverse x/y option: if input file is entered as lat/long (y/x) set to 1, and if long/lat (x/y) set to 0 (default)
inputfiles/FIPS_updated_new.txt #(18)~Name of file containing FIPS name, state name, area (m2), x, y. Tab separated.
0 #(19) Day of the year to start simulation (Jan 1 = day 1). Must be 0 - 365. 0 = random day [1-365]. 
0 #(20) ~Type of infectious disease to simulate. 0 = foot and mouth disease (FMD).
allFips #(21)~Seed source: filename or "allFips". "allFips" chooses one random premises from each county containing premises. Filename is of a file containing identifiers (FIPS codes or premisesIDs) from which to seed infection, one line per simulation.
fips #(22)~Seed file type: type of information on each line of the file named in (21). "fips" = choose 1 premises at random within the FIPS code on a given line in (21), "singlePremises" = use the premisesID provided on a given line in (21), "multiplePremises" = use all comma separated premisesIDs on a given line in (21)
0.5 #(23) +Controls market behavior with regard to within-herd spread. This is a real number probability (range [0,1], default = 1) that a shipment from an infected market transmits infection. 

######################## FMD Infection-related settings ########################
1,1 #(24)~Susceptibility exponents(q), species-specific & comma-separated in order listed in (12)
1,1 #(25)~Transmissibility (infectiousness) exponents(p), species-specific & comma-separated in order listed in (12)
1,1 #(26)~Susceptibility constants(S), species-specific & comma-separated in order listed in (12)
10.252,10.252 #(27)~Transmissibility (infectiousness) constants(T), species-specific & comma-separated in order listed in (12)
0 #(28)~Kernel type for local (diffusion) spread: 0: k1/(1 + (distance/k2)^k3), 1: data file in (30), 2: k1/(1+d/k2)^k3
1.46e-08,1686.155,2.267 #(29)x~Kernel parameters k1, k2, k3
* #(30) Name of file containing data-based local spread probabilities by distance, ie inputfiles/UKDataKernel.txt
5,0 #(31)~Mean, standard deviation (around normal) timesteps from premises exposure to infectiousness (latency duration)
7,0 #(32)~Mean, standard deviation (around normal) timesteps from premises infectiousness to immunity (infectiousness duration)
0 #(33)+Partial transition flag 0: off, 1: on
0.05,0.006,0.44,4,6.30852 #(34)+Partial transition parameters: r0 (0.05), r1 (0.006), gamma (0.44), tS0 (4), scaling factor.
* #(35)

######################## Grid-related settings ########################
* #(36)+Filename containing grid cells (will override other options)
* #(37)+Length of cell side for uniform cells (will override density options)
500,100000 #(38)+Max farms per cell, cell size minimum side length in m
* #(39)
* #(40)

######################## Shipment-related settings ########################
5 #(41)~Method to generate county-county shipments (USAMM), comma-separated (0: shipments off; 1: USAMMv1; 3: USAMMv2 kernel 1; 4: USAMMv2 kernel 2; 5: USAMMv2 kernel 3)
* #(42)
* #(43)
inputfiles/beef_k3_cov.post, inputfiles/dairy_k3_cov.post #(44) USAMM posterior files. Must match method selected in (41). Comma-separated, one file for each species.
Q1,Q2,Q3,Q4 #(45) The order in which the in which the temporal switching of USAMM parameters should happen. Comma separated, time periods exactly as the temporal component of the USAMM parameter names in the file in option 44.
1,91,182,274 #(46) Day of the year (Jan 1 = day 1) where each time period begins. Comma separated integers. Assume no leap years.
inputfiles/county_covariates_scaled_mean_zero.txt,inputfiles/county_covariates_scaled_mean_zero.txt #(47) Origin covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
inputfiles/county_covariates_scaled_mean_zero.txt,inputfiles/county_covariates_scaled_mean_zero.txt #(48) Destination covariates for all counties. One file for each species, comma separated. Must have header: FIPS, name1, name2... Names must match name component of covariate parameters in USAMM parameter file.
*,* #(49)
1 #(50) Exposed shipments: shipping from a farm with status exposed will cause the receiver to become exposed as well. 1 = on, 0 = off. Affects FMD simulations only.

######################## Control-related settings ########################
shipBan,cull,vax #(51)~Names for unique control types, comma-separated (fixed options: shipBan, cull, vax). '*' will turn off control.
noLimit,stateSum,nationalLimit #(52) Control constraint function types, comma-separated (fixed options: noLimit, dailyLimit, stateSum (cull only), and nationalLimit (vax only))
0;240,0;6804,0 #(53) Control constraint parameters, comma-separated, SEMICOLON-separated by type. Provide a single value for a shipBan and a mean and standard deviation for cull and vax.
state,premises,premises #(54)~Spatial scale at which control is applied, comma-separated (fixed options: premises, county (shipBan only), state (shipBan only))
NA;inputfiles/landfills_flaps12_0003.txt;inputfiles/vaccineBankUpdated.txt #(55) List control constraint files here, comma-separated, SEMICOLON-separated by type
NA;resourceLocs;resourceBoosts #(56) Specify file types for (55), comma-separated, SEMICOLON-separated by type (fixed options: NA, resourceLocs (must be used with stateSum in line 52), resourceBoosts (must be used with nationalLimit in line 52))
0,0,11 #(57)~Implemented to effective: mean number of timesteps, comma-separated for each control type
0,0,0 #(58)~Implemented to effective: standard deviation number of timesteps, comma-separated for each control type
366,366,183 #(59)~Effective to inactive: mean number of timesteps, comma-separated for each control type
0,0,0 #(60)~Effective to inactive: standard deviation number of timesteps, comma-separated for each control type
0.75,0.75;1,1;0.9,0.9 #(61)~Effectiveness (including compliance) of control types as proportion. Comma-separated probability of preventing exposure given exposure and probability of transmission given infectiousness. SEMICOLON-separated by type.
* #(62)
newRegionReportsOverX,newPremReportsOverX,newPremReportsOverX #(63)~Control triggers, comma-separated (fixed options). '*' will turn off control.
0,0,0 #(64)~Control trigger thresholds, comma-separated (numeric)
shipBan,cull,vax #(65)~Control trigger responses, comma-separated (must exist in (51))
0,0,3000 #(66)~Control response targets, comma-separated. -1 = DCs, 0 = triggers only, # = radius in units of x/y coordinates of premises
earliest,earliest,earliest #(67)~Control response priority, comma-separated. Options: earliest
* #(68)
* #(69)
* #(70)

######################## Additional functionality under development. Do not change. ########################
* #(78)x Additional functionality under development. Do not change default value.
* #(79)x Additional functionality under development. Do not change default value.
NA #(80)x Additional functionality under development. Do not change default value.
NA #(81)x Additional functionality under development. Do not change default value.
* #(82)x Additional functionality under development. Do not change default value.
NA #(83)x Additional functionality under development. Do not change default value.
NA #(84)x Additional functionality under development. Do not change default value.
NA #(85)x Additional functionality under development. Do not change default value.
NA #(86)x Additional functionality under development. Do not change default value.
NA #(87)x Additional functionality under development. Do not change default value.
NA #(88)x Additional functionality under development. Do not change default value.
*   #(89) Unused
*   #(90) Unused
NA #(91)x Additional functionality under development. Do not change default value.
0 #(92)x Additional functionality under development. Do not change default value.
* #(93)x Additional functionality under development. Do not change default value.
0 #(94)x Additional functionality under development. Do not change default value.
NA #(95)x Additional functionality under development. Do not change default value.
* #(96)
* #(97)
* #(98)
* #(99)

######################## Additional functionality under development. Do not change. ########################
0,0     #(100)~x Additional functionality under development. Do not change default value.
0,0     #(101)x Additional functionality under development. Do not change default value.
* #(102) Unused.
* #(103) Unused.
* #(104) Unused.
* #(105) Unused.
* #(106) Unused.

Acknowledgements & Contact Information

This work is supported by funding provided by the U.S. Department of Homeland Security Science and Technology Directorate under contract numbers HSHQDC-13-B0028, and D15PC00278 and by U.S. Department of Agriculture Cooperative Agreement USDA-APHIS-AP19VSCEAH00C023.

The findings and conclusions in this preliminary publication have not been formally disseminated by the U.S. Department of Agriculture and should not be construed to represent any agency determination or policy. The analyses, views and conclusions contained in this document are those of the authors and should not be interpreted as representing the regulatory opinions, official policies, either expressed or implied, of the U.S. Department of Homeland Security.

If you have questions or comments regarding USDOS or this User Manual, please contact Dr. Colleen Webb at .