Mathcad Plus 6.0/Mac
Performance bugs


  • Excessive screen updating - even when only part of a window as been obscured, Mathcad insists on repainting the entire window. This isn't so bad on PowerPCs, but ranges from annoying to painful on a 68040 Mac, especially when rendering graphs or rendering in the background, slowing down other applications. It makes the program feel slower than it already is.

    The problem is even worse when handbooks/workbooks are open, such as the tutorial files. These windows seem to be excessively updating all the time, more so than the regular worksheet windows. Mathsoft should consider using offscreen bitmaps to update windows, then use a single operation to update an entire window all at once.
  • When copying a 2D graph from Mathcad to another application such as the Scrapbook, the pasted graph does not display properly.
  • Doing the matrix smoothing function on p. 317 (Fig. 15) gives the following times as measured by a stopwatch:

    Calculate A matrix: 6 seconds
    Calculate B matrix (smoothed matrix) : 47 seconds


    Similar C code using CodeWarrior 9 with full optimization and pipelining yielded the following results on a PowerMac 6100/80:

    Calculate A matrix: <0.1 seconds
    Calculate B matrix (smoothed matrix) : 3 seconds

    The smoothing algorithm is done using approx.58*58*(9 additions + 1 division) = 33,600 floating point operations, plus assignment operations and branch operations. Given the speed of a 601 CPU, I don't understand how this can take 47 seconds, even with Mathcad's overhead. Their code is probably efficient on the PC, which leads to the conclusion that they made a bad choice of Mac development tools.
  • Cannot find strings with spaces in them. Neither can I replace found strings with strings containing spaces.
  • Equations can become corrupted in low memory situations. This is manifested by the equations showing "static fringes" on the left and top sides (about 4-5 pixels wide) for math regions. It affects both math and text regions. The only workaround is to quit and restart Mathcad. Sometimes it crashes with a type 1 (bus) error.
  • When double-clicking on a link, a copy of the worksheet is opened. Mathcad should check if the target worksheet is already open (for example, it may contain unsaved changes) before opening a new window and creating multiple instances of the target.
  • Excessive screen refresh while selecting elements of scrolling output tables. Even with the interpretive nature of Mathcad and slowness in displaying the worksheet, this discrepancy is still surprising.
  • Problems with Handbooks - cannot be used at any zoom level other than 100%
    • Open Tutorial handbook. Go to first topic.
    • Set Zoom to 75% or 50%. Click on OK.
    • Page resizes properly to selected zoom level.
    • Click on next topic button on toolbar (or any other page other than the current one).
    • The next topic does not show up at the reduced zoom level and/or graphics are rendered at 100% zoom.
  • The Mathcad application takes over two minutes from the time the program icon is double-clicked to the time a new worksheet is opened.
  • Unable to scale graphic. When pasting graphics from the Scrapbook or Canvas, Mathcad is unable to scale the graphic. Being able to scale graphics is important, especially since Mathcad does not have any drawing tools. Having a Mac-compliant way to store graphics allows storage of all data in one Mathcad file instead of having to keep other files for diagrams and illustrations. Graphs and equations copied from Mathcad and pasted into the Scrapbook are not editable when being pasted back into Mathcad.
  • Right margin of paragraph text area does not change even if right margin is set narrower or wider. Moving resize handles causes paragraph to become a text region.
  • Try to create a hexadecimal number (p. 151). Typing the following doesn't give the expected result (a hex number). Maybe the Mac-only feature of automatic multiplication is interfering with the ability to type letters next to numbers.
    • addr:4FFFh
  • Periodic example on p. 141 (Figure 15) was entered in Mathcad. File was saved and window closed. When file is opened, the x-y plot became a polar plot.

    This is due to worksheet corruption - there is no way to reverse the corruption. Copying and pasting the regions to another (blank) worksheet will transfer the corruption when the new worksheet is saved. The only workaround is to type everything all over again.
  • Crash when closing animation windows
    • Open Binomial Animation window (QuickSheets)
    • Animation plays fine, but pressing cmd-W closes worksheet window *behind* Animation window (not intuitive at all).
    • Clicking on Animation window close box causes a crash into MacsBug with the following assertions:

      Deleted movie, about to dispose window
      Disposed of window
  • Unable to reestablish link after linked file is moved to another folder.
  • Equations in old Mathcad 3.1 files are shown normally on-screen, but are in italics when printed (HP 4MP, LW 8.4 driver).
  • The file http://www.Mathsoft.com/mcad60/ug/pgridlne.mcd does not match that shown on p. 479 of the Users Guide. The lines on the polar plots do not meet at (0,0), but rather veer to the lower right when approaching (0,0).
  • Example given on p. 328 of the Users Guide. The problem here seems to the Mathcad's inconsistent use of inequality (>,>=,<,<=) symbols. Where are the equivalents for > and < for 68K Macs (other than the palette)??
    • Per the documentation, ctrl-9 and ctrl-0 indicate >= and <= constraints. These don't work on a 68K Mac but work on a PowerPC Mac.
    • The documentation says to use > and < to indicate > and < constraints. These don't work on a 68K Mac but work on a PowerPC Mac.
    • The palette buttons for <,>,<=,>= works.
    • The only two keyboard keys I've gotten to work on both 68K and PowerPC Macs are opt-> and opt-< to indicate >= and <= constraints. These work, and are actually consistent with the font definition, but is not documented on p. 327.
  • If marker lines are defined, rescaling the graph axes causes the marker text (not the market line, but the text defining the value of the marker line) to be shifted up or down from where they should be. If I've defined Show Markers from the Axis format dialog box, I'm able to define two constant markers. However, the placeholders defining the constant markers are invisible once they are defined. A workaround is to click on the expression being plotted and press the comma. This forces the marker placeholders to appear above and below the expression being plotted.
  • The views on the 3D scatter plots (rotation/tilt) are dependent on the scaling used for the axis. If the axis scaling is changed, the (apparent) view also changes. For example, the values for (rotation/tilt) to duplicate the screenshot on page 533 of the Users Guide are not intuitive at all. One would expect a tilt of about 45 to 60 degrees, but a tilt value of 89 degrees is required (and even then, it is limited to 1 degree resolution).

    Most other graphing programs (SigmaPlot or DeltaGraph) use azimuth/elevation coordinates *independent* of the axis scaling and instead use a fixed scale dictated by the graph area and/or screen resolution.

    Again, the modal Format Graph dialog boxes makes viewing data more difficult than it has to be. For example, the Z axis is usually scaled on the worksheet to get the best view. In Mathcad, I have to constantly open/apply/close the Format Graph dialog box, change the scale factor on the worksheet, wait for the graph to refresh, and then iterate all over again, just to get a good view of scatter plots. I'd much rather use the time to get better curve fits than trying to wrestle with separate (and slow) graph data and annotation commands.
  • Various problems with QuickTime and animation:
    • The Creat Animation Options button does not work (p. 546)
    • Unable to cancel an animation in progress (one should be able to press ESC or cmd-. to abort lengthy calculations).
    • Even if animation windows are in the front, menu commands affect the worksheet window. If animation windows are front, then most menu commands should be disabled.
    • Most users press cmd-W to try to close the animation window. Instead, they close the worksheet behind the animation. This is very dangerous - the user sees the "Save document??" dialog box and says no, thinking that he does not want to save the animation. Instead, he loses any changes made to the worksheet itself.
    • Animation windows should be opened from the File...Open menu. There is no need for a playback menu. Also, saved animation files don't have a proper creator - should be either Mathcad or Apple SimpleText.