Вы находитесь на странице: 1из 61

Comprehensive Identification from FrEquency Responses

An interactive facility for system identification and verification

CIFER WINTEL INSTALLATION GUIDE AND RELEASE NOTES


(Version 4.1.00)

October, 2004 CasalCorp, USA

CASALCORP SOFTWARE LICENSING AGREEMENT Comprehensive Identification from FrEquency Responses (CIFER) RECITAL: CasalCorp HAS ACQUIRED FOR DISTRIBUTION, SUPPORT, AND REUSE UNIQUE ANALYSIS SOFTWARE FOR MODELING COMPLEX SYSTEM BEHAVIOR BASED UPON LIVE OR RECORDED DATA USING AT E C H N I Q U EC A L L E DS Y S T E MI D E N T I F I C A T I O N( S O F T WA R E ) . IMPORTANT READ CAREFULLY: This End-U s e r L i c e n s eA g r e e m e n t ( E U L A ) i s al e g a l a g r e e m e n t b e t w e e ny o u (either an individual or a single entity) and CasalCorp for the above identified software and associated documentation ( S o f t w a r e ) .B y i n s t a l l i n g , c o p y i n g , o r o t h e r w i s e u s i n g S o f t w a r e , y o u a g r e e t o b e b o u n d b y t h e t e r m s o f t h i s E U L A .I f y o u do not agree to the terms of this EULA, do not install or us eS o f t w a r e .C a s a l C o r p . ( L I C E N S O R ) I SWI L L I N GT O L I C E N S ES O F T WA R ET OY O U( L I C E N S E E ) O N L YI FY O UA C C E P TA L LO FT H ET E R MSI NT H EL I C E N S E AGREEMENT. IF YOU DO NOT AGREE TO THESE TERMS, LICENSOR WILL NOT LICENSE THIS SOFTWARE TO YOU, AND IN THAT CASE YOU SHOULD RETURN THIS PRODUCT PROMPTLY TO THE PLACE OF PURCHASE FOR A FULL REFUND. OWNERSHIP OF THE SOFTWARE: The Licensor software program identified above and the accompanying documentation are owned by Licensor and are protected by United States copyright laws, by laws of other nations, and by international treaties. Licensor owns rights to all copyright, trade secret, patent, and other proprietary rights in the Software. This License gives you no rights to such content. In addition, under no circumstances is reverse engineering of the software program, algorithms, or features/functions in whole or in part allowed. LICENSE: The Licensee is hereby granted a non-exclusive license to use the Software for up to and including the number of seats specified in the accompanying ordering agreement. Licensee may not: (a) permit other individuals to use the Software except under the terms listed herein; (b) use or permit others to use the Software for any commercial purpose; (c) modify, translate, reverse engineer, decompile, disassemble (except to the extent applicable laws specifically prohibit such restriction), or create derivative work based on the Software; (d) copy the Software (except) for back-up purposes); (e) rent, lease, transfer or otherwise transfer rights to the Software; or (f) remove any copyright, trademark or other proprietary notices or labels on the Software. DISCLAIMER OF WARRANTY: T h e s o f t w a r e i s l i c e n s e do na n A SI S b a s i s , w i t h o u t w a r r a n t yo f a n yk i n d , i n c l u d i n g without limitation the warranties of merchantability, fitness for a particular purpose and non-infringement. The entire risk as to the quality and performance of the Software is borne by Licensee. Should the Software prove defective, Licensee and not CasalCorp assumes the entire cost of any service and repair. In addition, the security mechanism implemented by the Software h a si n h e r e n t l i m i t a t i o n s , a n dL i c e n s e em u s t d e t e r m i n et h a t t h eS o f t w a r es u f f i c i e n t l ym e e t s L i c e n s e e s r e q u i r e m e n t s .T h i s disclaimer of warranty constitutes an essential part of the agreement. SOME STATES DO NOT ALLOW EXCLUSIONS OF AN IMPLIED WARRANTY, SO THIS DISCLAIMER MAY NOT APPLY TO LICENSEE. YOU MAY HAVE OTHER LEGAL RIGHTS THAT VARY FROM STATE TO STATE OR BY JURISDICTION. LIMITATION OF LIABILITY: UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, TORT, CONTRACT, OR OTHERWISE, SHALL CASALCORP OR ITS SUPPLIERS BE LIABLE TO LICENSEE OR ANY OTHER PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION OR ANY AND ALL OTHER COMMERICAL DAMAGES OR LOSSES. IN NO EVENT WILL CASALCORP BE LIABLE FOR ANY DAMAGES, EVEN IF CASALCORP SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES, OR FOR ANY CLAIM BY ANY OTHER PARTY. THE LIMITATION OF LIABILITY SHALL NOT APPLY FOR DEATH OR PERSONAL INJURY TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. FURTHERMORE, SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS LIMITATION AND EXCLUSION MAY NOT APPLY TO LICENSEE. TERMINATION: This License will terminate automatically if Licensee fails to comply with the limitations described above. On termination, Licensee must return all copies of the Software. EXPORT CONTROLS: None of the Software or underlying information or technology may be shipped, transferred, or exported into any country prohibited by the United States Export Administration Act or used for any purpose prohibited by the Act. U.S. GOVERNMENT RESTRICTED RIGHTS: Use, duplication or disclosure by the Government is subject to restrictions set forth in subparagraphs (a) through (d) of the Commercial Computer-Restricted Rights clause at FAR 52.227-19 when applicable, or in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.2277013. MISCELLANEOUS: This Agreement represents the complete agreement concerning this license between the parties and supersedes all prior agreements and representations between them. It may be amended only by a writing executed by both parties. If any provision of this Agreement is held to be unenforceable for any reason, such provision shall be reformed only to the extent necessary to make it enforceable.

Authors: Paul W. Salchak (CasalCorp) with major contributions and revisions by Dexter L. Hermstad (University of California) and Revision: 01 November, 2004. Original document by Gary Villere.with revisions by Lawrence E. Pierce (Raytheon ITSS).

ii

CIFER/WINTEL INSTALLATION GUIDE AND RELEASE NOTES


1. 2. 3. 4. 5. 6. 7. 8. Introduction System Requirements Installation Uninstalling CIFER The CIFER Environment and Directory Structure Running CIFER Using CIFER: Setting Up Databases and SIFDEF files Multiple-User CIFER Systems Appendix A: Manually Uninstalling CIFER Appendix B: Installing CIFER Patches Appendix C: Installing CIFER Training Database Appendix D: Validating the CIFER Installation Appendix E: Installing CIFER Extras for WINTEL Versions Appendix F: CIFER Run-Time Licensing on a WINTEL Platform Appendix G: Implementing a CIFER READMIS Library Appendix H: Working with CIFER Graphics Output 1 5 5 8 10 24 30 35 38 40 40 41 46 50 51 56

Authors: Paul W. Salchak (CasalCorp) with major contributions and revisions by Dexter L. Hermstad (University of California) and Revision: 01 November, 2004. Original document by Gary Villere.with revisions by Lawrence E. Pierce (Raytheon ITSS).

iii

CIFER - The Power to Model Your World

CIFER / WINTEL Installation Guide and Release Notes


Document Terms and Conditions
This material is restricted to your Company or Agency use only under the terms of purchase, and is for use only at your site. It may be installed for execution on one system at a time for individual or group presentation. Discs and supporting documents may be copied only upon prior approval. This restriction includes prohibition from use by contractors or outside agents unless their sole use will be at your site.

1. Introduction
This document describes the procedures necessary to install/uninstall CIFER on a Windows WINTEL (NT, W2K, XP) platform and to create an end-user database. It also contains information on minimum system requirements, directory structures, and procedures which you may use to verify that your CIFER package has been correctly installed. CIFER i s t h e w o r l d s p r e m i e r S y s t e mI d e n t i f i c a t i o n s o l u t i o n .T h e C I F E R s y s t e m , s h o w n in Figure 1-1, is a high-performance interactive and complete software facility used for a wide range of systems synthesis, optimization, and validation. While the software suite can be executed as a stand-alone tool, interface provisions are made for common external data sets on input (e.g., Data Acquisition standards, MATLAB) and plotting/reporting tools on output. The capability also exists for individual users to integrate to their custom or proprietary data sets through a published intermediate format and template called READMIS. This supports ASCII, telemetry-encoded, or even binary level data samples.
Frequency Response Identification (FRESPID) Multi-Input Conditioning (MISOSA) Frequency Response Time History Data Window Combination (COMPOSITE) Derivative Identification (DERIVID) State Space Verification (VERIFY) Plot and Report Utilities Frequency Response Fitting (NAVFIT)

Figure1-1: The Top-Level CIFER Product Organization

Model Matrices

Comprehensive Identification from FrEquency Responses (CIFER)


FRESPID - Frequency Response Identification MISOSA - Multi-Input Conditioning COMPOSITE - Multi-Window Averaging DERIVID- Generalized Stability Derivative Identification (from frequency responses) VERIFY-State Space Model Verification NAVFIT - Calculates Low-Order Transfer Function (from hi-order transfer function or frequency response data) Screen Subsystem - User Interface Utilities Suite - Special functions, plotting, conditioning, etc. DB Subsystem - Raw, Intermediate, Processed data and indexing

I nt h ep a s t ,C I F E R s primary use has been for high-performance aerodynamic systems/controls modeling, analysis, test, and optimization. It has also been uniquely proven for handling qualities and related analyses; particularly for frequency-domain intensive ADS-33 referenced specification and testing. Vibration analysis; flutter analysis; wind tunnel and flight test characterizations; and simulator development, validation, and optimization are just a few of its other past and continuing uses. Other high value CIFER adaptations are not based on how it

CasalCorp October 2004

IGRN-1

CIFER - The Power to Model Your World

has been used, though. Rather it is based on what CIFER does. For any measurable system excitation/response set (time or frequency domain), CIFER assesses the frequency content a n dp r o d u c e sa na c c u r a t em a t h e m a t i c a ld e s c r i p t i o no ft h a ts y s t e m sc o m p l e xd y n a m i c behaviors. With its strong basis in proven signal processing and analysis techniques, CIFER uses extend well beyond the flight/vehicle development and test regime. Figure 1-2 depicts the overall CIFER process. This is an empirically based technique, operating on measured excitation data (continuous or pulse) and system responses. For our purposes the system/subsystem/component can be of any size or domain, so long as it can be instrumented to collect the needed signal data.
Frequency Inputs (Stimulus/Events) Raw Response Collection Data Compatibility & State Estimation Multi-variable Spectral Analysis

The CIFER Frequency-domain system identification process


Initial Values

Transfer-Function Modeling

Conditioned Frequency-Responses & Partial Coherences Freq.-Response Identification Criterion

Identification Algorithm

Mathematical Model Dynamic Behavior Derivatives and Time Delays Sensitivity Analysis & Model Structure Determination

Dissimilar Reference Data not used in Identification

Verification

ANALYSIS APPLICATION (interactive, semi-automated, automated)


Figure 1-2 : C I F E R i s b a s e d n o t o n l y o ns o u n d s c i e n c e , b u t o ns o u n d e n g i n e e r i n g

Other important aspects of our use of CIFER s p r o c e s s i n g f eatures in our approach include: Tools and results exercised and proven over 12 years of use; recognized as world bestin-class for applications addressing real-world problems in real-world conditions Significant relevant data and experience can be supplemented with minimal additional effort and cost to any future program(s) Non-real-time and real-time analysis directly supported Directly relevant identification algorithms are highly exercised and tuned Flexible and interactive definition of identification model structures Non-Parametric Modeling directly supported no a priori assumptions are needed a b o u t t h e s y s t e m o r d e r , s t r u c t u r e , o r c o mp o s i t i o n Fully automated weighting function selection based on frequency-response accuracy Built-in and reliable parameter accuracy metrics provides added confidence in results over spectral region of interest and importance Integrated procedure for identification and model structure determination Time-domain verification of models, including identification of offsets and biases Available NOW for most current O S s , including WINTEL (NT, W2K, XP); Unix (IRIX, Solaris); and MAC (OS 9 and OS X) [MAC installation requires additional 3rd party software]

CasalCorp October 2004

IGRN-2

CIFER - The Power to Model Your World

1.1 Types of CIFER Installations


There are two versions of CIFER available for the WINTEL platform. The basic CIFER package contains all of the functionality needed to perform frequency response analysis of multiple input dynamical systems, and to produce transfer function models of those systems. The primary CIFER components included in this installation are FRESPID, MISOSA, COMPOSITE, and NAVFIT. In addition to these modules, the package contains an extensive suite of utilities which provide various database maintenance and data input/output capabilities. The full C I F E R P r o installation contains all of the functionality of basic CIFER, with the addition of state-space modeling capability as provided by the DERIVID and VERIFY m o d u l e s .T h e P r o p a c k a g ea l s oi n c l u d e sa ne x p a n d e ds u i t eo f utilities, which provide additional ancillary capabilities specifically required by the DERIVID and VERIFY components.

1.2 What Will be Installed


Regardless of which CIFER version1 you have purchased, the following components will be installed on your system:

CIFER.

The CIFER package itself is installed into a directory tree created explicitly for the CIFER executables, scripts, databases and other miscellaneous components. Also, in addition to the usual registry entries made by application installers, two system-wide environment variables will be created during the installation process. Initially, these variables ( c i f r o o t and c i f h o m e ) will both point to the root of the CIFER directory tree; usually CIFER_PRO. A more detailed description of the contents of these directories and purpose of these environment variables is provided in Section 5 of this IGRN. CIFER was ported to the WINTEL operating systems from the Unix platform, and many of its modules and scripts require elements of the Unix API. For this reason CIFER relies on the MKS Toolkit COE (a.k.a. NuTCRACKER COE). Your CIFER license includes an end-user license for the MKS Toolkit COE, which is automatically installed on your system by the CIFER installer. (If your system already has MKS Toolkit installed, then the CIFER installer will only update your installation as required for CIFER support.) If you already use NuTCRACKER, or if, for any other reason, you have files named p r o f i l e . k s h and/or e n v i r o n . k s h i n y o u r l o g o n d i r e c t o r y ( i . e . , %HOMEDRIVE%%HOMEPATH%) you should rename them. The CIFER installer must create its own versions of these files in your directory. After the installation is complete, you can merge them as necessary (see IGRN section 4.4 for information on this process). The installer will warn you if it detects these files in your logon directory and you will be given a chance to terminate the installation. p r o v i d e af u l l yo p e r a t i o n a l U n i xe mu l a t i o nt h a t c a nb e a c c e s s e dv i at h e C I F E Rs h e l l shortcut, the MS-D O Sc o m m a n d s h e l l , o r t h e R u n c o m m a n d i n t h e S t a r t m e n u . I n a d d i t i o n

Mortice Kern Systems (MKS) Toolkit COE (Client Operating Environment).

PLEASE NOTE THAT in addition to support for CIFER, with the MKS Toolkit COE we

Indeed, nothing in the remaining sections of these notes depends upon which version of CIFER is being installed, and for that reason, the distinction between the two packages will be dropped at this p o i n t . I n t h e r e m a i n d e r o f t h e d o c u m e n t C I F E R a n d C I F E R _ P r o w i l l b o t h b e r e f e r r e d t o a s C I F E R .

CasalCorp October 2004

IGRN-3

CIFER - The Power to Model Your World

to the Korn shell, you will have access to many of the common Unix commands and utilities (e.g., vi, grep, sed, awk, perl, etc.).

After reading and acknowledging acceptance of the license agreement, you will be asked to
enter your product serial number (prior to Version_4.1.00 only). Installation cannot proceed without a properly entered license key. Run-Time Keys will also be required to execute CIFER functionality following a successful installation. These are described in a later section of this Notes manual.

You will be given the opportunity to select a destination folder for the CIFER software.

If you elect to change the default location, please be careful to choose a path which does not contain embedded blanks. (Actually, you will be prohibited from doing so!) Environment (COE), this will pertain to the location of that portion of the environment which r e s i d e s o n t h e I n s t a l l a t i o n D r i v e a s s h o w n i n T a b l e 1 . You cannot change the location of t h e S y s t e mD r i v e c o m p o n e n t o f t h e o p e r a t i n ge n v i r o n m e n t .A l s o , t h e r e i s n or e q u i r e m e n t that CIFER and the NuTCRACKER COE reside on the same disk drive (or partition).

When you are asked to enter a destination folder for the NuTCRACKER Client Operating

Please note that the installation of the NuTCRACKER COE can run for several minutes and
that no progress indicator is displayed for portions of the procedure. Allow ample time for its completion before proceeding.

On

some earlier Windows XP systems, you may get a message that reads something like T h e o r d i n a l xyz c o u l d n o t b e l o c a t e d . D i s m i ss such messages by clicking OK.

1.3 What will not be Installed SCO XVision Server. CIFER relies on the X Window system for display of onscreen graphics. As a result, it is necessary for a local X Window server to be installed on your system. The SCO XVision X Window server can be installed from your 2nd NT CIFER distribution CD. If your system already has a local X server, such as cygwin-X, you may wish to use that software instead; CasalCorp cannot guarantee the outcome in all such cases. TeX. Some of the ancillary utilities that support DERIVID and VERIFY produce output which is designed to be typeset using the TeX typesetting program developed at Stanford University by Donald Knuth. MiKTeX is the WINTEL version of this utility set, and as of Version 4.1.00 is included as a part of the CIFER software system. Upon installation, this software will be deposited in the Extras/ subdirectory of the CIFER Home Directory (usually CIFER_Pro). This installation must be separately initiated, however. 1.4 Administrative Privileges Required for Installation
Because several of the CIFER s u p p o r t c o m p o n e n t s i n s t a l l Wi n d o w s s e r v i c e s , i t w i l l b e necessary to have administrative privilege to perform this installation.

CasalCorp October 2004

IGRN-4

CIFER - The Power to Model Your World

2. System Requirements
2.1 Operating System
CIFER and its supporting components should run on any NT4, W2K, or XP WINTEL workstation or server system. CIFER was initially developed on an NT workstation running Service Pack 3. No attempt has been made to test CIFER on Windows 95, 98, or ME and no representation is made as to CIFER s s u i t a b i l i t y f o r u s e o n s u c h s y s t e m s .

2.2 Processor and Memory


CIFER will execute efficiently on any current-generation processor (Pentium or later). At least 64 MB of random access memory (RAM) is recommended for systems running the CIFER package. 256MB or more is recommended for optimum performance, particularly if processing larger data sets.

2.3 Disk Storage


Disk requirements vary greatly, and are primarily driven by the size of the data sets that will be collected and processed using the CIFER software system. It is left to the user and their system administration to establish appropriate capacity for their particular requirements. If all defaults and installation options are exercised, the CIFER software system storage requirements include: CIFER_Pro, with all documentation, datasets: 435 MB NutCracker Operating Environment: 30 MB XVision Server and Utilities: 20 MB MiKTex (all possible options with full installation; not required for normal use): 640 MB Ghostview (PostScript viewer and report conditioning): 4 MB Browser Interactive Training Modules (Intro to SYSID, Case Studies, Labs): 760 MB

3. Installation
C I F E R f o r t h eWI N T E Lp l a t f o r mi sd i s t r i b u t e do na n a u t o r u n C D -ROM; installation should be automatically initiated when the CD is inserted into the CD-ROM drive. If the setup program does not automatically execute, you may manually initiate execution by double-clicking the icon for the setup.exe program which is located in the root directory of the CD. Once initiated, the setup program will guide you through a relatively standard installation sequence, most of which will not be discussed in detail here. The following bullet items cover the salient points in approximately the order in which they will be encountered during installation: Important note: if there is already a version of CIFER installed on your computer system, you should do the following prior to installing the newer version: make a backup copy of your CIFER_Pro folder (note: it is p r o b a b l y b e s t n o t t o u s e C I F E R i f y o u b a c k u p t o a f o l d e r on the same system), and then completely uninstall the older version of CIFER (please refer to section 3 for detailed uninstallation instructions). NOTE that it is not necessary to uninstall/reinstall XVision if the version on your system is current (compare version number of installed XVision with version number on XVision CD that came with your new version of CIFER). To determine the version number of your installed XVision, make sure that the

CasalCorp October 2004

IGRN-5

CIFER - The Power to Model Your World

XV i s i o ns e r v e r i s r u n n i n g( c h e c kf o r g r e e n X V i c o ni nWi n d o w s s t a t u s b a r ) ; i f i t i s n o t running, start it via Start->Programs->Vision->XVisionServer. Next, right-click on the green XV icon in the Windows status bar; in the pop-up menu, select Help->AboutXVision. Finally, observe the XVision version number that appears in the About XVision window. The setup program cannot be run from a network drive. If you do not have a local CD-ROM drive on your system, you may copy (via a network connection!) all of the files from the CDROM to a folder on a local hard drive. The top-l e v e l S e t u p . e x e p r o g r a mm a yt h e nb e launched directly from the local disk by double clicking. If you already use NuTCRACKER, or if, for any other reason, you have files named p r o f i l e . k s h and/or e n v i r o n . k s h i n y o u r l o g o n d i r e c t o r y ( i . e . , %HOMEDRIVE%%HOMEPATH%) you should rename them. The CIFER installer must create its own versions of these files in your directory. After the installation is complete, you can merge them as necessary (see section 5.4 below for information on this process). The installer will warn you if it detects these files in your logon directory and you will be given a chance to terminate the installation. In some rare situations, the installer may not be able to copy the profile and environment files to your logon directory. In these cases a warning will be issued during installation, and you can then manually rectify this failure after the installation is complete. To correct the problem simply copy2 the profile.ksh and environ.ksh files, which you will find in the folder %cifroot%\scripts\, to your logon directory. You will be given the opportunity to select a destination folder for the CIFER software. If you elect to change the default location, please be careful to choose a path which does not contain embedded blanks.3 (Actually, you will be prohibited from doing so!) When you are asked to enter a destination folder for the NuTCRACKER Client Operating Environment (COE), this will pertain to the location of that portion of the environment which r e s i d e s o nt h e I n s t a l l a t i o nD r i v e .Y o ucannot c h a n g e t h e l o c a t i o no f t h e S y s t e mD r i v e component of the operating environment. Also, there is no requirement that CIFER and the NuTCRACKER COE reside on the same disk drive (or partition). Please note that the installation of the NuTCRACKER COE is lengthy (running for several minutes) and that no progress indicator is displayed. The NuTCRACKER COE is a shared resource; it may support multiple end-user applications on a given platform. If your machine already has a NuTCRACKER COE installed, the installer will only add and/or update those components necessary to support the CIFER package. On some older Windows XP systems, you may get a message that reads something l i k e T h e ordinal xyz c o u l d n o t b e l o c a t e d . D i s m i ss such messages by clicking OK.

XVISION INSTALLATION and SETUP


CIFER requires a local X server for on-screen display of graphical output. The SCO XVision server is suitable and can be installed from your 2nd distribution CD (please read the subsequent bullets for details). However, if your machine already has a local X server installed, you may wish not to install the SCO server. If you elect not to install the SCO server, you will be responsible for insuring that CIFER can communicate with your server.

2 3

Do not move them! The originals must remain in the %cifroot%\scripts directory. CIFER originated from Unix-based software, which does not readily tolerate embedded blanks in directory paths.

CasalCorp October 2004

IGRN-6

CIFER - The Power to Model Your World

To install XVision, remove the 1st CD from the drive and insert the 2nd CD (labeled X V i s i o n ) .I f t h e X V i s i o ni n s t a l l e r d o e s n o t a p p e a r a f t e r a f e wm o m e n t s , d o u b l e -click on the My Computer desktop icon and then double-click on your CD-drive icon. If the XVision installer still does not appear you will see a listing of files on the CD; double-click on the i n s t a l l f i l e t o i n v o k e t h e X V i s i o n i n s t a l l e r . The XVision installer will ask what type of installation you wish to perform. A "Typical" installation is strongly recommended. For some versions of the SCO XVision server, installation can run for several minutes. During this time, you may not see a progress indicator and the installer may seem to disappear after updating the registry and telling you it is checking directory structure; please be patient and allow the installation to complete. When the installation is complete, you will be notified via a small dialog box (which will also ask if you wish to restart the computer; in order to avoid possible confusion, please choose No). After completing the CIFER installation and XVision installation it will be necessary to reboot your machine before attempting to use the software. In order to avoid possible confusion, please do the following before initiating a restart: close any windows (especially windows that are exploring or browsing the CIFER CD) and then remove the CD from the drive. In order for CIFER to be able to communicate with the XVision server, the TCP-Unix transport protocol must be enabled. You may check that this is the case by launching the Vision Communicationsapplet from the Control Panel (Figure 3-1a) . T h e n s e l e c t t h e T r a n s p o r t s t a b a n d l o o k f o r t h e T C P -U n i x t r a n s p o r t in the list box. If it is not enabled, select it in the list and click on the "Properties" button. In the property sheet (Figure 3-1b), select the "Enable this transport" radio button, then click "Apply". Finally, close the "Vision Communications" panel by clicking "OK". Note: For older WINTEL installations (e.g., Windows 2000) this procedure may cause
t h e p r o c e s s d b s e r v . e x e t oc r a s h( c l i c k O Ki nt h e e r r o r d i a l o gw i n d o w ) ; i f t h i s o c c u r s , y o uw i l l n e e dt o logout (or possibly even restart) to restore proper XVision operation (and enable CIFER screen plotting).

Figure 3-1a: Vision Communications Applet

Figure 3-1b: Transport Properties Panel

Before attempting to generate any screen plots in CIFER, please make sure that the X V i s i o nS e r v e r i s r u n n i n g .I f y o ud on o t s e e a g r e e n X V i c o ni nt h e s t a t u s b a r ( n e a r t h e clock), then the XVision Server is not running. It can be invoked from the Start menu (Start > Programs -> Vision ->X V i s i o nS e r v e r ) ; w a i t u n t i l t h eg r e e n X V i c o na p p e a r s i nt h e status bar before commencing with screen plots. If you would like the XVision Server to start when Windows starts, please refer to the next bullet.

CasalCorp October 2004

IGRN-7

CIFER - The Power to Model Your World

To setup the XVision Server to start when Windows starts, follow these steps: select Start -> Settings -> Control Panel (on Windows XP select Start -> Control Panel and be sure to select t h e c l a s s i c v i e w ) ; in the resulting window, double-click on the XVision Profiles icon; in the resulting window, click on the Global Settings tab, and then mark Load XVision at Windows Startup; then click Apply and OK. You will have to restart your PC and login again to verify that the Server is properly activated ( c h e c kf o r t h eg r e e n X V i c o ni nt h es t a t u s b a r a f t e r restarting and logging in). Please note that the first screen plot issued for any CIFER utility may take several seconds to appear. Subsequent screen plots (issued in the same session of the given CIFER utility) should appear more quickly. The CIFER d o c u m e n t a t i o n f i l e s a r e a v a i l a b l e a s Mi c r o s o f t Wo r d f i l e s a n d A d o b e P o r t a b l e D o c u m e n t F o r m a t ( P D F ) f i l e s .T h e P D Ff i l e s m a yb e v i e w e da n dp r i n t e dw i t hthe Adobe Acrobat Reader, which is a free program, available from the Adobe web site. As a convenience you will find a copy of the Adobe Acrobat Reader installer in an appropriately labeled folder. [For Version 4.1.00 or later, this will be found in the Extras subdirectory under the main CIFER directory; usually CIFER_PRO/Extras. Prior to Version 4.1.00 please use the separately distributed EXTRAS CD.]

4. Uninstalling CIFER
Before uninstalling CIFER, you should first BACKUP any data in the CIFER (or CIFER_Pro) folder. Specifically, you may want to backup the contents of the Data and Jobs subfolders. To be really safe, you could backup the entire CIFER (or CIFER_Pro) folder to make sure you capture everything (such as READMIS modules you developed, for example). If you b a c k u p t o a f o l d e r o n t h e s a m e s y s t e m , i t i s p r o b a b l y b e s t n o t t o u s e C I F E R i n t h e n a m e o f t he backup folder. CIFER m a yb eu n i n s t a l l e dv i at h e A d d / R e m o v eP r o g r a m s a p p l e t i nt h eC o n t r o l P a n e l . Select Start -> Settings -> Control Panel, or on XP systems Start -> Control Panel; on Windows X Ps y s t e m s b e s u r e t o s e l e c t t h e c l a s s i c v i e w ; in the Control Panel window, double click on the Add/Remove Programs icon; in the resulting Add/Remove Programs window, click on the Install/Uninstall tab (on XP or Windows 2000 systems click on Change or Remove Programs); select CIFER in the list of programs and then click on the Add/Remove button to initiate the uninstall (on Windows 2000 and Windows XP systems, click on the Remove button). Please note, however, that the CIFER uninstaller will not remove the NuTCRACKER COE or the XVision server. Because these components are shared resources, they cannot be automatically removed when CIFER is removed from your machine. However, if you wish to remove NuTCRACKER and/or the XVision server software, you may use the uninstallers provided for that purpose (using the aforementioned Add/Remove procedure). But, before doing so, you should make certain that these components are not required by other software on your system. In the case of the NuTCRACKER COE, this can be a c c o m p l i s h e db yc h e c k i n gt h e R e g i s t e r e dA p p l i c a t i o n s l i s t i nt h e I n f o r m a t i o n t a bo f t h e N u T C R A C K E RC o n t r o lP a n e la p p l e t sw i n d o w( Figure 4-1). Unfortunately, there is no correspondingly simple method for determining the number of clients on your system that may require the XVision server.

CasalCorp October 2004

IGRN-8

CIFER - The Power to Model Your World

Figure 4-1: NuTCRACKER Applet

F i n a l l y , t oe n s u r e p r o p e r u n i n s t a l l a t i o no f t h e p a c k a g e s c o m p o n e n t s , t h e s o f t w a r e s h o u l db e removed in the order shown below: CIFER SCO XVision Eclipse (see NOTE below) MKS Platform Components 7.x (or later) NOTE: if you are uninstalling CIFER so that you can install a newer version of CIFER, it may not be necessary to uninstall SCO XVision Eclipse (please refer to section 2 for details). If you are uninstalling an older version of CIFER (e.g., 3.60r3 dated May 2000) then these are the components you must remove (in the order shown): CIFER XVision NuTCRACKER Unix Utilities Plug-in, Deluxe NuTCRACKER Operating Environment Plug-in Note: to ensure that the list of software components displayed by the Add/Remove applet is updated, you may close and reopen the Add/Remove applet after uninstalling each component. Note: after uninstalling XVision, you should check to make sure it is really gone (see the previous note). If it is not gone, it may need to be uninstalled using the installation CD (you may o r m a y n o t s e e a w i n d o we n t i t l e d I n s t a l l a t i o n Me d i a N o t F o u n d ; i f y o u s e e i t , j u s t h i t i t s C a n c e l button). To uninstall from the CD, insert the CD that was used to install XVision. If a Setup dialog appears, hit the Cancel button (and then confirm that you want to quit by hitting the Yes button). Then uninstall XVision (using the Add/Remove Programs control panel). If you come to an XVision Setup window that has a Remove All button, click that button (and then click Yes to confirm); on Windows 2000 and Windows XP systems please consult us if you encounter this situation before making a choice. If you are asked whether to restart Windows, check the No button and click Next. After a few moments you may remove the CD from the drive.

CasalCorp October 2004

IGRN-9

CIFER - The Power to Model Your World

N o t e : d u r i n gs o m eu n i n s t a l l a t i o n s ad i a l o ge n t i t l e d R e m o v eS h a r e dF i l e ? m a ya p p e a r .I f y o us e e t h i s d i a l o g , c l i c kt h e Y e s T oA l l b u t t o na n dt h e nc o n f i r mb yh i t t i n gt h e Y e s b u t t o n ( o n Wi n d o w s X Pa n d Wi n d o w s 2 0 0 0 , c l i c k t h e N o T o A l l b u t t o n a n d c o n f i r m ) .At the end of t h eu n i n s t a l l a t i o ny o um a ys e eam e s s a g el i k e S o m ee l e m e n t sc o u l dn o t b er e m o v e d .T h e procedure for removing such elements is described in the note (about doing a really clean uninstall) below. N o t e : d u r i n g ( o r a f t e r ) s o m e u n i n s t a l l a t i o n s y o u m a y s e e a m e s s a g e T h e s y s t e mc a n n o t f i n d t h e f i l e s p e c i f i e d . J u s t c l i c k t h e O Kb u t t o n t o d i s m i s s s u c h m e s s a g e s . Note: after uninstalling all of the CIFER, XVision, and MKS (or NuTCRACKER) components you should restart the computer. Note: for a really clean uninstall, you should also search for files and/or folders that did not get uninstalled by the Add/Remove procedure and the restart. Such scouring will also increase the odds of a successful reinstallation (or installation of a more recent CIFER product). These instructions assume you did a Typical installation of CIFER to the C: disk. To initiate the search, open the Find applet (Start -> Find -> Files or Folders). In the resulting window, select the Name & Location tab. Specify C: in the Look In field. Make sure Include Subfolders is checked. Then enter a name (e.g., Vision) in the Named field and click Find Now. When the search is completed, you may wish to expand the window and also expand the In Folder portion of the list. You can select files and folders in the leftmost column of the list, and drag-and-drop them into the Recycle Bin. When you are done disposing of items, be sure to empty the Recycle Bin (rightmouse on it and select Empty Recycle Bin from the resulting pull-down menu). You should search on the following strings: Vision, SCO, Nut, and CIFER (on XP or 2000, just search on CIFER). You should remove the following files/folders if you uninstalled Xvision (skip this step on XP and 2000 do not remove any Vision or SCO files/folders): Vision (in C:\), Vision (in C:\Common Files), and Sco (in C:\WINNT\Profiles\administrator\Application Data). If you uninstalled MKS Toolkit then you should remove Nutcroot (generally in C:\) but do not remove Nutcroot on XP or 2000 systems. You may remove CIFER or CIFER_Pro (in C:\) but BACKUP the data therein before doing so (your CIFER databases, plots, job outputs, and other items may be there); if yo u b a c k u p t o a f o l d e r o n t h e s a m e s y s t e m , i t i s p r o b a b l y b e s t n o t t o u s e C I F E R i n the name of the backup folder. Note: It is possible, in rare circumstances, for the CIFER setup program to be unable to uninstall the CIFER package. In these situations the uninstaller may seem to run when activated from the Add/Remove panel, but later inspection will reveal that none of the files or shortcuts have been removed. Furthermore, it will then be impossible to reinstall CIFER using the original CD. To correct this problem, it is necessary to manually uninstall CIFER as described in Appendix A.

5. The CIFER Environment and Directory Structure


This section describes the organization of the CIFER file system that has been installed on your computer. In order to effectively utilize CIFER, you will have to have some familiarity with the structure of these directories, as well as the scripts, and environment settings upon which CIFER depends for execution. Much of the information contained in this section is detailed in nature, and need not be fully assimilated on a first reading. However, it is advisable for the new CIFER user to at least browse these pages in order to glean an overview of the topics contained therein.

CasalCorp October 2004

IGRN-10

CIFER - The Power to Model Your World

5.1 The Primary CIFER Environment Variables


During installation, two system-level environment variables are defined on your computer: cifroot and cifhome. Initially, these variables are defined with the same value, the path to the root of the CIFER directory tree, i.e., the path to the CIFER d e s t i n a t i o n f o l d e r , t h a t y o u provided during installation. (For information on situations in which these variables will have distinct values, see the next section.) These environment variables control every aspect of CIFER s o p e r a t i o n .T h e y a r e u s ed to establish the path to the target scripts executed by the CIFER shell shortcut (see the section on running CIFER, below), and in the definitions of many secondary CIFER environment variables which identify specific subfolders and objects within the CIFER directory tree. You may examine the primary CIFER environment variables by selecting the E n v i r o n m e n t t a bo f t h eS y s t e ma p p l e t i nt h eC o n t r o l P a n e l ( Figure 5-1). Note: on XP and 2 0 0 0s y s t e m s ,s e l e c tt h e A d v a n c e d t a bo ft h eS y s t e m a p p l e ta n d then click on the E n v i r o n m e n t b u t t o n ; t h e r e s u l t i n g w i n d o ww i l l l o o k s i m i l a r t o ( b u t n o t t h e s a m e a s ) F i g u r e 3 . Note that you will generally not see the definitions of the secondary CIFER environment variables in the System applet window. This is because those variables are only defined in the MKS Korn shell within which CIFER executes.

Figure 5-1: Environment Tab of the System Applet

5.2 Single and Multiple User CIFER Systems


Before discussing the structure of the CIFER directory tree, it is necessary to distinguish between two types of CIFER installations: single and multiple user. A single user CIFER installation is one in which only one person of the (perhaps) many people with accounts on the system, actually uses CIFER. On such a system, it is unnecessary to create separate user configurations and directory structures in order to segregate the operational

CasalCorp October 2004

IGRN-11

CIFER - The Power to Model Your World

environments of multiple users. In this case, the CIFER user can create databases and customized data input routines directly within the primary CIFER directory tree without fear of impacting others. However, on systems which support multiple CIFER users, it is necessary to duplicate, on a per user basis, certain portions of the primary CIFER directory structure in order to provide segregated areas for the storage of user data. In these installations, the cifroot environment variable will point to the primary CIFER directory (as created during installation), while the cifhome e n v i r o n m e n t v a r i a b l e w i l l p o i n t t o t h e r o o t o f e a c h i n d i v i d u a l u s e r s C I F E R directory t r e e .T h e s e p e ru s e r d i r e c t o r yt r e e sa r enot subtrees of the primary CIFER (CIFER_Pro) d i r e c t o r y , b u t r a t h e r , a r e u s u a l l y l o c a t e d i n t h e u s e r s o w n d i r e c t o r y . ( F o r s p e c i f i c i n s t r u c t i o n s o n creating these user directories, see section 8 below.)

5.3 The CIFER Root Directory Tree


This is the primary CIFER directory tree, as created by the installer. The path to the root of this tree is contained in the cifroot environment variable. Figure 5-2 illustrates the organization of this tree while Table 2 summarizes its content.

< CIFROOT >

A Adiscussion discussionof ofthe theformat formatand anddirectory directory structure Type time structureof of TypeOne One timehistory historyfiles files may maybe befound foundin inthe thedocument document Implementing (also ImplementingREADMIS READMIS (alsoincluded included in inthis thisIGRN IGRNas asan anAppendix AppendixG) G) Folder must be copied in whole when creating individual user accounts Folder must be copied in part when creating individual user accounts

Figure 5-2: CIFER Directory Structure

CasalCorp October 2004

IGRN-12

CIFER - The Power to Model Your World

Table 2: The CIFER Root Directory Tree <cifroot>\... bin data The root of the primary CIFER directory tree. Contains the CIFER executables and dynamically linkable libraries (DLLs). The data directory is the default location for SIFDEF files and the SIFDEF template file. It also contains various subdirectories which may, depending upon installation parameters, contain user created databases and sample data c o r r e s p o n d i n gt ot h e e x e r c i s e s i nt h eC I F E R class notes. The default location for CIFER time history d a t a .I f y o ue l e c t a t y p i c a l i n s t a l l a t i o n , s a m p l e t y p e o n e t i m e h i s t o r y d a t a f i l e s w i l l b e p l a c e d i n the subtree beneath this directory. You will find a detailed explanation of this directory structure and f i l en a m i n gc o n v e n t i o n sf o r t y p eo n e t i m e history data files in the I m p l e m e n t i n gR e a d m i s document. Contains sample simulation data files. This directory is the default target for newly created CIFER database files. A sample database, containing some of the classroom exercises for aircraft 703 (the XV-15), is placed in this directory during installation if you elect the t y p i c a l c o n f i g u r a t i o n . This directory provides specialized utilities, postrelease patches/updates, and 3rd party software that augment the performance of the baseline CIFER software system as installed. Contains shell and PERL scripts which are used during the execution of some CIFER utilities. Many of the scripts in this directory are useful in a general context; see in particular 'mkbackup', 'purgefiles', and 'vdiff'. The end-user scripts in this d i r e c t o r yh a v e m a n -p a g e s t y l ed o c u m e n t a t i o n embedded in the file. For the PERL scripts, this documentation can be accessed by typing a command of the form '<script_name> !' at the command prompt in the CIFER shell.

data\th

data\der_dat data\db

extras

scripts

CasalCorp October 2004

IGRN-13

CIFER - The Power to Model Your World

Table 2: (continued . . . ) source This is the root of the source subtree (although s o u r c ec o d e per se is not distributed with WINTEL CIFER!). The directories in this tree contain items such as CIFER screen definition files, NASADIG font files, and templates for c o n s t r u c t i n g c u s t o m i z e d R E A D MI S l i b r a r i e s . C o n t a i n sa h e a d e r f i l e w h i c hi su s e db ys o m e CIFER scripts when accessing user databases. This folder contains sample READMIS projects (for Visual C/C++ and DEC Visual Fortran) which can be used to construct customized time history data input libraries. For a detailed discussion of user data input libraries see the document I m p l e m e n t i n g R E A D MI S . Contains a folder of CIFER screen definition files. These files are utilized by the screen subsystem to generate the CIFER user interface. This subtree contains font and map resources for CIFER s c u s t o m i z e d N A S A D I G p l o t t i n g software. Contains CIFER documentation, primarily in PDF format. (These files require the Adobe Acrobat Viewer, which is distributed with CIFER.) The (initial) default location for storing the enduser output from the various CIFER utilities. The (initial) default location for storing end-user plot output. Contains CIFER User Interface (CIFUI) files. These files are present for compatibility with Unix versions of CIFER. In general, end-user adjustment of these files is not required on NT systems. Contains keymap files. These files are present for compatibility with Unix versions of CIFER.

source\cifincludes source\readmis

source\cifscreen

source\nasadig

documentation

jobs jobs\plots ui

ui\terminfo

CasalCorp October 2004

IGRN-14

CIFER - The Power to Model Your World

5.4 The CIFER P r o f i l e a n d E n v i r o n F i l es


In addition to the files contained in the primary CIFER directory tree described in the previous section, two critically important files will be copied to your disk during installation. The 4 i n s t a l l e r w i l l p l a c e t h e s e f i l e s i n y o u r l o g o n d i r e c t o r y during setup. (Or, if you are a secondary user, i.e., someone other than the user who installed CIFER, they will be copied to your logon d i r e c t o r y t h e f i r s t t i m e y o u r u n t h e p r o g r a m ) . T h e f i l e s , c o l l e c t i v e l y k n o w n a s s h e l l e n v i r o n m e n t f i l e s , a r en a m e d profile.ksh and environ.ksh; they are required in order for the CIFER shell to launch properly. T h e C I F E Rs h e l l i s r e a l l ya nMK SK o r ns h e l l w i t h i nw h i c ht h e C I F E R script executes. As with all Korn and Bourne shells, the CIFER shell will read the user s profile.ksh file at startup, if one can be found in the logon directory. Among other things, the CIFER profile.ksh defines several aliases and functions which may be of general use when working within the shell after a CIFER session. (You may wish to peruse the file to become familiar with these shortcuts if you intend to make use of the shell environment.) However, the most important segment of the profile file will be found near t h ee n d , i nt h es e c t i o n s l a b e l e d C I F E RE n v i r o n m e n t a n d C I F E RA u t o l a u n c h .T h ef i r s t o f these segments defines various CIFER e n v i r o n m e n t v a r i a b l e sb y s o u r c e -i n g t h ea n c i l l a r y cifrc.ksh file; the second segment actually launches CIFER. I n a s h e l l e n v i r o n m e n t , t h e p r o f i l e f i l e i s r e a d o n l y o n c e , w h e n t h e l o g i n s h e l l is initiated. If there are initializations which must be performed every time a shell is launched (e.g., whenever a non-login shell is spawned), then those initializations must be placed in the environ.ksh file, since it is processed each time a shell launches. In the case of CIFER, the environ.ksh file is primarily used to provide (redundant) definitions of two important CIFER environment variables in order to ensure their availability in all child processes. Merging Shell Environment Files. If you are one of the class of users who, for whatever reason, has a pre-existing set of environment files (i.e., a profile.ksh and/or environ.ksh file) in your logon directory, you will be warned, prior to installation, to save these files in order to preclude their being overwritten during the installation process. In general, you will then want to merge these files once the installation has completed, per the guidelines in this section. If your environment files originated from the installation of MKS NuTCRACKER with another software product, or as part of a software development environment, and if you have not customized these files in any way, then you may be able to safely discard them. You should examine the original files, looking for remarks to the effect tha t t h e f i l e i s a s a m p l e .U s u a l l y the files installed by NuTCRACKER are for illustrative purposes and do not perform any critically necessary operations (or, at least, any operations that are not also performed in the default CIFER-installed files). On the other hand, if you have customized your existing files or, if they were part of another software installation, then you will probably want to merge them with CIFER s f i l e s .V e r y probably this can be accomplished without conflicts arising, but it will be necessary to examine the files in some detail. The only items which are critical for CIFER so p e r a t i o na r et h e following: The profile.ksh f i l em u s t s o u r c e cifrc.ksh, which is located in the ${cifhome}/scripts directory.

Y o u r l o g o n d i r e c t o r yi sd e f i n e db yac o n c a t e n a t i o no ft h es y s t e m e n v i r o n m e n tv a r i a b l e s %HOMEDRIVE% and %HOMEPATH%. You may determine your logon directory by typing the command e c h o% H O M E D R I V E % % H O M E P A T H % in a DOS shell. IGRN-15

CasalCorp October 2004

CIFER - The Power to Model Your World

The HASHBANG environment variable (exported from environ.ksh) must not be unset. (This variable is initially defined in the cifrc.cmd script; see the next section.) The TK_PERL_USE_COMSPEC environment variable must be unset. (This is done in the CIFER environ.ksh file). (This variable is unset in the cifrc.cmd script; see the next section.) Note that it is not actually necessary for the profile.ksh file to launch CIFER. Removing this segment from the merged profile file (or equivalently, unsetting the CIFAUTO-LAUNCH variable) would mean only that CIFER s h e l l u s e r s w o u l dh a v e t om a n u a l l ye n t e r a cifer command after shell startup. Such a compromise might be necessary if the resultant profile.ksh file will be required to support more than one software environment. Finally, a word about so-c a l l e d s e c o n d a r y u s e r s ( s e e t h e d e f i n i t i o n a t t h e b e g i n n i n g o f t h i s section) who have pre-existing environment files in their logon directories. Normally, when a secondary user first starts a CIFER shell, the CIFER environment files will be copied to his logon directory. However, if that user has pre-existing environment files in his directory, the CIFER shell will not overwrite them. Then, because the user does not have the proper environment files, the shell will fail to launch CIFER; furthermore, the user will not be able to manually launch CIFER f r o mw i t h i nt h es h e l l , b e c a u s et h e ciferc o m m a n d( a l i a s ) w i l l n o t have been defined. The solution to this problem is, of course, to merge the environment files5 in the manner described above.

5.5 CIFER sS e c o n d a r yE n v i r o n me n t V a r i a b l e s
During the CIFER shell startup process, a l a r g en u m b e ro f s e c o n d a r y C I F E R environment variables are defined. In this section we will catalog the most important of them, indicating which ones might be modified by the user and to what purpose. The CIFER Startup Process. The CIFER startup process is illustrated in Figure 5-3. It will be noted that a large number of script files (six) are involved in the sequence, some of which have already been described in this document. Shell startup begins when the user doubleclicks the CIFER shell shortcut on the desk top, or selects the shortcut from the START>Programs> CIFER>CIFER Shell menu item6. E x a m i n i n g t h e T a r g e t f i e l d o f t h e S h o r t c u t t a b i n t h e p r o p e r t ies panel of the shortcut will reveal the command used to initiate this sequence:
%SystemRoot%\system32\cmd.exe /c %cifhome%\scripts\cifrc.cmd && %NUTCROOT%\mksnt\sh.exe L

The cifrc.cmd file, located in the scripts directory beneath %cifhome% is executed before the MKS Korn shell (sh.exe) is launched. This file defines the most important CIFER secondary environment variables and makes them available within the WINTEL command shell environment7. These variables are then automatically imported into the MKS Korn shell environment when it launches.
5

O r i g i n a l v e r s i o n s o f C I F E R s e n v i r o n m e n t f i l e s w i l l b ef o u n di nt h escripts directory beneath %cifroot%. This section is designed to provide technical information on the mechanics o f C I F E R s o p e r a t i o n . F o r a g e n e r a l i n t r o d u c t i o n t o r u n n i n g C I F E R a n d c u s t o m i z i n g i t s s h e l l i n t e r f a c e , s e e s e c t i o n 5 . F o r s e c o n d a r y C I F E R u s e r s , t h e cifrc.cmd script has another important function. If a user does not have copies of the CIFER profile.ksh and environ.ksh files in his logon directory, cifrc.cmd will copy these files to the logon directory, thereby allowing the subsequent launch of the Korn shell to proceed without failing. IGRN-16

CasalCorp October 2004

CIFER - The Power to Model Your World

CIFER Shell Shortcut

WINTEL Command Shell (DOS Shell)


2

MKS Korn Shell

cifrc.cmd (Most of the secondary CIFER environment variables are defined in the cifrc.cmd script)

profile.ksh

cifrc.ksh

Process Boundary
(The CIFER shell does not operate in a separate process space but many of it components do) s

cifer
7 8

Script File Shortcut (prog. Launch)


(Digit indicates processing order)

Shell Shortcut Script File


SIFDEF CIFUI

Figure 5-3: The CIFER Shell Startup Process

S i n c e t h e MK SK o r n s h e l l l a u n c h e s a s a l o g i n s h e l l ( n o t e t h e -L s w i t c h ) , i t w i l l a t t e m p t t o read the profile.ksh file located in the u s e r s l o g o nd i r e c t o r y .A s d e s c r i b e d i nt h e p r e v i o u s section, the special CIFER profile file further prepares the Korn shell by defining certain f u n c t i o n s a n da l i a s e s .I t d o e s t h i s , i np a r t , b y s o u r c e -i n g t h ecifrc.ksh file, a Korn shell counterpart to the cifrc.cmd file. Among other things, the cifrc.ksh file m a k e s c e r t a i na d j u s t m e n t s t ot h e s h e l l s PATH v a r i a b l ea n dd e f i n e s t h e ciferc o m m a n dw h i c ha l l o w s u s e r s t o( r e ) l a u n c hC I F E Rf r o mt h e s h e l l s c o m m a n d p r o m p t . Once the cifrc.ksh file has been executed, the profile.ksh script actually launches8 CIFER by executing the cifer script located in the %cifroot%\ scripts directory. (The careful reader will have noted that some scripts in this sequence are launched from the %cifroot% directory, while others are launched from the %cifhome% directory. The reasons for these differences are more clear when multiple user systems are discussed in section seven.) The cifer script, in turn, immediately sources the SIFDEF and CIFUI scripts. These scripts define additional environment variables which pertain to the particular dataset in use 9 during the CIFER s e s s i o na n dt ot h e t e r m i n a l c h a r a c t e r i s t i c s o f t h e u s e r s s y s t e m . These two script files are maintained by various components of the CIFER utility package, and, with these utilities, can be changed by the user during the course of a session.
8

CIFER will be launched automatically from the profile.ksh file only if the CIFAUTOLAUNCH variable (defined in cifrc.cmd) is set to a non-zero length string. This latter group of variables, involving terminal characteristics, is retained for compatibility with the Unix versions of CIFER. When working with the MKS NuTCRACKER console interface, it is unnecessary to adjust terminal characteristics. IGRN-17

CasalCorp October 2004

CIFER - The Power to Model Your World

In all cases, the script files described in this section are heavily commented and may be viewed using any simple text editor (e.g., WordPad). However, the user is advised not to modify these files without careful consideration, and under no circumstances should the end user ever modify the SIFDEF and CIFUI files directly, since these files are maintained by CIFER utilities. The Secondary Environment Variables. The bulk of CIFER ss e c o n d a r ye n v i r o n ment variables are defined in three of the startup script files: cifrc.cmd, SIFDEF, and CIFUI. Table 3, below, describes these environment variables; it is segmented by file. Table 3a describes the environment variables declared in cifrc.cmd, Table 3b describes those declared in the SIFDEF file, and Table 3c describes the variables defined in the CIFUI file. Figure 5-4 gives a schematic overview of the interrelationships among these files and variables. As has been noted, SIFDEF and CIFUI files are never edited directly by the end user. Instead, they are maintained by various CIFER utilities, and, in order to better understand some of the terminology used in discussing these files and the variables which they define, it will be useful to give an overview of this maintenance process. For brevity, we will discuss only the SIFDEF files in what follows; the CIFUI files are handled in a similar manner10. In order to launch, CIFER r e q u i r e s t h a t t h e r e b e a f i l e n a m e d SIFDEF i nt h e directory pointed to by the %DEFLOC% environment variable ($DEFLOC within the Korn shell). This file is called the active SIFDEF file. The active SIFDEF file must have a parent SIFDEF file, which is named SIFDEF.<ARCRFT>.<ANALYSIS>. Here <ARCRFT> and <ANALYSIS> represent file name extensions formed from the definitions of the ARCRFT and ANALYSIS environment variables. These variables are defined in the SIFDEF file itself. Wh e n e v e r t h e C h a n g e C I F E RD e f a u l t s u t i l i t yu n d e r C I F E Rm e n ui t e m1 0i s u s e dt oedit the SIFDEF file, it is the active SIFDEF file which is being modified. Then, when the default ANALYSIS value is accepted, the active SIFDEF file is copied over its parent SIFDEF file, thereby preserving the modifications. The user may enter a new ANALYSIS value instead, thereby creating a new parent SIFDEF file. Whenever the user s e l e c t s a SIFDEF file by specifying the <ARCRFT>.<ANALYSIS> string of a (parent) SIFDEF file other than those of the currently active SIFDEF, the contents of that parent file will be copied over the currently active SIFDEF file, making that ARCRFT/ ANALYSIS active.

10

On the WINTEL platform, the utility (item 91) for modifying the CIFUI file is simpler than in the Unix version. Three standard CIFUI files for three screen plotting modes are accessible via a prompt. IGRN-18

CasalCorp October 2004

CIFER - The Power to Model Your World

Table 3a: CIFER S e c o n d a r y E n v i r o n me n t V a r i a b l e s $cifhome/scripts/cifrc.cmd DEFLOC Default: %cifhome%\data DEFLOC points to the directory which contains t h eu s e r s SIFDEF files. This directory will contain a SIFDEF file for each o f t h e u s e r s C I F E Rd a t a b a s e s .S I F D E Ff i l e s , i nt u r n , t e l l C I F E R where to find the databases themselves, together with other associated files and directories (see Table 3b and Figure 6). UILOC Default: %cifroot%\ui U I L O Cp o i n t s t ot h e d i r e c t o r y c o n t a i n i n g t h e u s e r s C I F E RU s e r I n t e r f a c e ( C I F U I ) f i l e s .T h e r e i s o n e C I F U I f i l e f o r e a c ho f t h e three screen plotting options. Unlike for the Unix version, the keyboard information is unchangeable. SIFLOC Default: %cifroot%\bin SIFLOC points to the directory containing the CIFER executables. In some situations, when creating a secondary user account, it may be desirable to replace %cifroot% with %cifhome%, thereby allowing the secondary user to run from a customized copy of the CIFER executables located in the bin directory beneath his private CIFER root, %cifhome%. cifsrc Default: %cifroot%\source cifsrc points to the CIFER source directory. This variable is included for internal use and should not be modified. cifbin Default: %cifroot%\bin cifbin points to the CIFER binaries directory. This variable is included for internal use and should not be modified.

CasalCorp October 2004

IGRN-19

CIFER - The Power to Model Your World

Table 3a: CIFER S e c o n d a r y E n v i r o n me n t V a r i a b l e s (continued ...) $cifhome/scripts/cifrc.cmd cifinc Default: %cifroot%\source\includes cifinc points to the CIFER include files directory. This variable is included for internal use and should not be modified. cifscripts Default: %cifroot%\scripts cifscripts points to the CIFER script files directory. This variable is included for internal use and should not be modified. (NOTE: those scripts which are duplicated during the process of creating multiple user systems, are always referenced via the path %cifhome%\ scripts. Hence, modifying %cifhome% is sufficient to ensure that the user-specific versions will be found.) LOGSCR Default: %cifroot%\source\ cifscreen\def LOGSCR points to the CIFER screen definition files directory. This variable is included for internal use and should not be modified. NASAFONT Default: %cifroot%\source\ nasadig62b\font\NASAFNTS NASAFONT points to the NASADIG font file. This variable is included for internal use and should not be modified. NASAMAPL Default: %cifroot%\source\ nasadig62b\map\WORLDCIL NASAMAPL points to the NASADIG map file. This variable is included for internal use and should not be modified. PERL Default: %NUTCROOT%\mksnt\perl.exe PERL points to the MKS PERL executable. This variable is included for internal use and should not be modified. HASHBANG Default: 1 HASHBANG e n a b l e sr e c o g n i t i o no f s h a b a n g l i n e si nMK Ss h e l l scripts. CIFER will fail if HASHBANG is not set. TK_PERL_USE_CO MSPEC Default: unset If set, TK_PERL_USE_COMSPEC instructs the MKS Toolkit PERL to run sub-processes in the NT command shell rather than in an MKS shell. This variable must always be unset, otherwise CIFER will fail. Default: 1 When set, CIFAUTOLAUNCH causes the CIFER profile.ksh file to auto-launch CIFER at shell startup.

CIFAUTOLAUNCH

CasalCorp October 2004

IGRN-20

CIFER - The Power to Model Your World

Table 3b: CIFER S e c o n d a r y E n v i r o n me n t V a r i a b l e s $DEFLOC ARCRFT / SIFDEF D e f a u l t : d e f a u l t A R C R F Ts p e c i f i e s t h e n a m e o f t h e a i r c r a f t t h a t w i l l b e u s e dd u r i n gt h i s CIFER session. This is also the f i l e n a m e portion of the CIFER database file name. It is restricted to a maximum of eight characters and can be modified when a new aircraft database is created or when a new SIFDEF file is selected. (See CIFER menu item number 10, and the section on S e t t i n g u p D a t a b a s e s a n d S I F D E FF i l e s i n t h i s g u i de.) D e f a u l t : d e f a u l t ANALYSIS is used by CIFER to distinguish among different analyses of the same aircraft. It will be initialized to 'default' when a new aircraft database is created and can be modified after CIFER utility number 11, is C h a n g eC I F E RD e f a u l t s , i su s e d .A m a x i m u mo f e i g h t c h a r a c t e r s a l l o w e d . ( S e et h es e c t i o no n S e t t i n gu pD a t a b a s e s a n dS I F D E FF i l e s i n this guide.) Default: $cifhome/data/db The directory path to the CIFER database for this aircraft. This variable and all of the remaining variables in Table 3b can be modified using CIFER u t i l i t y n u m b e r 1 1 , C h a n g e C I F E RD e f a u l t s . Default: $cifhome/data/th T h ed i r e c t o r yp a t ht ot h et i m eh i s t o r yd a t a .( N O T E : C I F E R T y p eO n e time history files require special directory structures and file naming conventions. Please see the I m p l e m e n t i n gR E A D MI S document for details.) PLTDIR Default: $cifhome/jobs/plots The path to a catchall directory for plot output files. This directory can be declared separately for each ARCRFT/ANALYSIS pair. BATDIR Default: $cifhome/jobs The path to a catchall directory for background job scripts and output files. (CIFER utilities which deposit files in the 'tfdata' directory will attempt to create that directory as a sub-directory of this batch directory.) This directory can be declared separately for each ARCRFT/ANALYSIS pair. Default: RAD Specifies the user's choice of frequency units. (CIFER performs all internal calculations in radians per second; however, the user may select screen displays in Hz by setting this variable accordingly.)

ANALYSIS

LOGDEF

THLOC

FREQ_UNITS

Valid characters include alpha-numeric characters, dashes, and underscores; blanks are not allowed. IGRN-21

CasalCorp October 2004

CIFER - The Power to Model Your World

Table 3c: CIFER S e c o n d a r y E n v i r o n me n t V a r i a b l e s $UILOC / CIFUI

CIFUI

Default: nutc_default The CIFUI environment variable identifies the parent CIFUI file. This file is named CIFUI.<CIFUI>, where <CIFUI> is an extension formed from the definition of the %CIFUI% environment variable.

CIFERTERM

Default: unset CIFERTERM is the name of the terminal which is used during CIFER execution. This becomes the entry into the TERMINFO capabilities database. If it is undefined, the system default terminal type is used.

TERMINAL

Default: X11 The TERMINAL environment variable contains a code which tells the CIFER graphics routines what type of graphics terminal your system supports or, more precisely, what type of graphics terminal your e m u l a t o r e m u l a t e s . N Tp l a t f o r m s s h o u l d a l w a y s u s e X 1 1 e m u l a t i o n .

EMULATION

Default: unset The EMULATION variable provides CIFER with the name of your graphics emulation software. On NT platforms, this variable should be unset. (i.e., undefined).

DOFORK

Default: no The DOFORK variable indicates whether plots should be spawned in a separate process. It is used only when TERMINAL is "X11". On NT platforms, this variable can be y e s or n o .

STICKY

Default: no The STICKY variable indicates whether or not plots remain on the screen after a carriage return is depressed while focus is in the plot window. It is used only when TERMINAL is "X11". On NT platforms, this variable can be y e s or n o .

CasalCorp October 2004

IGRN-22

CIFER - The Power to Model Your World


DEFLOC points to the directory containing the active SIFDEF file. (This file is always named SIFDEF , without any extensions.) The SIFDEF file defines two environment variables; ARCRFT and ANALYSIS, which are used to identify the active database files and the parent file of the active SIFDEF file.

%cifhome%\scripts\cifrc.cmd

(DEFOC)

(U ILO C)

(LOGDEF) SIFDEF

SIFLOC points to the directory containing the CIFER executables. Normally this is the %cifroot%\bin directory, but in some circumstances, such as when a user has implemented a special READMIS.DLL, this may be the %cifhome%\bin directory.

CasalCorp October 2004

(SIFLOC)

(TH

LO

C)

SIFDEF.<ARCRFT><ANALYSIS> (parent SIFDEF file)


(PLTDIR)

<ARCRFT>.idx <ARCRFT>.dat (active database files)

(B

DI AT

R)

CIFUI

Time History Data The directories identified by the BATDIR and PLTDIR environment variables will receive, respectively, the output and plot files from CIFER jobs run while this SIFDEF is active. NOTE: CIFER Type One time history data requires special directory and file naming conventions. See Implementing READMIS in Appendix G.

Figure 5-4: Relationships Among CIFER Environment Variables

IGRN-23

6. Running CIFER
Once you have completed the installation of the CIFER package, made any necessary manual adjustments to the XVision transport protocols (see Section 3), and rebooted your machine, you should be able to invoke CIFER either by double-clicking the shortcut that the installer placed on your desktop11, or by selecting the START>Programs> Cifer>CIFER Shell menu item (Figure 6-1). Note that two different methods for starting CIFER may give you slightly different CIFER windows with different properties (e.g., a CIFER window started via the desktop shortcut may be physically shorter than a CIFER window started from the Start menu).

Figure 6-1: Starting the CIFER Shell

When you launch CIFER, you are actually starting an MKS Korn shell which then ultimately executes the main CIFER script, after first running several intermediate scripts to setup CIFER s e n v i r o n m e n t .T h i s s t a r t u pp r o c e s s w a s d i s c u ssed at some length in section 5.5 in connection with CIFER s e n v i r o n m e n t v a r i a b l e s ; f o r n o w , i t i s s u f f i c i e n t t o n o t e t h a t y o u w i l l see a screen similar to the one shown in Figure 6-2 t h e C I F E R s p l a s h s c r e e n .D e p r e s s i n g c a r r i a g e r e t u r nw i l l t h e nt a k e y o ut oC I F E R s m a i nm e n us c r e e n( Figure 6-3), from which you 12 may selectively execute individual CIFER utilities .

Figure 6-2: CIFER Splash Screen

Figure 6-3: CIFER Main Menu

11 12

If you do not wish to have the CIFER shortcut on your desktop, it may be safely deleted. I ti sn o tt h ep u r p o s eo ft h i sd o c u m e n tt od i s c u s si nd e t a i lt h eo p e r a t i o no fC I F E R sv a r i o u s components. For an introduction to these programs please see volumes 1 and 2 of the CIFER Class Notes. IGRN-24

CasalCorp October 2004

When you have finished your CIFER s e s s i o n , y o uw i l l f i n dy o u rc u r s o ra t t h e i n p u t p r o m p t o f t h e C I F E R main menu screen. To exit CIFER, simply enter a carriage return and you will be returned to the Korn shell from which CIFER was initiated. This is a useful environment from which to manipulate CIFER output files, re-launch CIFER, or perform any other tasks for which you find a Unix-like command line interface well suited. You will find that most Unix t o o l sa n de d i t o r sa r ea v a i l a b l e , a n dt h a t f e a t u r e ss u c ha s p i p e s a n db a c k g r o u n d processing work as you would expect. Furthermore, all CIFER environment variables are defined and available for use, making manipulations of CIFER directories and files quite straightforward. To restart CIFER from within the shell, type cifer(lower case) at the command prompt. To exit the shell entirely, type any one of exit , logout , or bye .

6.1

Customizing the CIFER Shell Window

As they are installed, the CIFER shortcuts present a somewhat vanilla interface in which i m p o r t a n t f e a t u r e s s u c ha s c u t a n dp a s t e a n ds c r o l l i n ga r e d i s a b l e d .Y o uw i l l a l m o s t c e r t a i n l y find your CIFER user experience more productive if you take a few moments to enable some of these features. Note, however, that the operations described in this section will require administrative privilege, since you will be enabling these features for all users of these systemwide shortcuts. Begin by launching an instance of the CIFER shell from either the desktop or START menu s h o r t c u t s .R i g h t c l i c ko nt h et i t l eb a r o f t h em e n ua n ds e l e c t P r o p e r t i e s .N e x t s e l ect the O p t i o n s t a b ( Figure 6-4) . T h e n , c h e c k t h e b o x l a b e l e d Q u i c k E d i t Mo d e .

Figure 6-4 : E n a b l i n g Q u i c k E d i t Mo d e

With this mode enabled you will be able to capture screen text into the paste buffer by depressing the left mouse button and dragging across the desired text to highlight it, and then releasing the left mouse button to select the highlighted text. Next you can capture the selected text by right-clicking. Captured text may be subsequently inserted at the cursor position by rightclicking a second time. This maneuver is very useful for duplicating complicated CIFER frequency response names!

CasalCorp October 2004

IGRN-25

T oe n a b l es c r o l l i n g , s e l e c t t h e L a y o u t t a bo f t h eP r o p e r t i e sp a n e l (Figure 6-5). In the S c r e e nB u f f e rS i z e p a n e , e n t e ras u i t a b l yl a r g ev a l u e( e . g . , 1 0 0 0l i n e s )f o rt h e H e i g h t ; h o w e v e r , l e a v e t h e Wi d t h s e t t o 8 0 c o l u m n s . N e x t , i n t h e Wi n d o wS i z e p a n e , e n t e r a n u m b e r of lines sufficient to give the shell window the screen coverage you would like; again, do not alter the width of the window. There is one remaining customization which you may wish to consider when setting up your CIFER shortcuts. As it is installed, the CIFER shell will always launch with white (actually grayish) lettering displayed on a black background. This arrangement can be modified to any desired combination (e.g., black lettering on a white background) by making suitable adjustments i n t h e C o l o r s t a b o f t h e p r o p e r t y p a n e l ( Figure 6-6).

Figure 6-5: Enabling Scrolling in the CIFER Shell

Figure 6-6: Setting CIFER Shell Background and Foreground Colors CasalCorp October 2004 IGRN-26

F i n a l l y , c l i c k O K t o c l o s e t h e p r o p e r t y p a n e l . Wh e n y o u d o s o , a d i a l o g w i l l a p p e a r a s k i n g if you wish to apply the changes only to the current window, or to the shortcut that launched the window. You should select the latter in order to have the changes take effect for all subsequent launches of CIFER from that shortcut. (You should then launch CIFER from the other of the two shortcuts installed by the setup, and repeat these steps to establish the proper defaults for it as well.)

6.2 The CIFER Keyboard Interface


Many CIFER utilities interact with the user via a series of data entry screens that make use of cursor addressing. Each screen contains a number of data input fields interspersed with descriptive text. The user can navigate from field to field within a screen using combinations of the arrow, tab and return k e y s .O n c e t h e d a t a c o n t e n t o f a s c r e e n s f i e l d s i s s a t i s f a c t o r y , t h e user can proceed to the next screen by depressing the F1 key. CIFER does not make use of the c o m p u t e r s p o i n t i n g d e v i c e ( m o u s e ) . Table 4a summarizes the functions13 (on a typical keyboard) of the various navigational keys used by CIFER; Data Entry. Once the user has navigated to a field, the procedure for data entry is straightforward. In general, all printable characters will appear in the field as they are typed. Please note that CIFER data entry is case sensitive, and many CIFER inputs must be entered in upper case. In addition to the standard numeric keys, on most keyboards the numerical keypad can als o b e u s e d f o r d a t a e n t r y p r o v i d e d t h e N u mL o c k h a s b e e n s e t . The double-w i d t h B a c k s p a c e k e yl o c a t e da b o v et h er e t u r nk e y( s e eF i g u r e6-7) is the character rubout key; it will delete the character immediately to the left of the cursor. The small D e l e t e k e y , l o c a t e d i n t h e s i x -key cluster above the arrow keys, can be used to delete the entire contents of a field. NOTE: A very important change was implemented for CIFER Version NT12. Except in the extended editing features described immediately below, the first keystroke in a field will wipe out that field. This is the behavior of the Unix version, and some users who were familiar with it requested that it be implemented in the Windows version also. Extended Editing Features. One CIFER utility, the Q P L O T p r o g r a m( u t i l i t y1 9 ) , h a s a n optional data entry protocol which is designed to provide additional editing features in order to facilitate the entry of long frequency response names. These features are only available in screen one of QPLOT. In this situation, all of the descriptions given in Table 4a remain valid, but the additional capabilities described in Table 4b also apply.

13

Users familiar with the Unix version of CIFER will recall that keyboard mappings could be adjusted in order to compensate for the vagaries of the many keyboard types encountered on those platforms. This type of customization is not required on Windows platforms, since the mappings provided by NuTCRACKER are consistent across all systems. IGRN-27

CasalCorp October 2004

Table 4a: CIFER Keyboard Navigation and Data Entry tab, right arrow left arrow return, enter, down arrow up arrow Move data entry focus right by one field. If currently in right-most field of a screen row, then wrap to left-most field in the next screen row. Move data entry focus left by one field. If currently in left-most field of a screen row, then wrap to right-most field in the previous screen row. Move data entry focus down to the most closely (vertically) aligned field in the next row. When issued from the last line of the screen, the focus will wrap to the top of the screen. Move data entry focus up to the most closely (vertically) aligned field in the previous row. When issued from the top line of the screen, the focus will wrap to the bottom of the screen. Appears in the data field as typed (case sensitive).

any printing character backspace del F1 F2

Deletes the character to the left of the cursor. Deletes the entire content of the current data entry field. Accepts the data on the current screen as entered and proceeds to the next screen. Presents a secondary navigation menu on the last line of the terminal s c r e e n . T h e m e n u s o p t i o n s a r e Continue Backup Main Exit Update Selection of items on this menu may be made via the right or left arrow keys, or by typing the first letter of the desired entry. Once an entry has been selected, depress F1 to a c c e p t . U p d a t e i s a n e x c e p t i o n . T y p e T o r F t oe n a b l eo r d i s a b l ead a t a b a s eu p d a t e , r e s p e c t i v e l y , t ob ed o n e after selection of an entry. It is not possible to select this item via the a r r o wk e y s , n o r d o e s t y p i n g U h a v e a n y e f f e c t .

F3 F4

This key is only used in specialized situations; see for example, Class Notes Vol 2, DERIVID operations, screen 4. Presents a secondary navigation menu of the form: Go to: to which the user may respond with a screen number followed by the F1 key or the RETURN key. Screen numbers entered at this prompt may be outside of the range of actual screen numbers for t h ep r o g r a m ; e . g . , 9 9 w i l l t a k ey o ut ot h ee n do f t h ed a t ae n t r y segment for most of the CIFER utilities.

CasalCorp October 2004

IGRN-28

Table 4b: QPLOT Augmented Data Entry Features CTRL-A CTRL-D CTRL-G CTRL-L CTRL-O Moves cursor to the left end of the current field. Moves cursor to the right end of the current field. Moves cursor left by one character. Moves cursor right by one character. Enters character insert mode. Any printable character typed will be inserted directly above the cursor. Exits character insert mode. In normal mode, overwrites the character directly above the cursor. In character insert mode, the character is inserted directly above the cursor, moving the right portion of the line one character to the right. Deletes the character immediately to the left of the cursor, and drags the right portion of the line one character to the left. Deletes the entire line, even if the cursor is positioned in the interior of the line.

<ESC> any printing character

backspace

del

CasalCorp October 2004

IGRN-29

7. Using CIFER: Setting Up Databases and SIFDEF files


This section will provide an overview of CIFER databases and the procedures for creating them. SIFDEF files will be described, and the relationship between databases and SIFDEF files will discussed. Finally, a detailed example of the creation of a user database and its associated SIFDEF file will be given.

7.1 Organization and Content of CIFER Databases.


The CIFER package consists of a large number of independent utilities which interact by accessing information stored in a common database. An individual CIFER user may have many such databases, each dedicated to a particular project or even a particular engineering analysis within a project. Each database is given a unique aircraft ID 14 at the time that it is created. An aircraft ID is a string of up to eight characters. Valid characters include alphanumeric characters, dashes, and underscores; blanks are not allowed. Physically, a database consists of a data file (binary) and an index file (ASCII). These files are named <ARCRFT>.dat and <ARCRFT>.idx respectively. Here the symbol <ARCRFT> represents the aircraft ID. (For a detailed discussion of CIFER sf i l e sa n da s s o c i a t e d environment variables, see section four of this document.) CIFER databases can contain many types of data records. The following list, while not exhaustive, describes some of the primary data types and the nomenclature associated with them: Frequency Responses. Frequency responses are probably the single most common type of record in the database. These records result from the analysis of time history data by CIFER utilities such as FRESPID, COMPOSITE, and MISOSA. Utilities that deal with frequency responses (as either input or output data elements) rely on a specific naming convention to identify them in the database. The basic format of a frequency response name is <casename>_<program>_<windows>_<input>_<output> where <casename> <program> is a user defined alpha-numeric string of up to eight characters. is a three character designator for the utility that created the data (e.g., FRE FRESPID).

14

Of course CIFER is not restricted to the analysis of aircraft data. CIFER originated as an engineering facility for the design of aircraft control and stability augmentation systems. As a result, much of the nomenclature used in the CIFER interface is based on aircraft engineering terminology. IGRN-30

CasalCorp October 2004

<windows>

is a five character string that indicates which windows were active when the response was computed. Each of the five positions corresponds to a specific window, in order, A E. If a window is inactive (not used) in the computation, a zero appears in its slot. Thus the s t r i n g A B 0 0 0 w o u l di n d i c a t et h a t o n l yw i n d o w sA and B were used to compute the response. is a user defined string that identifies the input control (four character maximum). is a user defined string that identifies the output control (four character maximum).

<input> <output>

Case Data. When performing an analysis with a CIFER utility, the user will assign a casename15 t ot h e a n a l y s i s .T h e na s h e e n t e r s d a t a o nt h e u t i l i t y s v a r i o u s i n p u t s c r e e n s , i t will be sav e d t o t h e d a t a b a s e u n d e r t h a t n a m e . T h i s c a s e d a t a a l l o w s C I F E R programs to r e c a l l t h eu s e r s i n p u t p a r a m e t e r s , t h e r e b ym i n i m i z i n gt h ea m o u n t o f r e -keying required to modify and rerun a case. Model Matrices. The database contains the various matrices (M, F, G, H, and Tau) used to describe DERIVID models. DERIVID and VERIFY Results. It is probably worth mentioning at this point that raw time history data is not stored in the CIFER database. CIFER provides a set of built-i n h o o k s f o r i n p u t t i n gt ime history data directly into FRESPID and VERIFY (the only two CIFER programs which deal directly with time domain data). For information on dealing with time history data, please consult the document I m p l e m e n t i n g R E A D MI S (also included in this IGRN as Appendix G).

7.2 The Purpose of the SIFDEF file.


The SIFDEF file is a Korn shell script file which is executed during the CIFER startup process (see section 5.5). It provides definitions for several environment variables (Table 3b) which inform CIFER component utilities of the locations of the database, time history data files, batch and plot output directories, and the units in which on-screen results should be displayed. F r o mt h e u s e r s p o i n t o f v i e w , t h e S I F D E Ff i l e p r o v i d e s a m e c h a n i s mf o r g r o u p i n gtogether the files associated with a particular project. This is because, in addition to the items described above, the SIFDEF file defines the A R C R F T environment variable, which contains the aircraft ID mentioned in section 7.1, and an associated A N A L Y S I S environment variable, which contains a user supplied string. (This string is limited by the same rules that govern the aircraft ID; see above.) These two quantities uniquely identify the SIFDEF file and therefore become a s h o r t h a n d l a b e l f o r i t s contents. A CIFER user may have several SIFDEF files, each of which can be used to set up the CIFER environment for work with a particular aircraft/analysis combination. To distinguish among these files, CIFER names each file according to the scheme: SIFDEF.<ARCRFT>.<ANALYSIS>
15

FRESPID, COMPOSITE and MISOSA casenames may be up to eight alpha-numeric characters; DERIVID and VERIFY casenames may be up to 12 characters in length. IGRN-31

CasalCorp October 2004

where <ARCRFT> is a file name extension string which is equivalent to the aircraft ID declared in the SIFDEF file. Similarly, <ANALYSIS> is an extension string formed from the definition of the ANALYSIS environment variable contained in the file. Of course there can be only one active SIFDEF file at any given time during a CIFER session. This file is uniquely named S I F D E F , without any extensions. This active SIFDEF file is a copy of one of the available p a r e n t files, i.e., one of the SIFDEF files that is named according to the convention described above. CIFER i s i n s t a l l e d w i t h a s p e c i a l s e t o f v a n i l l a a c t i v e a n d p a r e n t S I F D E Ff i l e s c a l l e d t h e d e f a u l t . d e f a u l t S I F D E Ff i l e s .T h e s e f i l e s s e t t h e a i r c r a f t I Ds t r i n g t o d e f a u l t a n d t h e a n a l y s i ss t r i n gt o d e f a u l t . O n eo ft h ef i r s tt a s k sa n e wu s e rm u s ta c c o m p l i s hi st h e customization of these files for his own use. To this end, CIFER provides the utilities under D a t a b a s e U t i l i t i e s . . . ( m a i n m e n u i t e m# 1 0 , s e e F i g u r e 1 0 below), which can be used to modify the contents of SIFDEF files. It is important to understand that these utilities never make changes directly to the parent SIFDEF files; only the active SIFDEF file is modified. Then, once the changes are complete, the modified active SIFDEF file is saved back into the parent file. Furthermore, this arrangement means that the only way to create a new aircraft/analysis pair (i.e., a new SIFDEF parent file) is to edit the currently active SIFDEF file and then save it as a new file. This process will be illustrated in the next section.

7.3 EXAMPLE: Creating A Database and Associated SIFDEF Files


I nt h i s s e c t i o nw ew i l l c r e a t ead a t a b a s ef o r t h ee x a m p l ea i r c r a f t MY _ F L Y E R .Wew i l l assume that two separate time history data sets for this aircraft are to be analyzed. Assuming further that each of these data sets resides in its own separate directory tree, we will create two SIFDEF files, one for each data set. Finally, we will discuss the modifications which would be required in this scheme if the results of each analysis were to be stored in a separate database. The Procedure. After starting CIFER, select utility 10 from the main CIFER menu screen. You will then see a screen similar to the one shown in Figure 7-1. T h ef i r s t s t e pw i l l b et oc r e a t et h ed a t a b a s ef o r MY _ F L Y E R .S i n c et h e C r e a t eA i r c r a f t ( C r e a t e n e wd a t a b a s e o r c r e a t e S I F D E Ff o r e x i s t i n g d b ) u t i l i t y ( # 1 7 ) w i l l s t o r e i n f o r m a t i o ni n t o the SIFDEF file pertaining to the new database, we will use the currently active SIFDEF file as a template for this new SIFDEF file16. Remember, this is only a copy of the parent SIFDEF file, and hence it can be modified without concern for loss of existing data. If you would like to use another SIFDEF file as the template , y o u f i r s t m u s t s e l e c t i t . Wh e n y o u s e l e c t u t i l i t y # 1 6 ( S e l e c t A i r c r a f t / A n a l y s i s( S e l e c t S I F D E Ff i l e ) ) y o uw i l l b es h o w nal i s t o f a v a i l a b l eS I F D E Ff i l e s ; depress carriage return to dismiss the list and then choose the default selection by depressing c a r r i a g e r e t u r n a g a i n . Wh e n y o u r e t u r n t o t h e s u b m e n u s c r e e n , t h e s t a t u s l i n e ( m a y b e s h o w n i n reverse video) would indicate that another SIFDEF file is active if you had specified a different SIFDEF file.

16

The illustration in F i g u r e 1 0s h o w s t h e d e f a u l t . d e f a u l t S I F D E Ff i l e a s a c t i v e ; t h i s i s t h e o u t -of-theb o x c o n f i g u r a t i o n f o r C I F E R . I f y o u r i n s t a l l a t i o n h a s a n a c t i v e S I F D E Ff i l e o t h e r t h a n t h e d e f a u l t , y o u can always use that file as a starting point for creating a new database and SIFDEF file. IGRN-32

CasalCorp October 2004

Figure 7-1: CIFER Utility 10 Database Utilities Submenu

N e x t s e l e c t t h e C r e a t eA i r c r a f t ( C r e a t en e wd a t a b a s eo r c r e a t eS I F D E Ff o r e x i s t i n gd b ) utility (#17). You will be asked first to enter the directory in which the database files are to be created. You may choose any directory that already exists and for which you have write permission. For now, simply accept the default and proceed to enter the name of the aircraft ( MY _ F L Y E R ) a t t h en e x t p r o m p t .A f i n a l c a r r i a g er e t u r nw i l l b r i n gy o u , o n c ea g a i n , t ot h e Database Utilities submenu screen. The status line will now read ---> The active SIFDEF is 'MY_FLYER.default' <--N o t e t h a t t h e C r e a t e A i r c r a f t ( C r e a t e n e wd a t a b a s e or create SIFDEF for existing db) u t i l i t y has changed the aircraft portion of the SIFDEF file name extension. It is important to realize that the status line shows only where the active SIFDEF file was saved; this does not mean that the extension of the original parent file has been altered. But, before using the new SIFDEF file, we must adjust the location of the time history data, since one of the goals of this example is to set up analyses that draw from two distinct sets of time history data. P r o c e e db ys e l e c t i n gu t i l i t y# 1 1( C h a n g eC I F E RD e f a u l t s ) .Y o uw i l l n e x t s e eas c r e e n from which you can edit the contents of the active SIFDEF file (Figure 7-2). Navigate to the Time history locf i e l da n de n t e rt h ed i r e c t o r yp a t ht oy o u rd a t a( i nt h i se x a m p l e , E:\cifer\data\th\Set_1). Wh e ny o ua r es a t i s f i e d , p r e s s t h e F 1 k e yt oa c c e p t t h e s c r e e n ; y o u w i l l b e r e t u r n e d t o t h e D a t a b a s e U t i l i t i e s s u b m e n u . In order to complete the first portion of the setup, the only remaining task is to change the n a m e o f t h e a n a l y s i s f r o m d e f a u l t ( a s i n d i c a t e d b y t h e s t a t u s l i n e ) t o s o m e t h i n g s u g g e s t i v e o f t h e origin of the time history data. (Note that it is, unfortunately, not possible to edit the analysis name from within the screen editor utility #11.) To change the name of the analysis, we will save the active SIFDEF as, say, SIFDEF.MY_FLYER.TH1 as follows: You will be shown a list of available SIFDEF files for
CasalCorp October 2004 IGRN-33

aircraft MY_FLYER; depress carriage return to dismiss the list and then type TH1 and effect the selection by depressing carriage return again. Upon the completion of this operation, we are returned to the submenu screen, but the status line now reads ---> The active SIFDEF is 'MY_FLYER.TH1' <--which is the desired result.

Figure7-2: Editing the Active SIFDEF File

If this were the extent of the task that we had set for ourselves in this example, we could end here by depressing a carriage return to take us back to the main CIFER menu screen and we could begin our analysis of the data. However, we originally set out in this example to construct a single database and two SIFDEF files: one for each of two sets of time history data. In order to complete that example we must now create a second SIFDEF file. Work done while this second SIFDEF file is active will use the same aircraft database, MY_FLYER, but will take its time history data from a second set of files located in, say, E:\cifer\ data\th\Set_2. In this case we will use the a i r c r a f t . a n a l y s i s c o m b i n a t i o n MY_FLYER.TH2 as the SIFDEF name. So, instead of depressing the carriage return to return to the main menu, we immediately s e l e c t u t i l i t y # 1 1 , C h a n g e C I F E RD e f a u l t s , a n da g a i ne d i t t h e Time history loc f i e l d . Only this time we insert the path to the second set of time history data. (Note that the Aircraft.Analysis f i e l dw i l l s t i l l s h o w MY_FLYER.TH1 a t t h i s p o i n t .T h i s i s o f n o concern, since we will change the analysis name when we save the edited SIFDEF file. Remember too, we are only editing the active copy of MY_FLYER.TH1; the original has not been modified.) A f t e r a c c e p t i n gt h e e d i t e ds c r e e nb yd e p r e s s i n g F 1 ,d i s m i s s t h e l i s t o f S I F D E Ff i l e s , a n d save the modified file with an analysis name of TH2. The status line should then read ---> The active SIFDEF is 'MY_FLYER.TH2' <---

CasalCorp October 2004

IGRN-34

From this point forward, you may designate one or the other of these files as the active S I F D E Ff i l e u s i n g u t i l i t y # 1 6 , S e l e c t A i r c r a f t / A n a l y s i s ( S I F D E Ff i l e ) . Advanced Topic. The preceding discussion illustrated a relatively straightforward application o f a n a l y s i s t a g s t o d i s t i n g u i s h b e t w e e n t w o S I F D E Ff i l e s w h i c h e a c h t a r g e t t h e s a m e d a t a b a s e . The next logical extension of this scenario would be to the case where the user wished to store the results of his CIFER analyses for the two time history data sets in separate databases. Since both data sets pertain to the same aircraft, logic requires that we not use different aircraft IDs , but, on the other hand, the aircraft ID is the sole determinant of the database file name; the analysis tag does not enter into the database name. Thus, the only reasonable way to modify the above scenario to incorporate independent database files for each set of time history data would be to store the databases in separate directories. This can be easily accomplished at the point when the databases are created, i.e., when you r u n u t i l i t y # 1 7 ( C r e a t e A i r c r a f t ( C r e a t e n e wd a t a b a s e o r c r e a t e S I F D E Ff o r e x i s t i n g d b ) ) . Wh e n you are asked to enter the directory in which to create the database, simply choose a directory structure that reflects the analysis tag that will be associated with the SIFDEF file under construction. For example when creating the database for the first SIFDEF above, you might choose the directory E:\cifer\data\db\MY_FLYER\TH1\ instead of accepting the default. (Remember, though: database directories must already exist or creation will fail.) Finally, it may also be worth noting that utility 17 will automatically update the database location field in the active SIFDEF whenever you enter something other than the default directory while creating a new database file.

8. Multiple-User CIFER Systems17


Multiple-user CIFER systems are generally configured to address one or both of the following issues: (a) The individual users of a CIFER WINTEL workstation are working with separate data sets and each requires his own separate databases and associated SIFDEF files. For various reasons, shared directories are not acceptable options. (b) The individual users are working with different time history data formats and each requires a separate customized READMIS DLL to access his data. As it turns out, the second of these situations is, in its implementation, slightly more complex than the first, requiring all of the mechanism of that case plus a few additional adjustments. In any event, neither is difficult to effect by following the procedures outlined here. Users Requiring Separate Databases. In situation (a) above, the procedure for establishing individual user accounts is as follows18: (1) Working from the WINTEL d e s k t o p ,u s et h e My C o m p u t e r a p p l i c a t i o nt o navigate to a location of your choice ( MyC o m p u t e r c a nb e f o u n di nS t a r t m e n u on Windows XP); once there, create a new folder. This folder will become the root of your personal CIFER subtree. Needless to say, you should be the owner of this folder and have full access control (read/write/etc.) over it. It is suggested (but not r e q u i r e d ) t h a t y o u l a b e l t h i s f o l d e r c i f e r .
17

18

Much of what is discussed below will assume some understanding of the material covered in section 4 of this document, and particularly, the startup process outlined in Figure 5. You may find Figure 4 helpful when working through this process. IGRN-35

CasalCorp October 2004

(2) Open the newly created folder, and create another folder within it. Label this folder s c r i p t s .N e x t , u s i n ga n o t h e r MyC o m p u t e r w i n d o w , n a v i g a t e t ot h e r o o t o f t h e primary CIFER installation on your system19.O p e nt h e s c r i p t s f o l d e r t h a t y o u find there, and copy (d o n t m o v e ) the cifrc.cmd and cifrc.ksh files in that folder to your new scripts folder. Also, copy the entire %cifroot%\UI folder to %cifhome%\UI. (3) In your personal CIFER d i r e c t o r y , c r e a t e a n o t h e r n e wf o l d e r ; l a b e l i t d a t a . T h e n , open the data folder in the primary %cifroot% directory, and copy the file SIFDEF.default.default from that folder to your new data folder. Now, open the newly created data folder, and make a duplicate copy of the SIFDEF.default.default file that you just copied there; label it simply SIFDEF. If you intendt os t o r ey o u rd a t a b a s e si na d b f o l d e rb e n e a t hy o u r p e r s o n a l d a t af o l d e r , c r e a t eaf o l d e r l a b e l e d d b i nt h a t l o c a t i o n .F i n a l l y , i f y o u i n t e n dt os t o r ey o u r t i m eh i s t o r yd a t ai na t h f o l d e r b e n e a t hy o u r p e r s o n a l d a t a folder, create a folder labeled t h i n t h a t l o c a t i o n . (4) C r e a t ea j o b s f o l d e r i ny o u r p e r s o n a l c i f e r r o o t f o l d e r .N e x t , o p e nt h e j o b s f o l d e r t h a t y o uj u s t c r e a t e d , a n dc r e a t e a p l o t s f o l d e r a n da t f d a t a f o l d e r w i t h i n t h e j o b s f o l d e r . (5) Finally, you must override the system-wide definition of %cifhome% with a userspecific definition that points to your new, personal CIFER subtree. While logged in as yourself, open the System applet in the control panel. Select the Environment tab and click somewhere in the lower list b o x ( l a b e l e d U s e r V a r i a b l e s f o r ) .Wh e ny o uc l i c ki nt h i s b o x , b ec a r e f u l n o t t oa c t u a l l ys e l e c t any of the items in the list; t h e e d i t b o x e s l a b e l e d V a r i a b l e a n d V a l u e s h o u l d r e m a i n e m p t y after you click in the lower list box20. N e x t , i nt h e V a r i a b l e b o x , e n t e r c i f h o m e ( i nl o w e rc a s e , w i t h o u t q u o t e so r p e r c e n t s i g nd e l i m i t e r s ) .T h e ni nt h e V a l u e b o x , e n t e r t h e p a t ht oy o u r p e r s o n a l C I F E Rs u b t r e e . C l i c k S e t , A p p l y , a n d O K t o c o m p l e t e t h e o p e r a t i o n . ( D o not close this window without clicking these buttons, or your definition will be lost!) On XP or 2000, select the Advanced tab in the System applet and then click on the Environment Variables button. In the resulting window, click on the New button below the list of User variables; in the resulting (small) window, enter cifhome in the Variable field and enter the appropriate path in the Value field. Click OK (repeatedly) to make the change effective (on Windows 2000 you should click Apply and then OK when you get back to the System Properties window). T h i s c o m p l e t e s t h e p r o c e s s o f s e t t i n gu pa ni n d i v i d u a l C I F E Ra c c o u n t f o r t h e p u r p o s e o f establishing separate data directories. Users Requiring Specialized READMIS DLLs. If you require a specialized READMIS DLL, then you must complete the following additional steps:

19

You can locate the root of the primary installation by examining the value of the %cifroot% variable in the Environment tab of the System control panel applet (similar procedure on Windows XP) If you scroll this window to the end of the list, there is usually a blank area in which you can click to make this list active without actually selecting any of its elements. IGRN-36

20

CasalCorp October 2004

(6) U s i n g My C o m p u t e r , navigate to the root folder of your personal CIFER s u b t r e e .I n t h i s f o l d e r , c r e a t e a f o l d e r l a b e l e d s o u r c e .I n s i d e o f t h a t f o l d e r , c r e a t e a f o l d e r l a b e l e d readmis . N e x t , i n a s e p a r a t e My C o m p u t e r w i n d o w , n a v i g a t e t o t h e readmis f o l d e r b e n e a t h t h e primary CIFER root directory on your system (i.e., %cifroot%\source\readmis). Copy one (or both, if you will need both l a n g u a g e s ) o f t h e readmis_c a n d readmis_f90 f o l d e r s t h a t y o u f i n d t h e r e into your own readmis folder. (7) Copy the %cifroot%\bin folder and its contents into the root of your personal CIFER subtree. (8) Next, using a simple t e x te d i t o rs u c h a s N o t e P a d , edit the file %cifhome%\scripts\cifrc.cmd, and change the definition of SIFLOC from %cifroot%\bin to %cifhome%\bin. This will cause CIFER to take its executables from the bin directory beneath your personal subtree. (The readmis project that you copied to your subtree in step six will automatically place the new DLL in that directory.) Of course, beyond these preparatory steps, it will be necessary for you to use a template READMIS project to generate your specialized DLL. For information on that process, please see t h e I m p l e m e n t i n g R E A D MI S d o c u m e n t w h i c h i s p a r t o f t h e C IFER distribution.

CasalCorp October 2004

IGRN-37

Appendix A: Manually Uninstalling CIFER


On some, hopefully very rare, occasions the CIFER installer may become trapped in a n e v e r -n e v e r l a n d i nw h i c hi t c a n n e i t h e r i n s t a l l n o r u n i n s t a l l t h e s o f t w a r e .A s n o t e d i n s e c t i o n three, if you have run the CIFER uninstaller from the Add/Remove applet in the control panel and found that uninstallation did not in fact take place, even though the uninstaller appeared to function; and, if subsequent attempts to reinstall CIFER fail, then you may be in this situation. When this occurs, the only recourse is, unfortunately, manual uninstallation of the software. The procedure requires administrative privilege, and is outlined here (note that there may be some undocumented differences on 2000 and XP systems; please contact us for advice): (1) Alt-double click o n t h e My C o m p u t e r i c o n o n t h e d e s k t o p .S e l e c t t h e E n v i r o n m e n t t a b in the system properties window. Take note of the path to the primary CIFER root directory as defined in the environmen t v a r i a b l e c i f r o o t .T h e n , d e l e t e t h e c i f r o o t a n d c i f h o m e environment variables. (2) Locate the folder corresponding to the primary CIFER root directory, and delete it and all of its contents21. (3) E x a m i n e y o u r l o g o nd i r e c t o r y f o r a n y profile.ksh o r environ.ksh files. If they exist, and you've made changes to them and wish to save those changes, rename them; o t h e r w i s ed e l e t et h e m . ( Y o uc a nf i n dy o u r l o g o nd i r e c t o r y b yt y p i n g echo %HOMEDRIVE%%HOMEPATH% a t a D O Ss h e l l c o m m a n d p r o m p t . ) (4) Right-click o nt h eS T A R Tb u t t o na n ds e l e c t E x p l o r e f r o mt h ec o n t e x t m e n u .T h i s w i l l o p e n a n e x p l o r e r s h e l l i n <sysdrive>:\Winnt\Profiles\ Administrator\Start Menu( a s s u m i n gt h a t y o u ' r el o g g e di na sA d m i n i s t r a t o r ) . Close that folder and move instead to <sysdrive>:\Winnt\ Profiles\All Users\Start Menu\Programs\ . S e l e c t t h e CIFER folder; delete it and its contents. (5) Delete the CIFER shortcut (if there is one) from the desktop. (6) U s e t h e R u n c o m m a n d i n t h e S T A R Tm e n u t o l a u n c h RegEdit . (WARNING: Use caution when running RegEdit; you can do serious damage to your system.) In the left hand panel of the RegEdit window, click your way to the following key subdirectory:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Current Version\ Uninstall\

In this path you will see the following key: {6B1BA4AC-83B2-4C0C-BF34-DBCF2F124B56} (Please note that this key may be different on your machine; if so, you will need to scroll t h r o u g h t h e k e y s , w a t c h i n g D i s p l a y N a m e i n t h e r i g h t p a n e l f o r y o u r C I F E Ri n s t a l l a t i o n . ) The quantity in curly braces is the CIFER GUID. This identifier should be unique to CIFER, but in order to be absolutely certain, it is suggested that you confirm its ownership as follows.

21

If you have made changes to CIFER scripts or data structures, then you may wish to save them to another location before deleting the CIFER folder. IGRN-38

CasalCorp October 2004

In the right hand panel of the RegEdit window, double click on the DisplayName key. An e d i t i n gw i n d o ws h o u l do p e ns h o w i n gt h e k e yv a l u e n a m e f o r t h a t k e y .T h i s w i l l b e t h e s a m ea s t h en a m eb yw h i c hC I F E Ra p p e a r s i nt h e p i c kl i s t o f t h eA d d / R e m o v ea p p l e t window; in particular, the CIFER acronym should appear somewhere in the definition string. Once you have verified, in this manner, that the {6B1BA4AC-...} key belongs to CIFER, you may safely delete it. In the left hand panel, select the key, as shown in Figure A-1.T h e n , f r o mt h e E d i t m e n u , s e l e c t D e l e t e .C l o se the RegEdit window (exiting the
application). (6)

Finally, look in the "Program Files" folder on your system drive. You should see a folder labeled "InstallShield Installation Information". Inside that folder, you should see a folder with the same CIFER-GUID-based name as the registry key that you just removed. Delete this folder and all of its contents.

Figure A-1: Using RegEdit to Remove the CIFER Uninstall Key

CasalCorp October 2004

IGRN-39

Appendix B: Installing CIFER Patches


From time to time, various updates and patches for your CIFER product may become available. In general you will be notified by the CIFER customer support group when this occurs. However, please feel free to contact CasalCorp at any time with questions, concerns, or suggestions: Paul W Salchak, pwsalchak@casalcorp.com

(937) 848-4234.

Appendix C: Installing CIFER Training Database


THIS PROCEDURE SHOULD NOT BE PERFORMED UNTIL YOUR STANDARD INSTALLATION IS COMPLETED AND VERIFIED (see procedure later in this Notes manual). CIFER is now distributed with a number of pre-built data files, for use either to test installed features or to support familiarization and training. For Version 4.1.00 or later these files will be directly installed beneath the data/ subdirectory of the main CIFER home directory (usually CIFER_Pro). For Versions prior to Version 4.1.00, and depending upon your purchase combination, prebuilt CIFER databases may have been provided with your CIFER EX T R A S o r D o c u m e n t s and References CD. Installation is a simple process of saving the standard initial database and replacing it with your customized database. For example, when installing a Training Database for standard classroom training perform the following steps: Under your CIFER directory structure (a standard installation will have deposited your CIFER program directory under the name CIFER_PRO): 1. Save the installed data/ and jobs/ directories under a different name (e.g., save_data/, save_jobs/) 2. F r o mt h eC I F E R E X T R A S o r D o c u m e n t s a n dR e f e r e n c e s C D , u n d e r t h e T r a i n i n g D a t a s e t s d i r e c t o r y o p e n t h e X V 1 5 H o v e r a n d C r u i s e s u b -directory. 3. Drag the data/ directory from the CIFER CD to the CIFER home directory structure on your C: drive. 4. Drag the jobs/ directory from the CIFER CD to the CIFER directory structure on your C: drive. 5. Re-verify your CIFER Installation using the procedure provided later in this Notes manual.

CasalCorp October 2004

IGRN-40

Appendix D: Validating the CIFER Installation


I f y o u s e l e c t e d t h e t y p i c a l C I F E R i n s t a l l a t i o n d u r i n g s e t up, various data components will be installed on your system along with the CIFER software itself. One of these items, the 703.TEST database, is included in order to provide a means by which you may test your CIFER system to determine if it is operating correctly. These tests are not intended to validate C I F E R sn u m e r i c a l a c c u r a c y , b u t a r ei n t e n d e dr a t h e rt oh e l py o ud e t e r m i n ei fC I F E R s software components are communicating among themselves properly and to demonstrate that the installer has correctly configured your system. Although brief, the following procedure will exercise all of the major software components in C I F E R si n f r a s t r u c t u r e : C I F E R sa b i l i t yt oe x e c u t eP E R Ls c r i p t s ,r u n b a c k g r o u n d processes, locate and link with its DLLs, and produce graphics output via the local X Window display server. In addition, the process described is typical of an actual FRESPID/QPLOT CIFER session, and so might profitably be studied by a new user as an example of CIFER processing protocols. No effort will be expended toward enumeration and/or remediation of errors that might possibly be detected during the execution of this procedure. The ways in which an installation might fail are too numerous to allow for treatment here. If you detect errors that you are unable t o r e s o l v e , o r i f y o u r i n s t a l l a t i o n s b e h a v i o r i s s i g n i f i c a n t l y d i f f e r e n t f r o mw h a t i s i l l u s t r a t e d h e r e , please contact CIFER user support, via casalcorp@ciferonline.com.

CIFER Test & Verification Procedure


(1) Launch the CIFER shell and, from the CIFER main menu s c r e e n ,s e l e c t D a t a b a s e U t i l i t i e s . . . ( u t i l i t y# 1 0 ) . You should then see this screen

If this is the first time you have run CIFER s i n c e i t s i n s t a l l a t i o n , t h e s t a t u s l i n e ( t he line that (maybe) is displayed in reverse video) should show
---> T h ea c t i v eS I F D E Fi s d e f a u l t . d e f a u l t < ---

If you have used CIFER previously, the active SIFDEF may be something other than the d e f a u l t . d e f a u l t c a s e . (2) E n t e r a 1 6 i n r e s p o n s e t o t he input prompt. You will be presented with a list of available S I F D E Ff i l e s , o n e o f w h i c h s h o u l d b e 7 0 3 . T E S T .D i s m i s s t h e l i s t b y d e p r e s s i n g c a r r i a g e r e t u r n , a n d e n t e r 7 0 3 . T E S T a t t h e s u b s e q u e n t i n p u t p r o m p t . When you return to the Database Utilities menu, the status line should read
---> T h ea c t i v eS I F D E Fi s 7 0 3 . T E S T < ---

Dismiss the Database Utilities menu by depressing carriage return at the input prompt.

CasalCorp October 2004

IGRN-41

(3) From the CIFER main menu screen (sic) select u t i l i t y # 1 8 : S e a r c h Frequency Response D/B You should then see this screen

(4) In the input field labeled E n t e rC o d e e n t e ra n L (upper case) and depress the F 1 k e y .Y o us h o u l dt h e n see this screen Depress carriage return to r e t u r n t o t h e S e a r c h s c r e e n . E n t e r Q i nt h e c o d e f i e l da n dd e p r e s s F 1 ; y o u w i l l b e r e t u r n e d t o the CIFER Main Menu. (5) N e x t , s e l e c t m e n u i t e m# 1 ( F R E S P I D ) f r o mt h e m a i n C I F E Rm e n u .E n t e r X V L A T S WP ( u p p e r c a s e ) i nt h e C a s e f i e l da n dd e p r e s s F 1 .T h ed i s p l a ys h o u l dt h e np r o c e e dt o FRESPID screen two without any error or warning messages. D e p r e s s F 1 a g a i n .T h i s t i m e y o uw i l l b e s h o w nF R E S P I Ds c r e e n t h r e e .N e a r t h e b o t t o m of the screen there will be a data entry fiel dl a b e l e d T i m e h i s t o r y s o u r c e : .T h e d a t a f i e l d itself should contain a 1 . H o w e v e r , f o r t h e p u r p o s e s o f t h i s t e s t , t h e i m p o r t a n t i t e mo n t h i s s c r e e n i s i n t h e l i s t o f o p t i o n s f o r t h i s f i e l d .N e x t t o o p t i o n 4 -R E A D MI S : , y o u s h o u l d s e e t h e p h r a s e R E A D MI SF -S T U B .I t s p r e s e n c e i n d i c a t e s t h a t C I F E R has correctly loaded the default READMIS DLL. (6) A f t e r v e r i f y i n g t h a t t h e R E A D MI SD L Lh a s b e e n c o r r e c t l y l o a d e d ,d e p r e s s F 4 .T h i s w i l l c a u s e a G o t o : n a v i g a t i o n p r o m p t t o b e d i s p l a y e d a t t h e b o t t o mo f t h e s c r e e n . E n t e r 9 9 i nr e s p o n s e t ot h e p r o m p t a n dd e p r e s s F 1 .Y o uw i l l t h e n s k i p a l l o f t h e r e m a i n i n gd a t a entry screens for FRESPID. (The program will retrieve the stored parameters for this FRESPID case from the database.) After skipping the remainder of the data entry screens, you will encounter several prompts asking if you are ready to continue, and to submit a batch job. Defaults for each prompt are presented in brackets. Respond to this dialog as follows:

CasalCorp October 2004

IGRN-42

Are you ready to continue without adjusting any window(s)? ([Y]|N) :Y Are you ready to continue? ([Y]|N) :Y You (B) (S) (E) may Submit a batch job and save case Save case only Exit without saving case

Enter your choice [E]:B Saving case information .... Preparing batch job ... The plot file will be: C:/CIFER_Pro/jobs/plots/FRE_XVLATSWP.PSC.01 Job file: C:CIFER_Pro/jobs/FRE_XVLATSWP.COM.01 submitted. Cleaning up... please wait... To continue, press RETURN...

The particular sequence numbers attached to the job and plot files may be different on your system if you have run other jobs with the same case name before attempting this test procedure. After a few seconds (less than two minutes on most current machines) you should see the following message displayed on your screen:
CIFER Batch job 2668 has completed. BATCH FILE: C:/CIFER_Pro/jobs/FRE_XVLATSWP.COM.01 LOG FILE: C:/CIFER_Pro/jobs/FRE_XVLATSWP.OUT.01 No error detected.

Here again, the job number will not be the same on your machine. The important thing is that the job should complete properly, i.e., without any detectable errors. (7) Return to the CIFER main menu by depressing carriage return. Next select utility #19, P l o t F r e q u e n c yR e s p o n s e s .Y o uw i l l s e ead a t ae n t r ys c r e e ns i m i l a r t ot h a t s h o w ni n Figure D-1. The figure also indicates data values that should be entered by you in order to c o m p l e t e t h e t e s t . Wh e n y o u h a v e f i n i s h e d e n t e r i n g t h e r e q u i r e d d a t a , d e p r e s s F 1 . You should then see the screen displayed in Figure D-2. No data entry is required on this screen for this test, but you should examine the information it contains. The data should agree with those shown in Figure D-2 . Wh e n y o u a r e s a t i s f i e d , d e p r e s s F 1 a g a i n . You should next see an X Window containing a plot similar to that shown in Figure D-3. Sometimes it may take a few seconds for the display to appear. To dismiss the plot and return to CIFER,m a k ec e r t a i nt h a tt h eg r a p h i c sw i n d o wh a s f o c u s b yp o i n t i n g at/clicking on the plot header bar, then depress carriage return. NOTE: on some systems, the plot window may not automatically pop to the top. In order to exit QPLOT and return to the main CIFER m e n u , d e p r e s s F 2 a n du s et h e a r r o wk e y st oh i g h l i g h t t h e E x i t o p t i o ni nt h en a v i g a t i o ns u b m e n ut h a t a p p e a r sa t t h e b o t t o mo f t h e s c r e e n .D e p r e s s F 1 a n d y o u s h o u l d b e r e t u r n e d t o t h e m a i n C I F E R menu. Depress carriage return to exit CIFER. This completes the test.

CasalCorp October 2004

IGRN-43

Figure D-1: qplot Screen 1

Figure D-2: qplot Screen 2

CasalCorp October 2004

IGRN-44

Figure D-3: CIFER Graphics Window (qplot)

CasalCorp October 2004

IGRN-45

Appendix E: Installing CIFER Extras for WINTEL Versions


Along with textual displays and files, CIFER produces a variety of plots, reports, and tables. While these can be easily captured and integrated into documents/reports using standard Windows screen or window snapshot and (clipboard) paste features, typical WINTEL environments do not have the applications to read, edit, manipulate, or print the PostScript and TeX formats that CIFER stores. While not required, the following utilities will be helpful in meeting this requirement: Ghostscript and GSview (see also www.cs.wisc.edu/~ghost/) MiKTeX (see also www.miktex.org) Adobe Acrobat the industry standard for document display, printing, and distribution These utilities may be installed at any time, and do not affect the normal CIFER installation that has already been described. For installations prior to Version 4.1.00, before proceeding with these installations, drag the desired utility directory from the CIFER EXTRAS CD to your C: drive.

INSTALLING GHOSTSCRIPT ON MS WINDOWS


Ghostscript releases for Windows are typically distributed as self-extracting archive files, since this is the most convenient form for users. These files can also be unpacked as if they were plain zip files. For your Ghostscript installation, fro mt h e A F P Lg h o s t s c r i p t 8 -1 1 s u b -directory simply launch the gs811w32 install application. Although not e s s e n t i a lf o rp r i n t i n gC I F E R sP o s t S cript and TeX files, after installing Ghostscript, we strongly recommended that you install the GSview previewer. This provides an e a s i e r t ou s eg r a p h i c a l i n t e r f a c ef o r u s i n gG h o s t s c r i p t f e a t u r e s . F r o mt h e G S V I E W4 -5 s u b directory run the gsv45w32 install application. Information on GSview is also available from: http://www.cs.wisc.edu/~ghost/gsview/ Uninstalling Ghostscript on Windows To uninstall Ghostscript, use the Control Panel, Add/Remove Programs and remove "Ghostscript #.##" and "Ghostscript Fonts". (The entries may be called "Aladdin Ghostscript" or "AFPL Ghostscript", rather than just "Ghostscript", depending on what version of Ghostscript was installed.)

CasalCorp October 2004

IGRN-46

ABOUT MiKTeX
The following pages, excerpted from MiKTeX Help Screens, describe the purpose, installation, and startup of this utility. 1. About this document This is the official MiKTeX FAQ list. Visit the MiKTeX Project page at www.miktex.org to view the latest version of this document. 2. General 2.1. What is MiKTeX? MiKTeX is a complete TeX system for Windows. 2.2. Which Windows version is required for running MiKTeX? MiKTeX requires one of the following Windows variants:

Windows XP Windows 2000 Windows Me Windows 98 Windows NT 4.0 (with IE 4.0 or later) Windows 95 (with IE 4.0 or later)

2.3. Is MiKTeX Year 2000 compliant? MiKTeX is Year 2000 compliant to the extent that it has been designed and tested to be compliant. But remember that MiKTeX comes with no warranty, and this applies to Y2K compliance. 3. Installation 3.5. How do I install MiKTeX? The MiKTeX distribution includes a setup wizard (setup.exe). For most users it should be sufficient to start the wizard and then clicking the Next button until the installation process concludes. Read the installation instructions, for a detailed description of the installation process. PLEASE NOTE: there are three levels of feature installation provided on your CIFER EXTRAS CD: Small, Large, andT o t a l .F o r C I F E Rp u r p o s e s , a S m a l l i n s t a l l a t i o ni s sufficient for most users. 3.7. Is it possible to install MiKTeX without installing Internet Explorer? MiKTeX requires a recent version of wininet.dll. This DLL is a part of newer Windows systems. Older systems (i.e. Windows 95, Windows NT) must have at least IE 4.0 installed (IE includes wininet.dll).

CasalCorp October 2004

IGRN-47

4. Getting Started 4.1. I have installed MiKTeX. How do I use it? TeX is a command-line oriented program witout a graphical user interface (GUI ) . T e X i n g a document involves these steps: 1. Edit the document with your favourite text editor. 2. Compile the document, i.e. say something like latex MyDocu 3. View/print the compiled document with a previewer (Yap, Acrobat Reader, ...). Y o u u s u a l l y u s e a T e Xs h e l l t o c a r r y o u t t h e s e s t e p s ( s e e Q: 4.2). 4.2. Which program should I use to edit TeX documents? See http://home.nexgo.de/itsfd/texwin.htm for a comprehensive list of TeX shells. The MiKTeX CD-R includes TeXnicCenter, a freeware TeX shell (http://www.toolscenter.org/products/texniccenter/index.htm).

Chapter 5. The MiKTeX Compiler Driver texify is a command-line utility that simplifies the creation of DVI (PDF) documents: texify automatically runs LaTeX (pdfLaTeX), MakeIndex and BibTeX as many times as necessary to produce a DVI (PDF) file with sorted indices and all cross-references resolved. To run texify on an input file foo.tex, do this:
texify foo.tex

As shown in the example above, the input file names to texify must include any extension (.tex,
.ltx, ) .

There are several command-line options you can use to control texify (see Section 1 4 , t e x i f y ). Here are some examples:
texify --clean foo.tex

All auxiliary files will be removed, i.e. only the output foo.dvi file will be left in the current folder.
texify --tex-opt=--src foo.tex

Passes the option --src to the TeX compiler. texify --run-viewer foo.tex Opens the output file foo.dvi (unless there are compile errors).
texify --tex-opt=--src --viewer-opt="-1 -s\"200 foo.tex\"" --run-viewer foo.tex

CasalCorp October 2004

IGRN-48

Compiles foo.tex with source file information (--src) and then initiates forward DVI search to open foo.dvi a t t h e s o u r c e s p e c i a l l o c a t i o n 200 foo.tex . T h e v i e w e r o p t i o n -1 re-uses a viewer window, if possible. Chapter 6. The MiKTeX Print Utility You can use the MiKTeX Print Utility to send TeX output files (*.dvi) to a printing device. The MiKTeX Print Utility is started in the command prompt window. To print the DVI file foo.dvi, do this:
mtprint foo.dvi

Printing works as follows: 1. The DVI file is converted by Dvips into an intermediate PostScript file. 2. The PostScript file is then processed by Ghostscript to produce a series of Windows Bitmaps. 3. These bitmaps are then sent to the printer. If you have a PostScript printer, then you can speed up the process by using the --printmethod option:
mtprint --print-method=ps foo.dvi

This will omit steps 2 and 3, i.e. the intermediate PostScript file will be sent directly to the printer.

CasalCorp October 2004

IGRN-49

Appendix F: CIFER Run-Time Licensing on a WINTEL Platform


The CIFER main menu will function with or without valid license [CIFLIC] and host [CIFHOST] strings. However, most of the individual CIFER programs (FRESPID, MISOSA, etc.) will not function without these run-time keys. In order to begin using CIFER software system functions, follow this procedure: 1. If you have provided the necessary information your keys may be found in the table on the next page. If you have not already received your CIFER license and host strings, please notify CasalCorp that you have completed (or are about to begin) your installation. This will also trigger your Support Registration. By email (casalcorp@ciferonline.com) or phone (937-848-4234 [USA]), please direct your notice to Mr. Paul W. Salchak.

Keys will be generated for your specific installation, and returned via email. To facilitate this, please have available email/phone information for the person responsible for installation, and also the computer name for the system on which CIFER has been/will be installed. You can see your computer name by selecting Start->Programs->CommandPrompt. In the window that opens, type: echo %COMPUTERNAME% <CR> The license and host string format is a combination of underscore-delimited numeric codes; e.g. 22975485_60392782_26768965_52718669 (actual number series and length will vary). PLEASE NOTE that it is CasalCo r p s p o l i c y t o a l l o wm i g r a t i o n o f CIFER installations to other computers, so long as only one installation is active. Should such a need arise please contact us with the new computer name and evidence/confirmation that the existing installation has been removed.
2 Log on to your WINTEL CIFER system. Select Start->Settings->Control_Panel. In the Control_Panel window, double-click on the System icon. In the System Properties Window, click on the Environment tab. Scan through the list of User Variables; if you see CIFLIC in the Variable column, click on it. [NOTE: actual key sequence/buttons may vary by WINTEL OS.} Near the bottom of the System Properties window you will see fields for Variable and Value. If nothing appears in the Variable field, enter the string CIFLIC there. Then delete anything in the Value field and enter your CIFER license string. Near the bottom of the System Properties window is a Set button. Click on it. Scan through the list of User Variables again. Find and select CIFHOST in the Variable column, or enter a new Variable in the field near the bottom of the System Properties window. Once the CIFHOST variable is entered/selected, enter the run-time CIFHOST string (replace any prior entries). Now scan through the User Variables list; you should now see the Variable CIFLIC along with its Value (the license string) and the Variable CIFHOST along with its value (the host string). At the bottom of the System Properties window is a set of 3 buttons. Click on Apply and then click on OK. Now you can close the System Properties and Control Panel windows

CasalCorp October 2004

IGRN-50

Appendix G: Implementing a CIFER READMIS Library


G.1 Introduction The usual first step in using CIFER is the analysis of time history data with the FRESPID utility. CIFER implements four built-in mechanisms for accessing time history data files. The user selects between these methods via his response to the T i m e h i s t o r y s o u r c e : query on FRESPID screen three. The possible responses to this query are numbered from one to four, and each corresponds to a particular type of time history file. In this document we will refer t o e a c h c l a s s o f f i l e b y t h i s t i m e h i s t o r y s o u r c e t y p e n u m b e r . The possible responses and time history file types are as follows (there may be additional choices not yet documented here): 1. File T h i sc o r r e s p o n d st oas i m p l e b i n a r y d a t af i l ef o r m a t o f t h et y p eu s e di nt h e sample time history files distributed with the CIFER package. These files consist of a single vector of floating point data, structured in such a way that they can be read by the following simple FORTRAN code segment22: DO i=1, npts READ( lun ) data(i) END DO Because Type 1 time history files contain only the data points themselves, the user must enter the time step between samples23 (in seconds) in the corresponding field of FRESPID screen three. Finally, CIFER requires that Type 1 time history files must be stored in a specialized d i r e c t o r yt r e e s t r u c t u r e , b a s e du p o n f l i g h t n u m b e r a n d e v e n t .T h i s t r e e i s r o o t e da t t h e location pointed to by the CIFER environment variable THLOC. Figure G-1, below, illustrates a typical directory tree containing Type 1 files. Note the manner in which the flight and event numbers are encoded into the subdirectory names and file names. In addition to the flight and event number parameters, the file name itself encodes a third parameter, the data channel name, as follows: <channel>E<event no>.<flight no> 2. TR Type 2 time history data files are assumed to originate from the TRENDS database. This file type will not be described further here, since the TRENDS database facility is not in widespread use outside of the NASA Ames Research Center Aeroflightdynamics Directorate. 3. FL Type 3 time history data files are assumed to originate from the FLYTE database. This file type will not be described further here, since the FLYTE database facility is not in widespread use outside of the NASA Ames Research Center Aeroflightdynamics Directorate.

22

Note that, as far as the record structure of the data file is concerned, this is most definitely not e q u i v a l e n t t o t h e i m p l i e d l o o p f o r m READ(lun) (data(i), i=1, npts). CIFER always assumes that data are equally spaced in time. IGRN-51

23

CasalCorp October 2004

THLOC

Faaa

Fbbb

Fccc

Errr

Esss

Exxx

mmmmErrr.bbb nnnnErrr.bbb ppppErrr.bbb


Figure G-1: Typical Type 1 Time History Directory Tree

4. <READMIS> The formats of Type 4 time history files are completely user defined. In order to access these files, CIFER will call a user-supplied routine named READMIS (an acronym for READ MIScellaneous data formats). In the WINTEL version of CIFER, the READMIS routine must be structured as a Dynamic Link Library (DLL). This library may be compiled independently of the CIFER code, and need only be placed in the CIFER b i n d i r e c t o r y i n o r d e r t o b e c o m e a v a i l a b l e t o C I F E R at runtime. Because a user who works with several types of time history files could easily forget exactly which READMIS DLL was currently in use, the READMIS library must also implement a R E A D MI S _ I D E N T f u n c t i o n w h i c h , w h e n q u e r i e d b y C I F E R , will provide a user-defined identification string. This string will be displayed on CIFER s c r e e n t h r e e n e x t t o o p t i o n 4 , i n p l a c e o f t h e w o r d R E A D MI S . Beyond these requirements, CIFER places no restrictions on the structure of the READMIS library or the manner in which the time history data itself is accessed or stored. In particular, there is no requirement that the data be stored in files which are named and arranged in a directory hierarchy such as was one shown in Figure G-1. The call arguments for the READMIS routine are well documented in the header block for t h e R E A D MI Ss t u b ( as a m p l eR E A D MI Sc o d ep r o v i d e dw i t ht h i sp a c k a g e , s e eb e l o w ) , however, a few further comments about time history data organization are in order here. As noted in the case of Type 1 time history data files described above, CIFER regards time h i s t o r y d a t a a s o r g a n i z e d a r o u n d t h e p a r a m e t e r s f l i g h t n u m b e r , e v e n t n u m b e r a n d c h a n n e l n a m e . A n di n d e e d , t h eR E A D MI Sa r g u m e n t sflightNo, eventNo, and channel convey exactly this information into the READMIS module.

CasalCorp October 2004

IGRN-52

In addition, when you select option 4 for the time history source, you will be presented with screen 3B (not shown in the CIFER U s e r s Ma n u a l , b u t i l l u s t r a t e dh e r e ; s e e Figure G-2). On this screen you are asked to provide a filename for each flight number and event number combination that you have specified on previous screens. This filename information will be made available to READMIS via the filename argument.
Case: XVLATSWP FRESPID:3B

Comments: Lateral frequency sweep for XV-15 in hover Evnt/Flt -------883 150 884 150 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Figure G-2: FRESPID Screen 3b File Name ----------------------------------------------mydata.fu mydata.bar

Of course, your READMIS data may not reside in individual files at all it may be located in a database or grouped in some other fashion in container objects. Thus, it is important to realize that, for Type 4 time history data, CIFER makes no use of these various pieces of information, other than to pass them to your READMIS routine. You may encode any type of information into these parameters that will help you locate your data. For example, it may be more appropriate for your purposes to associate a directory path w i t h e a c h f l i g h t n u m b e r a n d e v e n t n u m b e r p a i r , r a t h e r than a file name. (Or, you may choose to enter nothing at all i t i s n o t n e c e s s a r y t o e n t e r f i l e n a m e s i f y o u h a v e n o n e e d f o r a n a d d i t i o n a l q u a l i f i e r . ) This document will concern itself only with the implementation of READMIS dynamic link libraries for use with the WINTEL version of CIFER. G.2 The READMIS DLL Projects In order to generate a READMIS DLL for use with the CIFER package, the user will need to have access to an integrated development environment (IDE) capable of building standard Win32 DLL modules. Although any IDE with this capability may be used, the CIFER package is distributed with sample projects for two common WINTEL I D E s : V i s u a l C / C + +a n dD i g i t a l E q u i p m e n t C o r p o r a t i o n s V i s u a l F o r t r a n9 0 .I f y o uh a v ee i t h e r o f t h e s eI D E s , y o un eed only open the appropriate project, insert code specific to your data access requirements into the R E A D MI St e m p l a t e o r s t u b , a n ds e l e c t R e b u i l dA l l f r o mt h e B u i l d m e n u .I f y o uw i s ht o use an IDE other than one of these, you may still be able to use the template modules as a starting point for your development efforts.

CasalCorp October 2004

IGRN-53

In addition to the template modules, each project contains an actual working sample READMIS program, which may be substituted for the READMIS stub code when building the project. This fully functional READMIS program will generate a DLL that duplicates the operation of the Type 1 option. That is, it will read Type 1 time history files from the directory tree rooted at THLOC in exactly the same manner as would be the case if option one were s e l e c t e d i n r e s p o n s e t o t h e T i m e h i s t o r y s o u r c e ? q u e r y o n s c r e e n t h r e e . All of these modules, both the templates and the code for the Type 1 READMIS samples, are meticulously documented. Each is a self-contained tutorial covering everything you will need to know in order to implement your own READMIS code. However, as you approach the task of constructing your READMIS module, please realize that it is precisely because of the depth of this documentation that these programs may seem somewhat formidable; appearances notwithstanding though, there is actually very little coding required to produce a usable routine.

Organization of the Project Directories


The READMIS projects are located in the directory $cifroot/source/readmis, in the folders readmis_f90 and readmis_c. The directory structure of each is identical; the structure of the readmis_c directory tree for the MATLAB Binary READMIS library is shown in Figure G-3 24.

Figure G-3: READMIS Directory Tree

In the case of the C-language project, the files readmis.c.STUB and readmis.c.TYP1, located in the $cifroot/readmis/readmis_c directory, contain respectively the code for the template READMIS routine and the sample Type 1 emulation READMIS routine. To build either of these modules using the predefined project, simply copy the desired file into the $cifroot/readmis/readmis_c /libreadmis directory and rename it to readmis.c. (The procedure is analogous for the Fortran project. The corresponding files are readmis.for.STUB and readmis.for.TYP1.) The IDE may be launched by double-clicking on the file libreadmis.dsw, located in the $cifroot/readmis/readmis_c/libreadmis d i r e c t o r y .S e l e c t i n g R e b u i l da l l f r o m t h e B u i l d m e n uw i l l c o m p i l e , l i n ka n di n s t a l l t h e r e s u l t i n gD L Li n t ot h e C I F E Rb i nd i r e c t o r y . (Should it become necessary to perform the installation manually, the DLL may be found in the $cifroot/readmis/readmis_c/libreadmis/ Release directory, once the build operation has been successfully completed.)
24

Some files may appear with different icons on other machines. IGRN-54

CasalCorp October 2004

G.3

Implementing a READMIS Routine

As noted above, the sample and template READMIS files are completely documented and should provide all the information that you will need to implement a site-specific version. This section provides only a brief overview of the issues which must be addressed during that process; they are as follows:

You will be required to provide a 14-c h a r a c t e r i d e n t s t r i n g w h i c hw i l l b e u s e dt oi d e n t i f y


the READMIS DLL on FRESPID screen three. This string may contain any information you wish. Its purpose is to serve as a mnemonic aid to help you determine, at runtime, which DLL you are using.

T h eR E A D MI Sr o u t i n ew i l l b ec a l l e di nt w od i f f e r e n t m o d e s a s C I F E Re x e c u t e s .T h e
mode is indicated by the value of the mode argument to the READMIS call. If mode=1, CIFER expects READMIS to return, in the DELTAT argument, the time step between data elements. (It is important that no actual time history data be returned when mode=1.)

When

READMIS is entered with mode=2, CIFER will expect it to return the actual time history data in the ARRAY argument. The number of data points provided must be returned in the NPTS argument, and this number must be less than or equal to the maximum array size as given by the arraysiz argument. (This dimension is nominally 100,000 points, although implementation may vary from platform to platform.)

The areas of the template file which must be modified to meet these requirements are clearly marked. To see an actual example of a functioning READMIS routine, examine the readmis.TYP1 file for the language of your choice.

CasalCorp October 2004

IGRN-55

Appendix H: Working with CIFER Graphics Output


H.1 Hints and Tips for On-Screen Graphics As has already been mentioned in this guide, WINTEL CIFER s o n -screen graphics are generated via an X Window display server. A key concept in the XWi n d o wp a r a d i g mi s f o c u s , that is, which screen object (usually a window) will receive any user generated input (e.g., keystrokes, mouse clicks, etc.). The default focusing method for the SCO X server distributed with CIFER i s t e r m e d i m p l i c i t f o c u s , which means that the cursor need only be located within t h e b o u n d a r y o f t h e Xw i n d o wi n o r d e r f o r i t t o h a v e t h e f o c u s , o r , conversely, the cursor need only wander away from the window for it to lose focus. (This stands in contrast to regular WINTEL wi n d o w s , w h i c h o p e r a t e b y e x p l i c i t f o c u s , w h e r e i n t h e u s e r i s r e q u i r e d t o c l i c k w i t h i n the window in order to activate it.) The concept of focus is important in WINTEL CIFER graphics operations because it is necessary (in two of the three WINTEL CIFER graphics configurations) for the graphics window to have the focus before it can be dismissed. CIFER graphics windows (in configurations 1 and 2) are dismissed (returning focus to the CIFER input screen) by typing a carriage return while the graphics window has focus. This means that if your mouse wanders away from the window boundary, nothing will happen when you depress carriage return! Also, if t h et i t l eb a r o f t h ep l o t w i n d o wr e a d s H i t R E T U R Nt oc l o s e& c o n t i n u e , do not dismiss the graphics window b yc l i c k i n gt h ew i n d o w s c l o s eb o x , b e c a u s et h i sw i l l c a u s et h ep a r e n t CIFER utility to immediately exit. Users familiar with Unix versions of CIFER will know that those systems support several operational modes which allow multiple plot windows and persistent plot windows. Due to limitations inherent in the NuTCRACKER/WINTEL interface, these modes were only recently implemented in the WINTEL version. The default WINTEL CIFER mode is to support a single plot window that must be dismissed (by hitting the RETURN key) before interacting with CIFER again. You can select your preferred mode via utility 91 (available in CIFER main menu). Please note that on some systems, plots do not automatically pop to the top when generated (i.e., they can be obscuredb yo t h e r w i n d o w s ) .C h e c kt h e Wi n d o w s s t a t u s b a r i f y o ud o n t s e e your plot (the icon corresponding to the plot should appear in the status bar; if so, you can click on it to bring the plot forward). Working with plot windows. Although it may not be apparent at first glance, CIFER plot windows are resizable. Simply move the cursor to the border of the window and it will change into a bi-directional arrow, indicating that resizing is available. (Once you finish the resizing, be sure to return the cursor to the interior of the window in order to retain focus!) After you have resized a plot window, there are several keyboard commands which are available for manipulating the aspect ratio (remember, the plot window must have focus). These controls are defined in Table H-1. If you are using an WINTEL CIFER graphics configuration that allows multiple plots to appear on the screen (configurations 2 and 3 allow this) then plots can accumulate quickly. If you wish to close all of your plot windows quickly you can type the following (at the Unix command prompt): $PERL $cifscripts/close_all_xplots

CasalCorp October 2004

IGRN-56

Table H-1: Graphics Window Aspect Ratio Adjustment Controls R Restores the graphics window to default size. Makes one dimension of the window smaller in order to restore the default aspect ratio. Makes one dimension of the window larger in order to restore the default aspect ratio.

+ H.2

Hints and Tips for PostScript Graphics

In addition to the on-screen graphics CIFER generates using the X Window system, most CIFER utilities produce graphical output in PostScript form as well. These files can be quite large and can consume significant amounts of time and printer resources if they are printed directly. For that reason, you may wish to develop a capability for previewing them and extracting the frames of interest for printing. You may even wish to move beyond this simple c a p a b i l i t y , a n dd e v e l o pt e c h n i q u e s f o r e d i t i n g i n d i v i d u a l p l o t f r a m e s i no r d e r t or e n d e r t h e m suitable for publication. This section will offer some suggestions for utilities that may be of use in addressing these issues. A diagram of the idealized post-CIFER-execution graphics workflow is depicted in Figure H-1. Of course the degree to which the real-world workflow matches this schematic will depend s i g n i f i c a n t l y u p o n o n e s c h o i c e o f s o f t w a r e . Possible software candidates for performing the first of the operations (previewing plots) depicted in Figure H-1 are Ghostscript and GSview, freely downloadable packages maintained by GNU and Aladdin. (Ghostview is included with the CIFER software system installation for versions 4.0.05a or later).

Multi-frame PostScript plot file

Single Frame previewing and extraction software

Save selected frames or frame groups

Data Store Software to edit individual frames and save them in document ready formats

Print selected frames

Figure H-1: Idealized Graphics Workflow

A more complete and integrated set of utilities can be used; such as higher end document processing applications like Adobe Acrobat25 (which includes Distiller) and Adobe Illustrator. These commercial products provide a seamless path from CIFER sm u l t i -frame PostScript output files through plot preview, frame extraction, printing, editing, and encapsulation for document insertion. Figure H-2 illustrates the workflow as realized with these products.
25

Adobe Acrobat should not be confused with Adobe Acrobat Reader, which is a free utility for viewing portable document format (PDF) files. IGRN-57

CasalCorp October 2004

The first step in this process utilizes the Acrobat Distiller utility to convert the raw PostScript g r a p h i c s o u t p u t f i l e i n t o a p o r t a b l e d o c u m e n t f o r m a t ( P D F ) f i l e . This is a fast operation, taking generally only a few seconds even for relatively large files (e.g., ~150 plots). As illustrated in Figure H-2, the resulting PDF file becomes the primary input source for either of two possible post-processing scenarios: a previewing, extraction and/or printing workflow, or an editing/document preparation workflow. In addition, once the raw graphics files have been converted to PDF format, they can be easily shared with colleagues, regardless of platform type, since the free Acrobat Reader utility is available for every major platform and OS. (As an added advantage, the PDF files are usually 50% 70% smaller than the original PostScript plot files, making them easier to transmit electronically.) In general, the easiest way to prepare a CIFER plot for insertion into desktop or web publishing documents (e.g., documents prepared with Microsoft Word, PowerPoint, or other page layout/presentation software), is to convert it to an encapsulated PostScript (EPS) document. An EPS format file is a special type of PostScript file that can contain only a single p a g e i m a g e w h i c h i s s p e c i a l l y e n c a p s u l a t e d t o a l l o wi t t o b e p l a c e d a n d r e n d e r e d within another PostScript page. This file format is the format preferred by most page layout programs for use when importing figures and illustrations into PostScript documents. Adobe Illustrator will allow you to read any frame of interest from a multi-frame PDF plot file and save it as an encapsulated PostScript file. Of course, in addition to this simple format conversion, you can make various editing changes as might be required to meet your publication c o n s t r a i n t s .U s i n gI l l u s t r a t o r se d i t i n gf e a t u r e s , y o uc a n , f o r e x a m p l e , s c a l ea n d / o r r o t a t et h e plot26, change any or all label fonts, and add or delete labels and annotations.

Adobe Illustrator can be used to read individual frames from a multiframe PDF file and create single page encapsulated PostScript (EPS) artwork files.

EPS files containing single plot frames can be imported inot MS Word, PowerPoint, or other page layout or presentation software.

Multi-frame PostScript plot file

Acrobat Distiller

Multi-frame PDF plot file

Adobe Acrobat can be used for previewing and extraction.

Save selected frames or frame groups to PDF format files

Print selected frames

Figure H-2: CIFER Graphics Workflow Using Adobe Distiller, Acrobat, and Illustrator

26

Although plots can be rotated easily in both Adobe Illustrator and Acrobat, you may wish to consider s e l e c t i n g P o r t r a i t m o d eo nC I F E R s p l o t s e t u ps c r e e n s ( L a n d s c a p e m o d ei st h ed e f a u l t ) w h e n generating large numbers of plots for publication. IGRN-58

CasalCorp October 2004

Вам также может понравиться