This section describes directory layout, configuration files used by AvnFPS and steps needed to download climatological data. Generally, this section will only be used as an aid in troubleshooting problems with the configuration of AvnFPS. While it is possible to configure AvnFPS by editing these files directly, most people will find it much easier to use the Graphical User Interfaces (GUI) described in Section 4, “Avnsetup”.
After successful installation of AvnFPS OB9, the top level directory /awips/adapt/avnfps should be as follows:
lx2-wfo: /bin/ls -la drwxrwxr-x 9 fxa fxalpha 4096 Feb 21 15:04 OB8.3 drwxrwxr-x 9 fxa fxalpha 4096 Mar 1 13:03 OB9 lrwxrwxrwx 1 root root 7 Mar 1 13:33 bin -> OB9/bin lrwxrwxrwx 1 root root 8 Mar 1 13:33 data -> OB9/data lrwxrwxrwx 1 root root 7 Mar 1 13:33 etc -> OB9/etc drwxrwxr-x 6 fxa fxalpha 4096 Feb 21 19:27 freetype-2.1.10 drwxrwxr-x 5 fxa fxalpha 4096 Mar 1 13:03 gamin-0.1.9 drwxrwxr-x 6 fxa fxalpha 4096 Feb 21 20:27 hdf5-1.6.4 lrwxrwxrwx 1 root root 8 Mar 1 13:33 logs -> OB9/logs drwxrwxr-x 7 fxa fxalpha 4096 Mar 13 2005 Python-2.4.1 drwxrwxr-x 6 fxa fxalpha 4096 Mar 13 2005 tcltk8.4.5
The installation process does attempt to remove versions of the software older than OB8.3. It is up to you to remove any remaining cruft that might be in this directory.
All configuration files are located in the directory /awips/adapt/avnfps/OB9/etc and its subdirectories. Most of the
configuration files are in Windows™ ini format:
[section]
keyword=argument(s)
Lines starting with # are comments.
Files containing specifications for graphical user interfaces (GUI) follow a X11 standard:
*pattern: value
where pattern is a hierarchy of one or more widget classes/names, separated
by * or a .. Comment lines start with
!. See [Welch], Chapter 25. These files are located in the
subdirectory /app-resources.
Contains a list of forecaster ids with their names or initials. The numbers must be in the range 1
through 999. Lines starting with # are comments. Blank lines are allowed in the
file. The format of this file has changed beginning with AvnFPS3.4 to include a flag as to whether a
user is allowed to disseminate forecasts. The transmit flag follows the user's number, and is a simple
binary flag: 0 - no; 1 - yes. An example:
# etc/forecasters # List of forecasters # Format: # forecaster's number xmit_privilege [No=0,Yes=1] forecaster's name 1 1 Amanda 2 0 Dan 3 1 Mark 4 1 Matt
Thus, in this example, Amanda, Mark and Matt have the ability to queue up TAFs for transmission. However, Dan does not have this capability.
This file configures the logging behavior of all AvnFPS programs. You should not need to modify it.
# logging.cfg # configuration file for Python logging utility [loggers] keys=root [handlers] keys=hdl [formatters] keys=fmt [logger_root]level=NOTSET handlers=hdl [handler_hdl]
class=WeeklyFileHandler args=('%s/logs' % os.environ['TOP_DIR'], os.path.basename(sys.argv[0]).split('.')[0]) formatter=fmt [formatter_fmt]
format=%(asctime)s %(levelname)-5s [%(process)5d:%(thread)6d] %(module)s: %(message)s
| Log level is set in the section [logger_root]. Available values in decreasing order of information output are: DEBUG or NOTSET (these two are equivalent), INFO, WARNING, ERROR, CRITICAL. |
|
[handler_hdl] specifies output directory and file name.
The class |
| [formatter_fmt] specifies format of a line written to the log file. Refer to Python Documentation for details. |
Specifies values used and directories monitored by the data ingest threads.
# etc/server.cfg # Name servers # Either local or ip address. Local means that broadcast is used to locate # the server, which means the server must be on the same subnet # The list of tafs is displayed in the startup (menu) GUI # Data ingest servers [dis]tags=text,ltg,rltg,file,llws,guid #[dis_text]
#name=text #source=/data/fxa/point/avnfps/raw #module=TextThread #nhours=24 [dis_text]
name=text source=/awips/adapt/avnfps/data/text module=TriggerThread nhours=24 [dis_ltg]
name=ltg source=/data/fxa/point/binLightning/netcdf module=LtgThread # distance in miles, age in minutes distance=20 age=15 [dis_rltg]
name=rltg source=/data/fxa/img/SBN/netCDF/LATLON/3hr/LTG module=RadLtgThread [dis_llws]
name=llws radar=/data/fxa/radar profiler=/data/fxa/point/profiler/netcdf acars=/data/fxa/point/acarsProfiles/netcdf module=LLWSThread [dis_file]
tag=px1 name=file source=/awips/adapt/avnfps/data/grids, module=FileThread [dis_guid]
name=guid eta=/data/fxa/point/model/ETA/netcdf etamos=/data/fxa/point/mos/ETA/netcdf gfsmos=/data/fxa/point/mos/GFS/netcdf gfslamp=/data/fxa/point/gfslamp/netcdf ngmmos=/data/fxa/point/mos/NGM/netcdf module=GuidanceThread nhours=24 # access control # hosts allowed to access data [valid]
hosts=XXX.XXX.58.*
Specifies which servers should be started by avnint and their startup order and should not be changed.
# px2finit.cfg [avnserver]name=avnserver order=0 wait=5 [avndrs] name=avndrs order=1 wait=3 [avndis] name=avndis order=2 wait=1 [avnxs] name=avnxs order=3
Specifies values used by graphical user interfaces (GUI) and is shared by all users.
# etc/gui.cfg # specifies available monitor options for avnwatch # Name servers # Either local or ip address. Local means that broadcast is used to locate # the server, which means the server must be on the same subnet # The list of tafs is displayed in the startup (menu) GUI [ns]tags=local, # colors in main GUI: 7 items [colors]
tags=green3,grey,pale green,yellow,orange,red,purple # editor tags [editor_tags]
fatal=red error=orange warning=forest green # miscellaneous features [features]
tafeditor=1 twbeditor=0 # viewers: taf and metar must be present, taf must be first on the list [viewers]
tags=taf,metar,gfsmos,gfslamp,tug,nammos,etabuf,ngmmos,grids [viewer_taf]
module=TafViewer [viewer_metar] module=MetarViewer label=Metars [viewer_gfsmos] module=MosViewer label=GFS-MOS model=gfsmos [viewer_gfslamp] module=MosViewer label=GFSLAMP model=gfslamp [viewer_tug] model = gfslamp module = TUGViewer label = TAF/LAMP [viewer_nammos] module=MosViewer label=NAM-MOS model=etamos [viewer_ngmmos] module=MosViewer label=NGM-MOS model=ngmmos [viewer_grids] module=GridViewer label=NDFD Grids [viewer_etabuf] module=EtaViewer label= NAM DMO [menus]
number=7 [menu_0]
items=metar [menu_1] items=persistence_1hr,persistence_2hr,persistence_3hr [menu_2] items=ltg [menu_3] items=rltg [menu_4] items=ccfp [menu_5] items=grids [menu_6] items=llws [monitor_metar]
menu=Current Observation module=MetarMonitor items=tempo,wind,wx,vsby,sky,cat labels=tpo,wnd,wx,vis,cig,cat tempolevel=2 tempograceperiod=1800.0 [monitor_persistence_1hr] menu=1hr Persistence module=PersistMonitor nhours=1
items=vsby,wind,wx,sky labels=vis,wnd,wx,cig [monitor_persistence_2hr] menu=2hr Persistence module=PersistMonitor nhours=2 items=vsby,wind,wx,sky labels=vis,wnd,wx,cig [monitor_persistence_3hr] menu=3hr Persistence module=PersistMonitor nhours=3 items=vsby,wind,wx,sky labels=vis,wnd,wx,cig [monitor_ltg] menu=ltg module=LtgMonitor items=wx labels=ts [monitor_rltg] menu=rltg module=RadLtgMonitor items=wx labels=ts [monitor_ccfp] menu=ccfp module=CCFPMonitor items=wx labels=ts [monitor_grids] menu=NDFD Grids module=GridMonitor from=2
to=6 items=vsby,wind,wx,sky labels=vis,wnd,wx,sky [monitor_llws] menu=llws module=LLWSMonitor items=wind labels=ws
This is a configuration file for the weather plot GUI.
# wxplot.cfg [print]cmd=convert - tmp/%s.jpg [hours]
back=24 forward=24 [vsby]
bot=0.125 top=10.0 [cig] bot=100 top=8000 [viewers]
tags=taf,metar,gfsmos,gfslamp,etamos,ngmmos,eta [selected]
tags=taf,metar [viewer_taf]
module=TafPlot label=TAF color=blue [viewer_metar] module=MetarPlot label=METARs color=red [viewer_gfsmos] module=MosPlot label=GFS-MOS color=forest green model=avn [viewer_etamos] module=MosPlot label=NAM-MOS color=green model=gfs [viewer_ngmmos] module=MosPlot label=NGM-MOS color=dark green model=ngm [viewer_eta] module=EtaPlot label=NAM-WRF color=brown [viewer_gfslamp] module=MosPlot label=GFS-LAMP color=purple model=gfslamp
This configuration file is used by avnxs which sends forecast and verification products out for dissemination.
# etc/xmit.cfg [verification]wmo = NXUS98 KPIT awips = KPBZVFTPBZ fcstid = 0 period = 6 [transmission]
# how often checks for new files (seconds) frequency = 15 # reject older than (hours) old = 3
The TAF configuration files reside in directory etc/tafs.
For each TAF site CCCC there is a subdirectory etc/tafs/CCCC
containing template files, one per each forecast period and site info data
etc/tafs/CCCC/info.cfg.
This file is normally created by the Taf Site Editor GUI, normally invoked from avnsetup.
# etc/tafs/KIAD/info.cfg [headers] wmo = FTUS41 KIAD afos = WBCTAFIAD [thresholds]cig = 200,600,1000,2000,3100 radar_cutoff = 100,0 vsby = 0.5,1.0,2.0,3.0,6.0 profiler_cutoff = tafduration = 24 [sites]
radars = KLWX,TIAD gfsmos = KIAD gfslamp = KIAD metar = KIAD eta = KIAD ngmmos = IAD profilers = etamos = KIAD acars = IAD [geography]
lat = 38.96 runway = 180,110 lon = -77.45 elev = 98 [qc] impact = 1
climate = 1 currentwx = 1
The default configuration files for all monitors are located in the directory
etc/tafs/XXXX. Currently these are:
grids.cfg, ltg.cfg,
mtrs.cfg, rltg.cfg,
ccfp.cfg. All can be edited with the "Montoring Rules" GUI via
avnsetup. Here is an example of rule definition file for
monitoring of METARs:
# etc/tafs/XXXX/mtrs.cfg [rule_11]severity = 5 msg = Visibility difference of 3 or more categories unique = 1 type = vsby method = VsbyCatDelta ncat = 3 ....... [rules]
active = 0,1,2,3,4,5,6,7,8,9,10,11 ....... [rule_1] severity = 3 msg = Freezing precipitation in TAF and not in obs unique = 0 type = wx method = WxTafDelta wx = FZRA,FZDZ,PL .......
If you want to have rules dependent on the TAF site, copy the relevant file
to the TAF site directory and modify it there. The monitoring program first
tries to find the files in the site directory, if it can't find it there,
uses the one from etc/tafs/XXXX.
![]() | Important |
|---|---|
There are no default hardcoded rules, the files in
|
With the Impact QC feature, the forecaster can be alerted when a prepared TAF has a significant
impact on airport operations. This file is optional and cannot be modified with
avnsetup, you must use a text editor instead. Shown below is a configuration
file with additional rules added that are specific to Pittsburgh International Airport, etc/tafs/KPIT/impact.cfg:
# impact.cfg [conditions]items=cond_1,cond_2,cond_3,cond_4,cond_5 [cond_1]
tag=FC level=1 text=Impact: Fuel-Alternate vsby<3 or cig<2000 expr=vsby<2.95 or cig<2000 [cond_2] tag=FC level=2 text=Impact: LIFR conditions vsby<1 or cig<500 expr=vsby<0.95 or cig<500 [cond_3] tag=ws level=1 text=Wind shift vs previous group resulting in >6kt change along PIT runway 28R/10L,may affect runway config expr=wind[0].shift and wind[0].runway>6 [cond_4] tag=xw level=1 text=Cross wind component >14KT on PIT runway 28R/10L expr=wind[0].cross>14 [cond_5] tag=xw level=2 text=Cross wind component >24KT on PIT runway 28R/10L expr=wind[0].cross>24
|
Section [conditions] defines the list of conditions to
check. For each tag
[cond_ |
|
Each [cond_
|
The file etc/tafs/XXXX/climqc.cfg is used to define
category thresholds used while creating climate QC
count files. Currently this file cannot be modified with
avnsetup, you must use a text editor. An example:
#etc/tafs/XXXX/climqc.cfg [args]alpha=0.3 showdetails=0 [thresholds]
vsby=0.27,1.1,2.9,6.1 cig=205,605,1005,3105,40000 ff=4.1,10.1,20.1 dd=22.5,67.5,112.5,157.5,202.5,247.5,292.5,337.5
If you want to have thresholds dependent upon the unique operational constraints at
the specific TAF site, copy this file to the TAF site directory and modify it
there. The program avnqcstats which creates the count files first
tries to find the file in the site directory, if it can't find it there, uses the one
from etc/tafs/XXXX directory.
Located in etc/tafs. Normally created by
the Taf Product GUI invoked from avnsetup. An example file:
# etc/tafs/PBZ_TAFS.cfg # list of TAF sites [sites] workpil = PITWRKTAF idents=KPIT,KAGC,KBVI,KLBE,KHLG,KMGW,KZZV,KFKL,KDUJ
The optional DEFAULT file contains name of the configuration file,
sans the .cfg extension. that should be loaded on
startup of the monitoring GUI. If the DEFAULT is not present, the first TAF
product configuration file in alphabetical order is used by the AvnFPS clients.
The TAF Formatter requires three configuration files. These files are located in the
directory etc/tafs/XXXX. With AvnFPSOB9,
flt_cat.cfg and grp_taf.cfg files can now be
customized for each TAF site and moved to its respective
etc/taf/CCCC directory.
File flt_cat.cfg contains the threshhold values of visibility and
ceiling height that are used to determine aviation flight categories. The default
values are identical to those provided in NWS Instruction 10-813. The thresholds can be
changed to site-specific values.
#etc/tafs/XXXX/flt_cat.cfg [cig] thresholds=200,500,1000,3000,3500,4000,5000,8000,10000,12000,15000,18000,20000 [vis] thresholds=0.5,1,3,5![]()
File grp_taf.cfg contains the configurable threshold values that are used
to form concise TAFs. Detailed description for each category has been provided inside the
file.
# # This file contains thresholds that control the algorithm that converts # numerical/tabular gudiance into 'guidance' TAFs. # # Probability thresholds used for MOS. This section also acts as a default # section if 'gfslamp' and 'grid' sections are not provided # [mos] # # Probabilities (POT and POP06) equal and above which precipitation and/or # thunderstorms will be included in the prevailing group. # prev_precip=80 prev_tstm=80 # # Probabilities (POT and POP06) equal above which the tempo group is formed # containing precipitation and/or thunderstorms. # tempo_precip=36 tempo_tstm=36 # # Probabilities (POT and POP06) equal and above which the prob30 group is formed # containing precipitation and/or thunderstorms. # prob30_precip=26 prob30_tstm=26 # #Same as above but used after the 9th hour in forecast # prev_precip_af_9hr=90 prev_tstm_af_9hr=90 tempo_precip_af_9hr=46 tempo_tstm_af_9hr=36 # # [gfslamp] # # A new set of thresholds for LAMP due to the increased forecast resolutions: # hourly probability for precipitation and two-hour probability for thunder # prev_precip=50 prev_tstm=35 tempo_precip=36 tempo_tstm=26 prob30_precip=25 prob30_tstm=15 # # Same set of thresholds used for after the 9th hour in forecast prev_precip_af_9hr=60 prev_tstm_af_9hr=45 tempo_precip_af_9hr=46 tempo_tstm_af_9hr=36 # # Boolean (yes/no) if PROB30 groups are wanted in guidance TAFs [prob30] value=yes # [def_singleton] # # # The longest time span in hours that makes this group combinable with # a longer, adjacent (in time) group. If the duration of a group is longer # than this value, this group stays alone in the final TAF. # short_dt=1# # The shortest time span in hours that allows its shorter duration # neighbor to be combined with it. # long_dt=15
# # Maximum category difference between the long and the short duration groups. If the # difference in flight category between the two groups is greater than this value, # they are not combined. # # Categories are treated separately for visibility and ceilings. # # To see the breakpoints for the ceiling and visibility categories, see # etc/tafs/XXXX/flt_cat.cfg (flight category) configuration file. # # First the visibility # dc_vis=1
# # Lowest visibility category to which the combining algorithm is applied # low_c_vis=5
# # Highest visibility category to which the combining algorithm is applied # high_c_vis=5
# # Now, the ceiling . . . # dc_cig=1
# # The lowest ceiling category to which the combining is applied # low_c_cig=13
# # Highest ceiling category to which the combining is applied high_c_cig=14
# # Earliest forecast time in hrs to which the combining algorithm can be applied low_p=12
# # Maximum allowable ceiling height in hundreds of feet when thunderstorms # are forecasted # [cb_hi] value=50 # # Maximum speed which is considered to be not a calm wind. [wind] calmwd=2 # # Wind speed and direction change in wind speed above which combining will not be applied. high_wind=10 wind_chg=4
# # Boolean (yes/no) flag if dry thunder is allowed in TAF [dryts] value=yes # # Boolean (yes/no) flage if CB without thunder is allowed in TAF [cbwots] value=no
![]() | Note |
|---|---|
Items 1 through 9 control how two dissimilar (in visibility and/or ceiling) groups, one 'short', the other 'long', can be further combined. |
Finally, grid_probs.cfg contains configuration data on how the
probability attributes on IFPS grids are translated into numerical probability values that
will be used to form TAFs. Remember that precipation is only included in the TAFs when
certain probability threshold is exceeded. This file cannot be customized to individual TAF
sites.
#tables used to convert prob symbols in grids to a pop value [before9hr] S=30 IS=30 WS=30 SC=50 O=50 C=50 D=70 WP=70 NM=70 L=70 [after9hr] S=20 IS=20 WS=20 SC=30 O=30 C=30 D=50 WP=50 NM=50 L=50
The default and individual resource files are located in the directory etc/app-resources. To edit the default file
etc/app-resources/X you can use any text editor. Individual files have naming
convention X., where N is the forecaster number from
Netc/forecasters. These files are created by a graphical editor available from the
AvnWatch GUI menu.
Here is the listing of the default file etc/app-resources/X
!! default X resources configuration file !! default font !! change 100 to 140 if you want bigger default font *font: -adobe-helvetica-bold-r-normal-*-*-100-*-*-p-*-iso8859-9 !! default colors *background: grey70 *foreground: black !! text window font *Text.font: 7x14 !! text window colors *Text.background: #2f3f6f *Text.foreground: #ffffff !! other text window specific options *Text.width: 74 *Text.height: 24 *Text.cursor: hand1 !! forecast editor font - may want to be bigger *textEditor.font: 8x16 !! forecast editor colors - may want to be different *textEditor.background: #1f2f6f *textEditor.foreground: white *textEditor.width: 70 *textEditor.height: 12 !! cursor width and color *textEditor.cursor: arrow *textEditor.insertWidth: 5 *insertBackground: yellow !! text viewer window options *textViewer.width: 74 *textViewer.height: 12 !! forecast editor orientation: horizontal or vertical *orientation: vertical !! listbox font *Listbox.font: 7x14 !! entry font *Entry.font: 7x14 !! entry window colors *Entry.background: white *MessageBar*Entry.background: grey85 !! balloon message (popup) font *Balloon.Label.font: 7x14 !! Placement of alert messages in balloon messages *impactPlacement: top !! modifies behavior of dialogs *transientDialogs: 1 !! confirmation on closing editor *confirmClose: 0 !! confirmation on sending amendments/corrections *confirmSend: 1 !! status alert colors: colors shown on the 'christmas tree' *alertLevel0: green3 *alertLevel1: grey *alertLevel2: pale green *alertLevel3: yellow *alertLevel4: orange *alertLevel5: red *alertLevel6: purple !! alert options: use colors for the first level that should result in !! notification - pale green, yellow, orange, red, purple or none *notifyDeiconify: alertLevel4 *notifyRaise: alertLevel5 *notifyPlay: alertLevel6 !! not implemented !!*notifyTalk: none *playFile: /awips/fxa/data/sounds/asterisk.au !! blink on new notification *blink: 1 !! warning/error level to disallow send: !! 'always', 'warning, 'error', 'fatal' *disallowSend: error !! forecast editor options !! use template, one of: template, merge, latest *loadOrder: merge !! ask for transmission time when sending routine forecasts *asktime: 1 !! periodically save bulletins in a backup file *autosave: 1 !! update issue and valid times on QC *updatetimes: 1 !! print forecasts on send *autoprint: 0 !! Insert/Overwrite *insert: 1 !! Word-wrap long lines: either none or word *wrap: word !! When showing a list of METARs and TAFs in Tweb Editor whether !! to allow duplicates to show up in the text windows *showUnique: 0 !! Amd, Rtd, Cor buttons on the right *amdbuttons: 1 !! number of TAFs to display *numTafs: 1 !! number of hours of METARs to display *numHours: 6 !! number of hours of METARs to display when all stations are to be displayed in viewer *numHoursAll: 1 !! show bulletin headers in the text window *showHeaders: 1 !! show decoded METARs *showDecoded: 1 !! show category probabilities for MOS *showProbs: 1 !! Format of MOS and Grids reports: raw, long or short *showFormatted: short !! flight category highlights *highlightFlightCat: 0 *lifrColor: #6c1916 *ifrColor: #5b3c2c *mvfrColor: #2c484c *vfrColor: #112346 !! !! editable by knowledgable people only !! !! send forecasts in a collective *collective: 0 !! prevents line wrap in message boxes *wrapLength: 0
Lines starting with "!!" are comments. Resource names begin with a "*" and end with ":". Anything after a ":" is a resource value. Many of the allowable values are not well documented, or cryptic. For example, valid values for cursor shape in a text window
*Text.cursor: hand1
are defined in file /usr/include/X11/cursorfont.h. You have to know that the
leading XC_ in line
#define XC_hand1 58
must be stripped and
58 ignored. Valid color names are in /usr/lib/X11/rgb.txt, but if
you don't find one you like, a hexadecimal number can be used instead, such as
*lifrColor: #6c1916
We suggest that you use the graphical resource editor available from the in the monitoring GUI, a.k.a., AvnWatch Section 2.4: “Menu Bar” toolbar to make changes to your configuration.