# What's fixed in release 4.1.2?

Patch 4.1.2 for Analytica and ADE is scheduled for release on 12 Sep 2008.

See also Analytica patch release 4.1.1 for changes included in the earlier patch, which was released 31 July 2008.

To upgrade, just download the relevant release (Analytica or ADE 4.1.2) from the Analytica Download page. Run the installer. You will not need a new License Code if you already have 4.1.

## Libraries

- This build includes an improved and extended Distribution Densities Library, which now contains analytical density functions for all built-in continuous distributions, analytical probability-at-a-point functions for all built-in discrete distributions, analytical cumulative distribution functions for continuous and the most important discrete univariate, and inverse cumulative distributions for all continuous distributions and the most important discrete. This library has important applications for statistical hypothesis testing, importance sampling, etc.

## Graphing

- Stacked bar graphs work again. (They weren't stacking in 4.1.1)

- Improvements to the rendering of stacked and overlapped bar graphs, including better 3-D effects. Previously, in some cases overlapped or stacked bars would occlude data with smaller values. Also the 3-D effects are now 3-D realistic even for complex overlapping cases.

## Diagrams

- The
*Resized Centered*setting (on the diagram menu) no longer has any effect when you resize text, picture, input or output nodes. This makes it more convenient to edit control panels, etc.

## Tables

- When SubTable cells map to a non-valid source location, they are now rendered empty with a cross-hatched pattern and don't allow entry.

## Built-in Functions

- LinearInterp, CubicInterp, etc: Ignores points where D or R is NULL.

- GetFract had some inconsistencies on what was computed when the data set contained a single point (i.e., index is length 0 or 1, or fewer than 2 points have non-zero weights). For one point, the fractile is now (as it should be) the value of the single point. For zero points, it now returns Null consistently. Also, GetFract now ignores Null data points when computing the fractile (note that this will result in a change to your results in existing models if you have arrays containing Null values).

- MonoCubicInterp: Now returning something sensible. (This is an internal, unexposed/unsupported interpolation function)

- Experimental (non-exposed) function, IntraTable added to allow dependencies between the cells of an edit table.

- A security enhancement now prevents RunConsoleProcess from evaluating when called from an input node. (This is so users of Power Player or ACP cannot successfully type a RunConsoleProcess expression into an input of your model).

- The algorithm Regression uses when underconstrained (when the number of basis terms exceeds the number of data points) has been changed to be more efficient, robust and produce better results. In this case, when the number of linearly independent basis terms is equal to or less than the number of data points, the data points can be fit precisely. As before, a warning is issued in this case. Also, Regression's handling of NaN and INF terms in the basis has been made more robust. In general, if NaN or INF appears in the basis, the corresponding coefficient will be 0. Without NaN or INF in the basis, you can compute the predicted point for a regression using:

- Sum(c*b,K)

where *c* is the result of Regression, *b* is the basis and *k* the basis index. However, when *b* contains INF or NAN, because 0*NaN and 0*Inf are indeterminant, you'll need to use:

`Sum(if c = 0 then 0 else c*b, K)`

- A bug in SingularValueDecomp was fixed that prevented the function from working with certain index orderings.

## Enterprise

- Handling of SQL Server's SmallDateTime data type.

## ADE

- CAEngine::OpenModel now returns an error code (58), and message to CAEngine::OutputBuffer, when a linked module file is not found. (Rather than a non-specific warning).

- ADE now full automates definition rewriting when an identifier name changes.

- ADE had problems loading nested linked modules located in different subdirectories. The problem occurred both when loading models and when using CAEngine::AddModule, when the second-level nested linked module was in a different directory from the top-level linked module.

## User Guide

- Fixed a bad formatting problem with the description of SingularValueDecomp that made it unreadable.

## Other General

- Fixed a bug where the 12:00AM or 12:00PM were being parsed incorrectly, returning a time that was 12 hours off.

- Fixed crash when model stored with sample size > 30000 is loaded into Player (which doesn't allow a sample size that large).

- Fixed a problem in which data from Analytica could not be pasted out of Analytica and into an external application, where Analytica's copied data never entered the system clipboard, even though it would paste within Analytica itself.

- Users of browse-only models previously could not paste data into the model from external applications. This restriction now only applies to Player edition users. So, Professional edition or Power Player edition users who run a browse-only model can paste data into the model from an external application.

- In some environments, the Analytica clipboard would get out-of-sync with the system clipboard, so that when you tried to copy/paste data from Analytica to an external application, the previous thing on the system clipboard would paste instead. At least for the cases we know about, this is now fixed.

Comments

Enable comment auto-refresher