ct. 18, 1995 v. 1.00
===========================================================================
+ First release of CurveExpert 1.0.
Oct. 26, 1995, v. 1.01
===========================================================================
New Features:
+ More attractive help file, with more keywords for searching
+ new help search facility available directly from CurveExpert
Bug Fixes:
+ If a polynomial was already calculated, selecting another
polynomial of a differing degree incorrectly pulled results
from the cache instead of recalculating the curve fit. Fixed.
+ running two versions of CurveExpert is prevented, since two
simultaneous instances cause stack faults.
+ if the data set is sorted, all interpolations are now marked invalid
as they should be.
+ "Apply to All" did not necessarily force the current attributes
of a graph to the current graph (only if the user clicks OK). Fixed.
+ The scrollbar did not get reset to the top when the user read in
a new data file. Fixed.
+ The structure of the code has been undergone some major changes to
ease porting to Windows 95 and Windows NT. I was exceedingly
careful, but I hope this didn't introduce new bugs! :-)
+ For some reason, the help file didn't have any single or double
quotes in it. This has been corrected, so it is now easier to read.
+ The help file was not terminated when CurveExpert was. Fixed.
+ The Window and Help menus were moved to more conventional positions
on the menu bar.
Nov. 4, 1995, v. 1.10:
===========================================================================
New Features:
+ Previously undocumented logical functions can be used in the
user-defined models. See the help documentation.
+ Current filename now appears in the title bar.
+ QuickCalc has been expanded to find the x-value, given the
y-value.
+ Optimizations have been applied to many routines, making
the user interface more responsive and the algorithms quicker.
Changes:
+ File reading system has been revamped.
+ the color scheme on all windows now conforms strictly to the user
defined system colors.
+ Dialogs were expunged of all Borland controls (except for buttons)
since they conflicted with user defined color schemes.
+ The QuickCalc dialog now automatically shifts focus back to the
edit control and selects all text after the OK button is pushed.
This makes it easier to calculate many points at a time.
Bug Fixes:
+ pressing the tab key to force the built-in spreadsheet sometimes
added points onto the end of the data set. Fixed.
+ If a graph window was closed and then reopened (except after a
CurveFinder operation), the comments in the Graph Info dialog
were not correct. Fixed.
+ The Cut Last Row/Undo pair now functions properly.
+ The the graph of a polynomial fit would be reset if the data was
changed in the data window. Fixed.
+ The scaling procedure did not grab the latest data out of the
data window's edit control if it was active, resulting in one
point not being scaled or translated. Fixed.
+ A constant starting with a decimal (eg, .25) caused CurveExpert to
bomb (when defining a user model). This has been fixed so that
these constants are accepted.
+ A comma-delimited data file was not read correctly. A new file
reading system was implemented to read files with any type of
(unspecified) delimiter between the data columns
+ if a data file was not read correctly, the filename in the status bar
showed the unreadable file instead of the previous file. Fixed.
+ the common dialogs (file open/save, print) did not accept keystokes
until after they were clicked with the mouse, which makes it
terribly hard for non-mouse users. Fixed.
+ If the current path was changed from CurveExpert, the help file was
not found. Fixed.
Nov. 9, 1995, v. 1.11
===========================================================================
New Features:
+ the data point markers on graphs can now be changed to filled or
unfilled circles, squares, triangles, pluses, or crosses.
Changes:
+ Small optimizations made to the speed of the user interface
+ The main window is now fully resizable
+ The position and size of the main window is saved on exit and
restored the next time CurveExpert runs
Bug Fixes:
+ Whoops! The new file reading procedure masked out all minus
and minus signs in the data, so that numbers like -10 and 10e-3
were not read correctly. Fixed.
+ the exception reporting dialog box did not properly draw the
exclamation point's background, which should match the dialog
color. Fixed.
+ the single-precision version still read files incorrectly
sometimes. Fixed.
+ the initial guess dialog sometimes opened unconditionally on
the next fit performed after a CurveFinder evaluation. Fixed.
Nov. 13, 1995, v. 1.12
===========================================================================
New Features:
+ Differentiation and integration of a calculated curve fit is
now supported, similar to the implementation of QuickCalc.
Changes:
+ If background processing is enabled, during iteration the cursor
is a combined arrow/hourglass to inform the user that he/she can
still perform operations.
+ editing points in the spreadsheet is now prohibited while any
iteration is taking place.
+ Drawing of data points on a graph is internally clipped if it
is outside of the graphing window. This allows for faster
graph drawing if many points are outside of the graph pane.
+ A separate set of application-wide defaults are maintained for
the single-precision and double-precision versions (registered
version only)
Bug Fixes:
+ Periods by themselves in the user models were parsed as the value
zero instead generating a syntax error. Fixed.
+ A plot that was copied to the clipboard failed to "clip" data
points that were outside of the graphing pane, resulting in points
being drawn outside of the intended area. Fixed.
+ The information button on a graph window would sometimes disappear
if a window was sized smaller. Fixed.
+ After copying a plot to the clipboard, the current graph resolution
was incorrectly reset to 1. Fixed.
+ Extremely small parameter guesses were not allowed in the parameter
guess dialog, since its precision was limited to six places. Fixed.
Nov. 25, 1995, v. 1.13
===========================================================================
Changes:
+ The data manipulation tools have now been merged into one
organized, tabbed dialog.
+ The model analytical tools have now been merged into one
organized, tabbed dialog.
+ Cascading a large number of windows would sometimes result in some
windows being moved off of the screen. Now, the cascade restarts
at the top left if a window might be moved off-screen.
+ The built-in models have been reordered so that operations such
as calculations and window manipulations naturally fall into a
grouped arrangement.
+ the graph autoscaling algorithm has been rewritten to be more
reliable
+ The info button on the graphing window has been changed and moved
to be less obtrusive.
+ sizing restrictions on the graphing windows have been removed.
Bug Fixes:
+ Whoops! Another problem with the file reading engine caused
columns starting with a negative number to be discarded. Fixed.
+ Entering a user model with no parameters was allowed when it
shouldn't have been. Now, a syntax error is generated.
+ the Window|Tile command sometimes worked strangely if graphing
windows had been closed prior to invoking it. Fixed.
+ the Window|Cascade command did not properly cascade windows
that were minimized. Fixed.
+ the last tick and label sometimes wasn't shown on the x/y axes of
plots. Fixed.
+ the implementation of filled points didn't produce a filled
entity for the circle or triangle when printed. Fixed.
+ The user was still asked whether to save a file or not upon exiting,
even if the file had just been saved. Fixed.
+ CurveExpert will now run even if ctl3dv2.dll is not found.
Dec. 2, 1995, v. 1.14 (Shareware Only)
===========================================================================
Bug Fixes:
+ Graph Attributes/Graph Scaling Dialogs were not initialized
properly in the Shareware version. Fixed.
Dec. 31, 1995, v. 1.15 (Not Released)
===========================================================================
Changes:
+ Sometimes, resizing a graph would result in the line width being drawn
incorrectly (not the user-specified line width, screen only). Fixed.
+ delayed rendering of plots is now supported, to greatly increase
drawing performance with user model plots and/or plots with a large
number of data points
+ (registered only) the single precision package has now been optimized
for single-precision arithmetic
+ the directions on the graph window are now removed if they will be
collide with the error information. This leads to cleaner plots,
especially with small graphing windows.
Bug Fixes:
+ if one minor tick was selected (on either axis), there was a chance that
one too many tick labels would be printed. Fixed.
+ some stray (and inappropriate) directions were left on the differentiate
and integrate dialogs. Removed.
Jan. 14, 1996, v. 1.20
===========================================================================
New Features:
+ many new graphing features and easier-to-use graphing properties
interface has been added
+ the covariance matrix and residual plot are now available in the
revamped information dialog
+ much faster nonlinear regression performance over version 1.1 (between
17% to 45% improvement in speed, depending on the number of parameters)
Changes:
+ each graphing window no longer appears in the Win31 tasklist; and
each window no longer shows up in the Win95 taskbar.
+ weighting values by 1/y^2 during nonlinear regression is now
implemented
Jan. 25, 1996, v. 1.21
===========================================================================
Bug Fixes:
+ the equation bitmaps in the initial guess and/or information dialog
did not update properly at times. Fixed.
+ if the ctl3dv2 module could not be loaded, the info dialog GPF'ed
when opened. Fixed.
March 5, 1996, v. 1.22
===========================================================================
New Features:
+ the Preferences dialog has been revamped, with many new user-
defineable options added for printing, regression/math options,
and application options.
+ added right-click menus to all main window regions
Changes:
+ The limitation of two-line titles in metafiles has been removed.
+ new and improved debugging console with a nicer appearance and
more information. Necessary because of the ongoing port to Win32.
+ a button that coordinates the foreground (frame) color and the
text colors was added to the graph properties dialog
+ the ability to draw grid lines at each minor tick mark was
added
+ drag-and-drop from the file manager to CurveExpert is now
supported
+ data information dialog box was widened to accommodate large
numbers.
+ a new and much faster data clipping algorithm is now used
+ clipping and sorting operations now take place in the background,
instead of hogging the CPU
+ two new symbols added to the graphing properties dialog
Bug Fixes:
+ if the "Weight by Y^2" option was turned on, the results of
nonlinear regression were likely to be a local minima or not
converge at all. Fixed.
+ It was not possible to put a single percent sign in an axis label
without typing '%%' in the axis label edit field. Fixed.
+ if the graph extents were set just right on the x or y axis, then
one grid line would not draw. Fixed.
+ if the main window was minimized when CurveExpert was exited,
the window was not restored to the correct position the next time
CurveExpert was run. Fixed.
+ a GPF occurred if a data set with over 8192 data points was
sorted. Fixed.
+ corrected an erroneous reading of the allocated memory (in bytes)
that occurred if the quadratic fit was ever used.
+ if a residual table of an extremely large data set was copied to
the clipboard in the info dialog, a GPF occurred. Fixed.
+ if a large data file with very large numbers was read, the first
examination of that file would cause a program abort due to an
overflow. Fixed.
May 20, 1996, v. 1.23
===========================================================================
New Features:
+ 32 BIT VERSION FOR WINDOWS 95 AND WINDOWS NT RELEASED!
+ added x/y averages, minima, maxima, and standard deviations to
the variables available for custom regressions
+ added the capability to swap the x and y data
+ (32 bit only) new tooltips feature gives quick access to a toolbar
button's function
Changes:
+ All BWCC controls have been removed, and as a result, several
dialogs were redesigned. This gives a more consistent feel to
the application, eases the port to Win32, and frees CurveExpert
from having the BWCC.DLL library distributed with it.
+ (16 bit only) draws the missing line between the toolbar and menus
if running under Windows 95.
+ added code to properly shut down CurveExpert if the user logs off
while it is running.
+ fit type has been added to the caption of a residual plot window
to make it clear where the window originated.
+ even if no changes were made to the graph from the Graph Properties
dialog, the plot was re-rendered. Now, a check is made to see if
any changes were made to determine if the graph should be redrawn.
+ the help file has undergone some formatting changes and additions
+ support for multiple-copy printouts was added
Bug Fixes:
+ the table-generation and export-file mechanisms printed all zeros
if a number was too small. Fixed. Now, the numbers are printed
properly in exponential format.
+ the Preferences dialog would cause a program abort if no printer
was installed. Fixed.
+ the function that draws the graph title had a potential memory
leak. This would manifest itself also in the Residual page from
the information dialog. Fixed.
+ the path field in the application preferences dialog would not allow
horizontal scrolling, so the user was limited to a short data file
path name. Fixed.
+ the ranking chart would sometimes get corrupted during a CurveFinder
operation on a small data set (at unpredictable times). Fixed.
+ the underline style was ignored if it was specified for a font that
would appear on a graph. Fixed.
+ a memory leak that caused a "floating point error" in the lagrangian
interpolation routine was fixed
+ if a x or y axis label contained more than 50 characters, a
subsequent display of the plot would cause a crash. Fixed.
June 2, 1996, v. 1.24
===========================================================================
Changes:
+ when the 32-bit version opened a help file under Win32s, it went
straight to the help file contents. Now, it opens the help file
contents dialog box.
+ while reading a file, the progress is reported in the status bar
Bug Fixes:
+ under Windows NT, all of the tabbed dialog boxes (preferences,
graph properties, graph analyze, graph information) were blank.
Fixed.
+ the history (dump) file did not have the last iteration written
to it if the iteration converged. Fixed.
+ CurveExpert might not detect that it is running under Win32s
correctly. Fixed.
+ if a line in a data file started with a +, it was not recognized
as a number. Fixed.
November 7, 1996, v. 1.30
===========================================================================
New Features:
+ uncertainties (standard deviations) in each data point can now
be used
+ built-in spreadsheet facility has been enhanced -- now looks
and behaves *much* more like a spreadsheet
+ spreadsheet facility has multilevel undo/redo capability
+ cut/copy/paste of ranges in the built-in spreadsheet and between
other spreadsheets (Excel, Quattro Pro, etc.) is now implemented
+ enhanced file import facility gives more flexibility for
reading data files
+ a most-recently-used file list is maintained in the File menu
+ [32-bit, '95 interface only] Internet-aware links in the Help
menu directly access the CurveExpert home page(s)
Changes:
+ the splash screen is now drawn in the correct user-defined
color, instead of being hard-coded to light gray.
+ the graphs now comply with the user-defined color scheme
unless set explicitly by the user.
+ there is no longer any limit on the number of data points that
can be entered manually (previously 100)
+ the main window now responds appropriately when certain system
settings change, such as the scroll bar width
+ more info was added to the debugging facility
+ the status bar now shows what degree of polynomial is being
computed
+ some menu items have been rearranged to form a more consistent
user interface
+ if the file is modified, an asterisk appears beside the filename
in the title bar; when the file is saved, the asterisk is removed
+ typing a title in the "Graph Properties" dialog now automatically
deselects the "Show Header" checkbox.
Bug Fixes:
+ certain curve fits were turned off when they shouldn't have been
if zeros or negatives existed in the x data. Fixed.
+ strange "NAN"s would occasionally appear in the released 32-bit
version. This was due to a Microsoft optimizer bug; a workaround
has been implemented.
+ On Windows NT, if a table file was to overwrite an already existing
file, CurveExpert would terminate. Fixed.
+ if a two-column data file had a one-column entry later in the
data file, CurveExpert would crash. Fixed.
+ an internal error that might cause a termination while using the
CurveFinder was fixed
+ CurveExpert would crash soon after invoking the preferences dialog,
if the polynomial window was open and the degree in it did not
match the selected degree in the preferences dialog
+ the CurveFinder tool now correctly handles polynomial calculations
when the Polynomial family is selected
+ if a data set line began with spaces or tabs, it could be
misinterpreted as having one more column than it did. Fixed.
+ the help button for the ArcLength page in the "Analyze Graph"
dialog did not work. Fixed.
+ the new-style help is now used unter Windows NT 3.51 by default
+ if a malformed file was attempted to be read, the toolbar
was (mistakenly) reenabled anyway. Fixed.
+ various and sundry misspellings, typos, and formatting errors have
been corrected in the on-line documentation.
November 18, 1996, v. 1.31
===========================================================================
Changes:
+ [32-bit only] Bessel functions of first and second kind
added to available user model functions
+ ceil and floor functions added to available user model functions
Bug Fixes:
+ [32-bit only] When installing to a WinNT 3.51 platform. no
Program Manager group and icons would be created unless the
user was the administrator. Fixed.
+ [16-bit only] If a math error occurred and was handled in
CurveExpert and 3d dialogs were being used, dialogs became
transparent and unusable until CurveExpert was restarted. Fixed.
February 24, 1997, v. 1.32
===========================================================================
New Features:
+ A history page has been added to the Graphing Information dialog
to give the chi-square and parameter histories for each regression.
+ a preview plot gives quick access to visualization of various
regressions on the ranking chart
Changes:
+ if the y column is scaled and STD data is also present, the
STD data is scaled by the same factor as the y column
+ the ranking chart interface has been changed to mesh
smoothly with the preview plot
+ comments in the information dialog were not available
after running CurveFinder or closing/reopening a window. This
data is now stored with the fit coefficients, so the comments
are available at any time for a valid curve fit result
+ various speedups implemented in the nonlinear regression routine
Bug Fixes:
+ when sorting data and the standard deviation column is
active, the STD data would not be carried with the data
point. Fixed.
+ if pasting more than 25 points, CurveExpert would freeze.
Fixed.
+ Several memory and resource leaks fixed.
+ if an exception occurred when plotting a graph, the message
stating so would be misplaced on the window/metafile/printout.
Fixed.
+ the keyboard interface on the File Import Dialog was nonexistant.
Added.
+ After clipping the data set, if the user tried to undo a previous
action, CurveExpert would crash. Now, the undo is disabled in
this situation.
+ When dragging and dropping a file on CurveExpert, the title
of the file became "TITLE.ERR". Fixed.
+ when a file was opened off of the MRU menu or dropped on CurveExpert,
it could not be saved to the same file. Fixed.
February 26, 1997, v. 1.33
===========================================================================
Bug Fixes:
+ For users with an international version of Windows where
the comma is used for the decimal point, CurveExpert would
not read files properly. Fixed.
+ In help file, correlation coefficient was documented
incorrectly. Corrected.
March 19, 1997, v. 1.34
===========================================================================
Bug Fixes:
+ [16 bit only] plots with a log x axis were not plotting correctly.
Fixed.
+ Corrections made to keyboard interface in File Import Dialog.
March 1, 1998, v. 1.36
===========================================================================
New Features:
+ a facility to transform a column of data at a time by selected
functions was added
Changes:
+ the initial viewable state of the CurveExpert window now reacts
correctly to external control of the process spawning it
+ a switch was added to toggle the solid line at X=0 and Y=0 on
the graph
+ some additions and changes to the help documentation
Bug Fixes:
+ a 19th order polynomial fit caused a crash; fixed.
Jan 1, 2001, v. 1.37
============================================================================
Changes:
+ updates to address and payment information
June 13, 2003, v. 1.38
============================================================================
New Features:
+ added setting to curves.ini file to allow international users to
set the decimal point appropriately based on their locale
Changes:
+ Updated contact information and order form