iCAS Frequently Asked Questions

GENERAL

  • G1. I accidentally deleted the "Welcome" file with the introductory tutorial. How can I get it back?

  • G2. What are the three modes of operation?

  • G3. My navigation and toolbar color changed? Why is that?

  • G4. How do I access the iCAS settings?

  • G5. What do the various global settings control?

  • G6. How do I hide/dismiss the keyboard on the iPhone or iPod touch?

  • G7. How do I switch between the available keyboards?

  • G8. Does iCAS support the iTunes File Sharing feature?

  • G9. How can I change the font style, font size, and colors?

CAS

  • C1. Is there a user manual that describes the operation details and available functions?

  • C2. Is the CAS engine fully source code compatible with REDUCE?

  • C3. Is it possible to change the fancy output colors?

  • C4. How can I terminate a CAS session?

  • C5. The "Auto Show Plots" global option is enabled but the plot viewer did not open when I created plots in a batch run. Is this a bug?

PLOTTING

  • P1. Placeholder for Plotting #1 FAQ item


GENERAL

G1. I accidentally deleted the bundled files (e.g. the "Welcome" tutorial). How can I get them back?

All the bundled files, including the "Welcome" tutorial are available here. Either open them in your browser and copy the contents or download the files and use the iTunes File Sharing feature (see G6) to add them to iCAS.

G2. What are the differences between the various modes?

iCAS supports three modes of operation: 1) CAS mode, 2) Plotter mode, and 3) Text Editor mode. The three modes allow for a flexible work-flow to suit individual user needs and not force users into any particular work-flow. The operation of each mode is summarized below.

  • CAS Mode

    • Commands/operations are parsed by the REDUCE CAS engine.

    • Tapping the return key sends the text in the current line up to the insertion pointer to the CAS engine for execution.

    • Pasted text is processed as though it were typed (i.e. if a line containing a newline character is pasted, it is sent to the CAS engine for execution.

    • Using the macro keyboard's BATCH button sends the entire contents of the file to the CAS engine for execution.

  • Plotter Mode

    • Commands/operations are parsed by the GNUPLOT plotter engine.

    • Tapping the return key sends the text in the current line up to the insertion pointer to the plotter engine for execution.

    • Pasted text is processed as though it were typed (i.e. if a line containing a newline character is pasted, it is sent to the plotter engine for execution.

    • Using the macro keyboard's BATCH button sends the entire contents of the file to the plotter engine for execution.

  • Text Editor Mode

    • Tapping the return key simply inserts a new line. No commands/operations are executed.

    • Tapping the macro keyboard's BATCH button has no effect.

G3. My navigation and toolbar color changed? Why is that?

By default, iCAS uses different color schemes to provide visual feedback about the currently active mode (dark gray for CAS, dark turquoise for Plotter, and light blue [iPhone] or silver [iPad] for Text Editor). This can be disabled in the global options (see G4) by setting the "Mode Colors" option to OFF.

G4. How do I access the iCAS settings?

The iCAS settings are available in the built-in iOS Settings application that is on your home screen by default.  If you tap it and scroll toward the bottom you'll see an entry called "iCAS" that when tapped will reveal the iCAS settings.

G5. What do the various global settings control?

The functions of the global settings are described below.

  • General

    • Mode Colors

      This option controls whether the top and bottom bars change colors to indicate the currently active mode. If enabled, the bars are dark gray in CAS mode, dark turquoise in Plotter mode, and light blue (iPhone) or silver (iPad) in Text Editor mode. If disabled, the bars are always dark gray.

    • Save Automatically

      This option controls whether the active file is saved automatically when opening another file.

    • Abort Warnings

      This option controls whether iCAS asks for confirmation before aborting a CAS session.

    • Mail Items To

      This option specifies the default To: address for emails generated in iCAS.

    • Display Mirroring

      This option controls whether the display contents are mirrored on an external TV/monitor. This option is supported only on devices that support external TV/monitor displays (iPhone 4/iPad or later device).

    • Mirroring Scale to Fit

      This option controls whether to scale the displayed content to fit the external display resolution.

  • Keyboard

    • Key Clicks

      This option controls the key click sounds for the macro and numerical keyboards.

    • Configuration

      This option specifies which keyboards are enabled and how they are positioned relative to each other.

    • Default Keyboard

      This option specifies the keyboard that is first shown when the text area is tapped for editing.

    • Auto Hide Macros

      If enabled, the macro keyboard is automatically replaced by the system keyboard after one of its buttons is pressed, unless the button has the delete or clear operation assigned to it. If the macro keyboard is primarily used to enter CAS functions and operators, this makes it more convenient to enter a function/operator and then immediately fill in the arguments with the system keyboard without having to swipe the screen to switch back to the system keyboard.

    • Return Shows Macros

      If enabled, the macro keyboard is automatically shown whenever the "Return" key is pressed on the system keyboard. This option can be used in conjunction with the "Default Keyboard" and "Auto Hide Macros" options to make the macro keyboard effectively the primary keyboard. In this case, the system keyboard is relegated to just edit inserted macros. Of course, it is still possible to switch back to the system keyboard by horizontally swiping in the text area.

    • Macro Insertion Point

      This option controls the location of the insertion point when a macro is inserted into the text using the macro keyboard. The available settings are "Context Dependent" (default), "Beginning", "Middle", and "End". The "Beginning", "Middle", and "End" settings specify the insertion point to be the beginning, middle, or end of the macro text, respectively.

      If the "Context Dependent" setting is selected, the insertion point is set as specified by the string "\^" (without the surrounding quotes) in the macro itself or, if the macro does not contain an instance of "\^", after the first "(", first space, first newline, or at the end of the macro, in that order. The following examples illustrate this, where "^" denotes the insertion point.

      Macro Text           Insertion Point Location
      f(x) := \^ f(x) := ^
      plot( , x); plot(^ ,x);
      begin \nend; begin ^
      end;
      begin\nend; begin
      ^end
      INFINITY INFINITY^

  • Fancy Output

    • Create Fancy Output

      If enabled, all CAS output is automatically generated in the fancy format. Enabling this option is equivalent to executing the fancy_output command at the beginning of a CAS session. Fancy output can be manually disabled by turning the fancy switch off using "off fancy;" (or "off fancy$").

    • Automatically Show

      This option controls whether fancy output is automatically rendered when it is generated.

  • Plotting

    • Always Load gnuplot

      This option controls whether the gnuplot package is always loaded at the beginning of each CAS session. If enabled, it is equivalent to executing the load_package gnuplot command at the beginning of each CAS session.

    • Auto Show Plots

      This option controls whether plots are automatically shown when they are generated. Note that this option has no effect during batch execution.

    • Overwrite Plots

      If enabled, iCAS will overwrite any existing plots with the same name as the plot being generated. Otherwise, if a plot of the same name exists, it isn't overwritten and an error is flagged.

    • Default Plot Title

      This option specifies the default title used in plots without explicitly specified plot titles. The default plot title can be overridden on a plot by plot basis by specifying a title in the plot command using the title="<title>" argument.

G6. How do I hide/dismiss the keyboard on the iPhone or iPod touch?

The keyboard can be hidden by tapping the file name in the center of the top bar.

G7. How do I switch between the available keyboards?

To switch between the available keyboards, perform a horizontal swipe gesture over the text area.

G8. Does iCAS support the iTunes File Sharing feature?

Yes, iCAS files can be accessed using the iTunes File Sharing feature. Moreover, in order to work around the iTunes inability to handle subdirectories, iCAS will move any items placed at the top level of the iTunes file sharing pane into the appropriate locations after you sync your device. For example, placing a file called some.text in the top directory in iTunes, syncing, and then opening iCAS will cause that file to be moved into the TextFiles directory and thus show up in the file picker's list.

G9. How can I change the font style, font size, and colors?

The font style, font size, text and background colors can be changed by tapping the "gears" button on the left side of the toolbar. This will reveal the iCAS configuration panel. The "Abcd" button toggles the font style between Times, Helvetica, and New Courier Bold. The size buttons support font sizes between 10 and 20 points at 2 point increments. The text and background colors can be changed using the hue, saturation, and lightness sliders.


CAS

C1. Is there a user manual that describes the operation details and available functions?

The CAS engine is based on version 3.8 of REDUCE, a system for doing scalar, vector and matrix algebra, and arbitrary precision numerical calculations. The online REDUCE User's Manual is a comprehensive and detailed reference. The same manual is also available in PDF format here. REDUCE has a extremely rich library of user contributed packages for a wide variety of applications ranging from extending REDUCE's built-in general capabilities like symbolic integration to provide new capabilities for specialized fields such as differential geometry, vector calculus, linear algebra, tensor manipulation, physics quantum operator computations, etc. The available packages and their documentation is available at the REDUCE Documentation Page. The majority of the packages listed there are included in iCAS. To use an optional package, use the "load_package" command. For example, to load the Linear Algebra package use the CAS command "load_package linalg$".

C2. Is the CAS engine fully source code compatible with REDUCE?

Yes, the CAS engine is fully source code compatible with REDUCE. However, file I/O commands (in, out, and shut commands) are not currently supported. If there is sufficient user demand, support for file I/O commands may be implemented in a future update.

C3. Is it possible to change the fancy output colors?

Yes. iCAS supports custom procedures to control the color of echo'ed input text and the page (background) color. The pagecolor() and color() commands accept any one of the 68 standard color names defined by dvips (see here for the list of supported color names) or a custom color name defined using defcolor(). The names must be specified as strings (i.e. "color name"). pagecolor() specifies the background color and color() specifies the text color for input text (i.e. the document body text in the generated LaTeX file) and error messages, if any, in fancy output. defcolor() takes four arguments: defcolor(colorname, red, blue, green), where colorname is the name of the color as a string and red, blue, and green are integers in the range [0, 255]. For example, defcolor("PureRed", 255, 0, 0) would specify a 100% red color. defcolor() must precede the use of the defined color in the file.

The following is an example to generate fancy output with a light blue background, red input text, and black output.

  defcolor("lightBlue", 237, 243, 254);
  pagecolor("lightBlue");
  color("Red");
  fancy_output();
  .
  .
  .
						
The default colors are white background and black text. Output is hard-coded to black and cannot be changed at this time.

C4. How can I terminate a CAS session?

An active CAS session can be terminated in several ways. If the CAS engine is idle (i.e. "CAS Ready") then issuing the bye or its synonym quit command will terminate the active session and start a new one. If the CAS engine is busy (i.e. "CAS Busy") then tapping the "Abort" button at the top right of the window will abort the active session and start a new one.

C5. The "Auto Show Plots" global option is enabled but the plot viewer did not open when I created plots in a batch run. Is this a bug?

No, this is not a bug. Plots are not automatically shown during batch runs. The "Auto Show Plots" option is only valid during interactive execution.


PLOTTING

P1. Placeholder for Plotting #1 FAQ item

Placeholder for Plotting #1 FAQ item.