Introduction to the menu interface

About this chapter

This chapter is intended to provide a broad overview of the capabilities found within FELIX. The program has evolved in response to a changing and growing NMR data-processing environment; therefore, we strongly recommend that you review this chapter after installing the software.


FELIX is an interactive program for processing, displaying, and analyzing data acquired on nuclear magnetic resonance spectrometers. To enhance the program's utility without compromising its flexibility, FELIX includes two separate user interfaces.

This guide focuses on the interactive menu-driven interface. Advanced users should consult the FELIX Command Language Reference Guide for more in-depth information about FELIX capabilities.

Software license

Each software release is distributed with FLEXlm license management. Please see the Accelrys Products System Guide for more detailed information.

Program modules

FELIX contains the 2D and ND spectral processing module, the Assign module for biomolecular resonance assignment, and the Autoscreen module for analysis of receptor-ligand binding spectra. Each module is enabled through license control. If the ND module is enabled, then you can process and analyze 3D and 4D data, and the corresponding commands are accessible through the menu interface.

Getting started

These instructions presume that you have successfully installed FELIX on your computer and are ready to begin.

To start the program, double-click the Felix icon on your desktop, or select Start > Programs > Accelrys Felix 2002 > FELIX 2004.

Completing a session

To exit FELIX and return to your operating system, select the File/Exit command. If changes have been made to the FELIX database (which contains spectrum information such as cross peaks, baseline points, etc.), a dialog box appears prompting you to Save or Discard the changes before exiting. You may also click the Return button to continue working in FELIX. If no changes have been made to the database during the current session, you may exit FELIX without supplying confirmation.

Initialization macro

At startup, FELIX tries to execute a macro called init.mac to initialize the program. (See "Macros" for more details on macros and how to use them in FELIX.) This file is located in the macros\mac folder under the FELIX installation directory. Once it finds the macro, FELIX executes it and displays the menu interface.

Please see Appendix C., FELIX startup, for more information on the init.mac file.

Some FELIX initialization options

FELIX allows you to modify the operating environment by setting several reserved symbols in the initialization macro, init.mac. The symbol blkwht, switches the black and white entries in the color map: when blkwht is set to 1, the background of the graphical interface is white. The symbol objmem sets a ceiling for the amount of memory that FELIX can use to store graphics objects. By setting objmem to a value (in bytes) below the available free system memory, you can prevent FELIX from exhausting the available memory (and consequently crashing) when it makes a graphics object. Instead, when FELIX reaches the ceiling, it closes the object and warns you.

FELIX reads these options only when it starts. You must restart FELIX if you change these options while FELIX is running.


FELIX provides several different types of workspaces for processing and analyzing data.

1D workspace (work)

The 1D workspace (work) is the most important workspace, since most of the commands issued within FELIX directly operate on data in this space.

Additional 1D workspaces (buffers)

The second type of workspace (buffers) is used when you want to save data for later analysis. For example, if you want to compare two 1D spectra acquired at different temperatures, additional data-storage areas (buffers) are useful. You can also store apodization functions (windows) in the buffers. It is faster to calculate the window function once and save it in a buffer than it is to recalculate the function every time it is used.

Note: For a more detailed description of work and buffers and their most common uses, see Chapter 5., Processing, visualization, and analysis interface (1D/2D/ND)

N-dimensional matrix workspace (matrix)

The matrix type of workspace is used to process multidimensional data - data containing more than one time or frequency dimension. Data in the matrix workspace may be displayed and analyzed using FELIX commands and menus similar to those used when analyzing 1D data.

For a complete discussion of multidimensional matrix manipulation and transformation, see Chapter 5., Processing, visualization, and analysis interface (1D/2D/ND).

Memory allocation

FELIX lets you define the size of the 1D workspace and the number of 1D buffers. Before working with experimental data, you first should configure the program's memory for your specific application. The default memory allocation is set in the init.mac macro that executes automatically at program startup. The allocation can be changed by selecting the Preference/Memory command.

If you try to exceed the allocated workspace size at any point during your data workup, or if you try to access nonallocated buffers, FELIX displays an error message. In some instances (for example, reading a large data file), the program automatically prompts you to reconfigure FELIX's memory. In other instances (storing data to a non-configured buffer), you must reconfigure your memory by selecting the Preference/Memory command.

Note: When memory is reallocated, all information that is stored in the 1D buffers is lost. In addition, if a matrix is currently open, it is automatically closed before memory reconfiguration.

You cannot define the size of the matrix workspace, since it is determined by the size of the matrix when you select the File/Open command. A very large matrix requires more memory for the matrix workspace.

Sometimes FELIX displays the message "Not enough memory" when you open a matrix or perform certain actions that need temporary memory (e.g., Linear Predict or Optimize Peaks). If this happens, reconfigure the memory allocation to use a smaller 1D workspace and fewer 1D buffers. To see the current memory allocation, select the Preference/Memory command.

File directories and prefix definitions

FELIX allows you to define pathnames or prefixes for each filetype. This makes it possible for each type of file to reside in a separate directory or even on a different device. For example, you might have 50 macro files, 10 data files, and 2 matrix files. If these files were stored in the same directory, it would be difficult to locate the pair of matrix files among the many macro and data files. It is better to organize the macro files in a single macro directory and the matrix and data files in a different directory.

Prefixes can be viewed or changed by selecting the Preference/Directories command. Within the control panel that appears, the current prefixes are shown. To change these, activate the appropriate entry box and enter the new prefix. Clicking OK saves the changes; clicking Cancel quits the control panel without making any changes.

Note: In the init.mac file, most of the prefixes are defined as relative to the "current working directory" (Start In folder), designed as ".\". You can verify the Start in folder by clicking the FELIX alias icon with the secondary mouse button ("right-click") and selecting Properties, then selecting the Shortcut tab. After FELIX is started up, whenever you open or create a database file (.dba file), the current working directory is automatically changed to the folder where the .dba file is located. You can change the current working folder by selecting the Preference/Directory command.

Menu interface

FELIX contains an interactive menu system for data processing, displays, and spectrum analysis. By default, the menu interface automatically appears when the program starts. The purpose of the menu interface is to simplify NMR data analysis and speed repetitive processing tasks. The menus provided contain most of the functions needed for processing and analyzing 1-, 2-, 3-, and 4-dimensional data.

In this guide we refer to the various menu items as follows:

Control panels (dialog boxes)

Control panels are a basic component of the FELIX menu system and are used for communicating text and numbers to FELIX. Any activity that requires information from you opens up a control panel and waits for you to provide it. Control panels contain several types of information-entry controls:

The entry box is where you can type text or numbers that the program needs; for example, you may enter filenames, plot scale factors, etc. Entry boxes have a type of integer, real, or character, which defines how FELIX interprets the characters entered into the box.

A check box is used to select one of a set number of options.The current option is shown in the toggle. To change the option, you can click anywhere within the toggle. Clicking several times scrolls through all the options in a circular fashion. Toggles are usually used where the unseen selections are very specific and intuitively obvious.

Switches, or radio buttons, are used to choose one of a small set of options. Radio buttons are used where choosing between alternative selections is not directly obvious. To select a radio button item, click the open circle. The activation and selection of a radio button item is indicated by a contrasting circle within the radio button.

Clicking on a combo box shows all valid choices at once. Drag the cursor to the desired choice and release the mouse button to select that choice.

List boxes consist of a rectangular area that contains a vertical list of choices with up and down scrolling arrows on the right side. Clicking one choice in the list highlights and selects that choice.

Buttons are used to exit control panels. When you click the Cancel button, the control panel is removed and the program does not update any parameters you may have entered. Clicking OK updates the program parameters with the current values in the control panel and removes the control panel. In some instances, choices other than Cancel and OK are available. The actions of these other buttons should be self-explanatory.

Pointer types

While in menu mode, you will see several types of pointers (cursors). Each has a specific purpose and expects a certain action from you.

The standard arrow pointer indicates that the menu interface is waiting for a click to select a menu item. The menu items that are currently active are highlighted as the arrow moves over them. The arrow pointer is also used within control panels.

This pointer covers the entire FELIX graphics window and indicates that a single position (or data-point value) is needed. For example, this pointer appears when you are selecting single cross peaks.

The spot pointer is a very small crosshair cursor. When the spot pointer appears, it indicates that the program is waiting for a push-drag-release action of the mouse for dragging out a rubber band box. Spot pointers are used to define data regions for expanding spectrum displays and for manually adding cross peaks to multidimensional spectra.

Note: When the spot pointer is present, you must be careful not to simply click and release the left mouse button without dragging out an area, since this might define the beginning and end point as the same value

The vertical or horizontal half-crosshair pointer is used when only one dimension of information is wanted and a full crosshair might be confusing. One use of the horizontal half-crosshair is for setting the 1D peak-picking threshold. One use of the vertical half-crosshair is for loading a 1D column from a 2D matrix.

The hourglass cursor is shown when FELIX is performing a length calculation or other operation.

Note: If the execution of a macro is aborted because of some syntax error, the cursor may remain as an hourglass even if it is no more 'busy'. In such a case you can issue a command:
         > cur 0 0 0 1  
in the command window to restore the normal standard arrow cursor.

Accessing the FELIX command interface

You can issue FELIX commands or execute your own macros from the FELIX interface.

Click inside the FELIX command window above the status bar and type in a command, or type

to execute a macro named macfile. You may then process and analyze your data using FELIX command statements. You can use up and down arrows to retrieve up to 10 of the most recently issued commands.

Return to menu mode by selecting any menu item.

Please see the FCL Reference Guide for further information on running FELIX in command mode.

Graphics frame layouts

FELIX can display and work with multiple graphics frames (i.e., child windows) within the main window. Such a frame can either display a spreadsheet (called table window) or NMR spectrum (called spectral window). This feature lets you work with multiple spectra or display regions simultaneously.

You can create a new spectral window by selecting the File/New command or Window/Add New Frame. When a new frame is opened, it automatically become current (or active). The current window is identified by a highlighted border. You can also open several frames with pre-defined layouts simultaneously by selecting the Window/New Layout command.

The Window menu provides several options for you to arrange the child windows. By default, whenever a new window (table or spectral) is open, FELIX automatically re-arranges the layout of the windows, with the tables tiled on the left side, occupying 20% of the main window area; and the spectral windows tiled on the remaining area of the main window. You can modify or turn off this feature by selecting Preference/Frame Layout from the main menu and set Action to None.

Note: FELIX displays one menu bar and possibly one tool bar at a time. When one or more table windows are opened, only the menu bar and the tool bar of the currently activated window are visible. If you want to select a certain menu item or tool bar icon, be sure to click the corresponding window first to activate its menu and tool bar (if any).

Graphics frames can be closed, moved, resized, and maximized using the tools on the frame header.

Other graphics frame features

If the frames are not maximized, you can switch between FELIX frames by clicking anywhere in a frame. The newly selected frame is brought to the front and the picture is updated.

To move a frame, click and hold anywhere in the middle of the frame's header. A grey box appears that lets you move the frame around in the FELIX graphics window. Releasing the mouse button places the frame at the new position.

To resize a frame, click anywhere on an edge of the frame and hold down the primary mouse button. A grey box appears that lets you adjust the position of the edge selected. If you select a corner of the frame, then you can resize the frame along both edges connected to that corner.

To minimize a frame, click the button with the underscore bar in the upper-right corner. To return the frame to its original size and position, double-click the icon.

Frames may also be maximized to fill the entire FELIX graphics screen. To maximize a frame, click the maximize widget (the button with the square shape in the upper-right corner). This expands the corners of the current frame to fill the entire region of the FELIX window. To return the frame to normal size, click the maximize widget (now showing two overlapping square shapes) again.

Note: If one frame are maximized, an easy way to switch between frames is to press the Ctrl-Tab keys simultaneously.

To close a frame, click the button with the cross in the upper-right corner. This activates the frame that was last active before the newly closed frame.


FELIX macros are the most powerful and innovative feature of this NMR processing software. A collection of FELIX macros is responsible for generating the entire menu interface. A macro is an ASCII text file that contains a list of FELIX commands which are executed in sequence. Macros can employ symbols and expressions, so that you can define specific procedures applicable to your needs. In addition to being able to perform any FELIX command, macros can also contain flow-control statements to define loops, conditional and unconditional branching, and interaction with the user. Further descriptions of macros and their functions are found in the FCL Reference Guide.


FELIX contains a sophisticated database for storing spectrum information. Database files are identified by the .dba extension. By default, when FELIX starts, a database called file.dba is built and opened. Throughout your session, spectrum information such as baseline points, integral segments, cross-peak lists, and volume lists are stored in the database.

For transient processing applications like simple 1D peak picking, you may use the same database over and over, rewriting the information as needed. For more involved applications that require repeated use of the database, we recommend closing the default database (file.dba) and building a new one with an appropriate name. This helps prevent you from inadvertently deleting valuable spectrum information.

Note: Activities such as integration, baseline-point picking, and cross-peak picking require a database to be open and cannot be executed without database access.

Database editor

You can display and edit the entities (tables) in the FELIX database. You can either go through the database contents viewer (see next section) to access all the tables, or use the Edit pulldown to access some commonly used tables. Once a table is opened, you can then view, search, and modify the contents of the selected database entity.

Database contents viewer

The DBA contents viewer lets you peruse the database directory and entity structure graphically. Open this viewer by selecting the Edit/Table command.

On the left of the resulting control panel are the directories within the database.

To view the contents of a database directory, select the desired directory with the mouse, then click the Filter button (or double-click the desired directory). On the left, you will see any subdirectories in the directory you selected. On the right, you will see the names of the entities that contain spectrum and other information.

To view the contents of an entity, select that entity and click OK (or you can double-click the entity).

To quit the graphical entity viewer, click Cancel.

You can also move quickly between a range of values within a slider by clicking anywhere on the slider.