DOCUMENTATION OF SOFTWARE CHANGES TO STRATUS FORECASTING SYSTEM 1. Computer Naming Convention The primary computer is a 64 bit Linux box named st1, which replaces the decommissioned 32 bit Linux box also named st1. The backup computer is also a 64 bit Linux box named st1-backup. This backup computer was formerly named st1-new. Typing "hostname" at the command prompt will reveal which box one is logged into. The naming script is /ll/cv/web/params/host_computer.pm. The outside IP address of st1 is 64.175.253.249 while inside CWSU its local IP address is 192.168.1.2. The outside IP address of st1-backup is 64.175.253.252 while inside CWSU its local IP address is 192.168.1.6. These computers are software clones and perform identical tasks with the exception of ASOS and DCP backup dialing (see next). 2. ASOS and DCP Backup Dialing Since the 5 minute SFO ASOS data and the backup DCP data calls to the sodar computers at SFO and SQL can only be retrieved by kermit dialup, only one of the two stratus computers is designated to make the ASOS call every 5 minutes and the backup DCP data calls when needed. The ASOS dialing computer is designated by having the flag file /ll/cv/ASOS_DIALER. The ASOS dialing computer can be switched between st1 and st1-backup by clicking the SWITCH ASOS DIALER button in the lower right corner of the SFO Stratus website associated with the ASOS dialing computer. Currently st1 is the ASOS dialing computer. At the time of this writing, switching the ASOS dialing computer requires a physical switch of the data and teleboot phone lines from the data and teleboot modems of one computer to the other, but in the future an external hardware switching device may be installed by NWS personnel so that no physical phone line switching will be required to switch the ASOS dialing computers. On st1-backup the ASOS and DCP backup calls use the symbolic link /ll/cv/dev/modem -> /dev/ttyS1 while the teleboot calls use the symbolic link /ll/cv/modem1 -> /dev/ttyS2. Currently on st1 the ASOS call and DCP backup calls use the symbolic link /ll/cv/dev/modem -> /dev/ttyn1a while the teleboot calls use the symbolic link /ll/cv/dev/modem1 -> /dev/ttyn1b. The reason for using symbolic links instead of the ports themselves in /dev is that the permissions to the ports in /dev get written over by root on boot up while the symbolic links in /ll/cv/dev remained unchanged after a reboot. Except for the 5 minute SFO ASOS data and backup DCP telephone data calls, both computers collect and receive all data independent of each other as well as make automated forecasts independent of each other. The ASOS dialing computer also is the only computer that makes teleboot calls to the SFO and SQL sodar sites. The 5 minute SFO ASOS data file and backup DCP data files are distributed to the non ASOS dialing computer by the /ll/cv/cvRTCache/scripts/doEveryMinute script (see associated excel file "affected_by_asosdialer.xlsx" accompanying this document). 3. CWSU Forecast and Data Entry Only the website associated with the ASOS dialing computer at CWSU displays the Rate Change, CWSU Forecast, and GDP Data buttons for the CWSU forecasters to enter rate changes, forecasts, and GDP data. When the ASOS dialing computer is switched, these buttons also switch to the new ASOS dialing computer and are suppressed on the non ASOS dialing computer. The script that controls this button switch is /ll/web/cgi-bin/cv_main/forecasts.pl by use of the showbuttons variable. The rate change, forecast, and GDP buttons and their associated files and displays have been set to advance to the next day after midnight local time instead of at 0000Z. This prevents premature data entry by the CWSU forecasters between 0000Z and shift end at 0400Z (0500Z in winter) while allowing for data entry during that period for the day just ending. The existence/non-existence of the flag file /ll/cv/PACIFIC_TIME toggles the next day advance between midnight local time and 0000Z. The CWSU forecast form and associated displays were changed to accommodate winter season forecast situations. User entered times were added for the start of SOIA, 30-RATE, and SE-PLAN along with all day buttons for SOIA and SE-PLAN. Additionally buttons were added to the forecast form for ceiling and visibility. 4. Email Conventions By convention email from user cv originating from the ASOS dialing computer has ST1 in the subject line while email from user cv originating from the non ASOS dialing computer has ST2 in the subject line. Email from user web originating from st1 has st1: in the subject line while email from user web originating from st1-backup has st1-backup: in the subject line. Email from user apache, which is related to rate changes, CWSU forecasts, and GDP report originates only from the ASOS dialing computer (see 3. above). Email originating from SJSU, which monitors st1 and st1-backup, will have SJSU and ST1 in the subject line for issues pertaining to st1 and will have SJSU and ST1-BACKUP in the subject line for issues pertaining to st1-backup. 5. Compilation on 64 Bit Platform Various C programs had to be recompiled for portability from the old 32 bit platform to the new 64 bit platforms. Extra fclose (file pointer) statements had to be removed and myvar='MALLOC_CHECK_=0'; export myvar; had to be added to many of the lines in the cv crontab to circumvent the more stringent stack overflow restrictions on the 64 bit platforms. Additionally, setenv MALLOC_CHECK_ 0 was added to /ll/cv/.cshrc . Also export SHELL=/bin/csh was added to /ll/cv/.profile to allow dialing out for crontab scripts on st1. The C program unpack.c used for satellite file processing was recompiled to /ll/cv/projects/goes/bin/i586/unpack (see /ll/cv/unpack_stuff/src/Makefile). Also the C program RTZi7.c used for determining Zi (inversion height) in the sodar file processing was recompiled to /ll/cv/cvRTCache/bin/i586/RTZi7 (see /ll/cv/RTZ_stuff/src/Makefile). 6. Python Adjustment The python version used by Red Hat Enterprise Linux (RHEL) 5 is python 2.4, which has problems handling certain date/time functions such as strftime, which was used in the consensus forecasting script /ll/cv/consensus/scripts/consio.py on the old 32 bit platform running RHEL 4 and python 2.2. This script was rewritten to perform identically without using strftime. When there's an upgrade to RHEL 6, which runs python 2.5 or higher, the old consio.py script, which uses strftime can be used. 7. Leading Zeroes Adjustment Scripts in /ll/cv/cvRTCache/scripts had to be modified to prevent leading zeroes from interfering with number comparisons. LLMIT wrote the script /ll/cv/scripts/Misc/StripLeadingZeroes which had to be used more extensively to fully enable the real time data processing system on 64 bit platforms. 8. GPSM Adjustments Because both computers will be independently generating automated forecasts, both computers will be receiving the ADL feed for the GPSM system. To account for this, the scripts /ll/cv/scripts/Misc/makeDailyReportFiles.pl and /ll/cv/scripts/Misc/makeYesterdaysReportFiles.pl were modified. Additionally, monitoring with automated email notification of the ADL feed was added to the System Status link as ADL DATA AGE. 9. Satellite Image File Name Change On 12/6/11 the satellite file naming convention changed from yyyymmdd.hhmm.g11.gz to yyyymmdd.hhmm.g15.gz. The script which retrieves this file, /ll/cv/projects/goes/scripts/FtpGoes.csh, was modified to account for naming convention changes from *.gmm.gz to *.gnn.gz. 10. Backup Telephone Data Retrieval from Sodar Computers The sodar computers at SFO and SQL had a kermit server running on a 15 minute Windows task scheduler to receive backup kermit telephone calls for sodar and pyranometer data retrieval when the primary DSL drops out. The Windows task scheduler no longer functions so a C program, /cygdrive/c/kermit/sleep32 runs on startup and brings up the kermit server every 15 minutes. Monitoring with automated email notification of the kermit servers at SFO and SQL was added to the System Status link as SFO DCP KERMIT SERVER and SQL DCP KERMIT SERVER. 11. Pressure Gradient Calculation The pressure gradients for SFO - (all surface observing stations) is calculated daily for each hour and then sent once per day to http://www.met.sjsu.edu/~sinton/grads/gradsyyyymmdd.csv . The script that does this is on the ASOS dialing computer: /ll/cv/src/scatterftp/grads/grad_daily.pl. 12. AWOS Data Check The SMB AWOS data file awos_smo.dat should be 103 bytes but from time to time the AWOS data file is corrupted and the file is > 105 bytes. The corrupt data file crashes the real time data system cvRTCache requiring it to restart. The program /ll/cv/src/scatter-ftp/afos/testawossize.c tests the file size and removes the corrupted file before it can get into /ll/cv/data/SFXfer and crash cvRTCache. 13. AUTO Bogussing Auto bogussing was modified so that only the Oakland 12Z sounding is used after 12Z. The files that controls this are /ll/ftp/pub/cv/data/SOUNDINGTIME.regular and /ll/ftp/pub/cv/data/SOUNDINGTIME.short, which are read by /ll/cv/src/scatterftp/afosmaker_nws_usg.tcl. The fourth entry in each of these SOUNDINGTIME files, Later sounding time, is set to 1858 compared to its old value of 1240 (see /ll/ftp/pub/cv/data/SOUNDINGTIME.long).