OOF: Finite Element Analysis of Microstructures

Menus next up previous contents
Next: The Message Window Up: Overview of the Graphical Previous: Overview of the Graphical   Contents


Menus consist of three main panels containing lists of submenus, functions, and variables, as well as a number of buttons.

(sub)Menus panel

Clicking (any mouse button) on any of the words in the Menus panel brings up another Menu (a subMenu) of the current menu. For instance, clicking on the word bc from the main menu in Figure 1.6, brings up an entirely new Menu which has the same form as the main Menu but is designed for setting boundary conditions.

Functions panel

Quickly clicking twice with any mouse button on a word in the Functions panel performs an action. For instance, double clicking on the function equilibrate invokes the solver to calculate the solution on the current grid subject to the current boundary conditions. If the function takes arguments, the default values of the arguments are used when the name is single-clicked.

Clicking once on a word in the Functions panel produces an additional function window. (See Figures 1.8 and 1.9 for examples.) Function windows are used to set arguments (if the function has arguments) and to provide a quick way to execute frequently used functions (even if the function's menu isn't open). For details, see Section 1.5.3.

Historically, the behavior of single and double clicks was reversed, but having a slow double click accidentally interpreted as two single clicks could be disastrous if each single click actually executed a command. With the current scheme, the worst that can happen is that you have to close an extra window or two. If you really prefer the old unsafe behavior, invoke OOF with the -singleclickfns option.

Figure 1.8: Function window for a function with no arguments.
% a clumsy but documented latex2html hack

Figure 1.9: Function window for a function with arguments.
% a clumsy but documented latex2html hack

Variables panel

Clicking on a word in the Variables panel causes a graphical interface to appear at the bottom of the Menu which allows variables to be set. Different kinds of variables are set in different ways. The interfaces are meant to be intuitive, but a few comments are in order:

Keyboard Input: Variable values that you type on the keyboard don't take effect until the Set button is clicked or the $\langle$return$\rangle$ key is pressed. Various emacs-like control characters can be used to edit typed input. For example, Control-U clears the input field. See Section 6.2 for details.

Boolean variables, taking the values True or False, are set by clicking on the buttons labeled True and False. The new value takes effect immediately.

Enumerated variables take a value from a discrete set. For example, the preconditioner variable in the main menu can be one of diagonal, block, ILU, ICP, or none. Choose the value from the pop-up menu that appears at the bottom of the Menu.

Orientations are a special kind of keyboard variable. They are either given as a single number, which is interpreted as a counterclockwise rotation about the $z$ axis (out of the screen) or as Euler angles. In this case, the three angles are to be typed in square brackets and separated by commas. (e.g. [123, 45, 10]). A random orientation can be generated by using the letter r in place of any of the numbers.

File Names can be typed. In addition, they have another button that brings up a file browser, listing the files in the current directory. You can change directories with the Directory button or by clicking on a directory name. You can restrict the files listed with the Pattern button (a pattern of *.goof* will list all .goof files). After you use the browser, you still have to click the Set button before the new value takes effect.

Character Strings can be enclosed in quotation marks ("like this") but they don't have to be. When the default value of an input string contains spaces or is empty, the quotes will be provided automatically.

Home Button

The Home button brings back the main OOF menu. It is equivalent to the ``Home'' key on on the keyboard.

Quit/Back Button

On all but the main OOF menu, the Back button brings back the previous menu. On the main menu, this button quits the program.

Close Button

This button closes the menu. If no other menu is open, the main OOF menu is automatically opened, so that there is always at least one menu on the screen.

Freeze Button

Normally, when another menu is opened (either by selecting it in the Menus panel or by using the Home or Back buttons), the current menu is closed. However, if the Freeze button is highlighted, the current menu stays open.

Record Button

OOF contains a primitive facility for recording and playing back frequently used sequences of commands (macros). Click once on the Record button to start recording. The Record button will turn into a Stop button. Execute the commands you want to record. (The commands won't actually be executed; just go through the motions.) Go back to the Menu in which you started recording, and click on the Stop button. You will be asked to name the macro you've just defined, and the macro will appear in the Functions panel of the current Menu. To delete a macro, define a new macro with the same name but containing no commands. To save and load macros, see Section 3.11.

Note that the commands contained in a macro must actually be in the menus at the time that the macro is defined. That means that macros can't refer to other macros, unless the other macros are defined first. There are OOF commands whose names are derived from user-defined objects (element groups and node groups); these commands also cannot be used in macros until the commands appear in the menus. This can cause problems if macro definitions are read from a file before the grid is loaded.

next up previous contents
Next: The Message Window Up: Overview of the Graphical Previous: Overview of the Graphical   Contents
/* Send mail to the OOF Team *//* Go to the OOF Home Page */