2.1. Text Menu System

The text menu system provides a hierarchical interface to the program’s underlying procedural interface.

  • You can easily manipulate its operation with standard text-based tools: input can be saved in files, modified with text editors, and read back in to be executed, because it is text based.

  • The text menu system is tightly integrated with the Scheme extension language, so it can easily be programmed to provide sophisticated control and customized functionality.


Note:  The console also contains an automatic-completer feature that shows the valid inputs as soon as you begin typing so that you can quickly enter your intended commands. This feature can be turned on/off in Preferences.


The menu system structure is similar to the directory tree structure of LINUX operating systems. When you first start Fluent, you are in the "root" menu and the menu prompt is simply a caret/greater-than symbol:

>

To generate a listing of the submenus and commands in the current menu, press Enter. The available submenus and commands will depend on whether you are running Fluent in meshing mode or solution mode.

For instance, the submenus and commands that are available from the root menu of the solution mode are as follows:

 >Enter
 adapt/                  mesh/                  surface/
 define/                 parallel/              switch-to-meshing-mode
 display/                plot/                  views/
 exit                    report/
 file/                   solve/

By convention, submenu names end with a / to differentiate them from menu commands. To execute a command, type its name (or an abbreviation). Similarly, to move down into a submenu, enter its name or an abbreviation. When you move into the submenu, the prompt will change to reflect the current menu name.

> display

 /display > set

 /display/set > 

To move back to the previously occupied menu, type q or quit at the prompt.

 /display/set > q
 
 /display

You can move directly to a menu by giving its full pathname.

 /display > /file

 /display//file > 

In the above example, control was passed from /display to /file without stopping in the root menu. Therefore, when you quit from the /file menu, control will be passed directly back to /display.

 /display//file > q

 /display > 

If you execute a command without stopping in any of the menus along the way, control will again be returned to the menu from which you invoked the command.

 /display /file start-journal jrnl

 /display > 

The text menu system provides online help for menu commands. The text menu online help system is described in Using the Text Interface Help System.

To edit the current command, you can position the cursor with the left and right arrow keys, delete with the Backspace key, and insert text simply by typing.

2.1.1. Command Abbreviation

To select a menu command, you need not type the entire name; you can type an abbreviation that matches the command.

  • A command name consists of "phrases" separated by hyphens.

  • A command is matched by matching an initial sequence of its phrases.

  • Matching of hyphens is optional.

  • A phrase is matched by matching an initial sequence of its characters.

  • A character is matched by typing that character.

The rules for "matching" a command are:

  • If an abbreviation matches more than one command, then the command with the greatest number of matched phrases is chosen.

  • If more than one command has the same number of matched phrases, then the first command to appear in the menu is chosen.

    For example, each of the following will match the given command set-ambientcolor: set-ambient-color, s-a-c, sac, and sa.

  • When abbreviating commands, sometimes your abbreviation will match more than one command. In such cases, the first command is selected.

  • Occasionally, there is an anomaly such as lint not matching lighting-interpolation because the li gets absorbed in lights-on? and then the nt does not match interpolation.

    This can be resolved by choosing a different abbreviation, such as liin, or l-int.

2.1.2. Command Line History

You can use the up and down arrow keys on your keyboard to go through recently used commands that are stored in history. By default, command-history will store only the last ten commands. This can be changed (for example to 15) by using the following command:

> (set! *cmd-history-length* 15)

Important:  Command-history is not available if the Ansys Fluent application is started with -g options (see Command Line Startup Options in the Fluent User's Guide).



Important:  The user inputs supplied as the arguments of the TUI command or alias will not be saved in history. By way of illustration, consider the following entry in the TUI:

> rc new_file.cas 


Important:  In history, only rc (an alias for read-case) will be saved, since new_file.cas is a user input to the alias-function.


Commands recalled from history can be edited or corrected using the Backspace key and the left and right arrow keys.

2.1.3. Scheme Evaluation

If you enter an open parenthesis, (, at the menu prompt, then that parenthesis and all characters up to and including the matching closing parenthesis are passed to Scheme to be evaluated, and the result of evaluating the expression is displayed.

(define a 1)

a

> (+ a 2 3 4)

10 

2.1.4. Aliases

Command aliases can be defined within the menu system. As with the Linux csh shell, aliases take precedence over command execution. The following aliases are predefined in Cortex: error, pwd, chdir, ls, ., and alias.

error

Displays the Scheme object that was the “irritant” in the most recent Scheme error interrupt.

pwd

Prints the working directory in which all file operations will take place.

chdir

Will change the working directory.

ls

Lists the files in the working directory.

. (period)

Prompts you for a journal file name and then run the journal file you have specified.

alias

Displays the list of symbols currently aliased.