Data Structure Conventions

Naming Conventions

The established AFSIM naming conventions ensure consistency and enable users to recognize whether a name is a file or platform/sensor/pattern.

Table 1. Naming Conventions

Pattern

Convention

Example

Names

Use hyphens where hyphens are used and underscores to replace spaces or other special characters

F18 radar becomes f-18_radar

File Name

Lowercase letters

generic_f-18_radar.txt

Platform/Sensor

Capitalize & replace /, space, or dash with underscore

Tin Shield -> TIN_SHIELD

Name of platform, sensor, … defined in file

Same as file name (without the suffix) in ALL UPPERCASE

file generic_f-18_radar.txt defines GENERIC_F-18_RADAR

Name of components of a system (e.g., antenna patterns)

Start with the name of the system

component radar antenna becomes GENERIC_F-18_RADAR_ANTENNA

Radar mode names

All uppercase

mode ACQUIRE

Directory Structure

The file repository directory tree (Table 2) illustrates the directory structure used for AFSIM input files.

The input files are organized into subdirectories under base_types and <other>_types subdirectories. Drilling down, these are further separated to provide *patterns*, *platforms*, *sensors*, *signatures*, and *weapons*.

The user project directories (e.g., iads_demo that is delivered with AFSIM) are divided into its own directory structure that mimic those of the input file example subdirectories. These directories contain files that ‘override’ the base input files. This approach allows the user to have a stable, preserved base case with known behavior that can be modified in a straightforward, consistent manner.

Note

For example, if a user wants to modify the behavior of a specific weapon, a copy of the base weapon from the base_types/weapons subdirectory can be made to the local project scenario/weapons directory. Changes then can be made to the local weapon. Likewise, additional models can be copied to the project subdirectories, which will override the models in base_types.

Table 2. File Repository Directory Tree

Directory

Subdirectory

Links

Content

base_types

patterns

platforms

sensors

eo_ir

Electro-Optical and Infrared sensor definitions.

esm_rwr

Electronic Support Measures & Radar Warning Receiver sensor definitions.

radar

Radar sensor definitions

other

Other sensor types

signatures

weapons

aam

Air-to-Air Missiles Definitions.

agm

Air-to-Ground Missiles Definitions.

jaam

Joint Air-to-Air Missiles Definitions.

jammer

Examples of intentional emission of radio frequency signals:

other

e.g., Theater Ballistic Missile.

sam

Surface-to-Air Missile Definitions

sims

Standard Interface for Missile Simulation.

tools

Scripts that help users run their model(s) and parse output.

<project>

User scenario (iads_demo, sensor_demo, etc)

output

Model output (replay, log, and event files).

platforms

Only present if changes were made to platforms.

sensors

Only present if changes were made to sensors.

signatures

Only present if changes were made to signatures.

weapons

Only present if changes were made to weapons.

<other>_types

Override directory for base_types if applicable.

patterns

platforms

sensors

eo_ir

Electro-Optical and Infrared sensor definitions.

esm_rwr

Electronic Support Measures & Radar Warning Receiver sensor definitions.

radar

Radar sensor definitions

other

Other sensor types

signatures

weapons

aam

Air-to-Air Missiles Definitions.

agm

Air-to-Ground Missiles Definitions.

jaam

Joint Air-to-Air Missiles Definitions.

jammer

Examples of intentional emission of radio frequency signals:

other

e.g., Theater Ballistic Missile.

sam

Surface-to-Air Missile Definitions

sims

Standard Interface for Missile Simulation.

Note

The directory structure delivered with AFSIM is not required in order for AFSIM to execute. The convention was established over a period of time in order to have a consistent structure of the the data input files.