Analytica Release Notes/Changes in Patch Build 4.4.4

Revision as of 21:17, 29 October 2012 by Lchrisman (talk | contribs) (In progress)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

<< What's new in Analytica 4.4

This page lists changes that have been incorporated into the 4.4.4 patch release since the 4.4.3 patch release. In pages like What's new in Analytica 4.4?, we usually only list enhancements, not small bug fixes like the ones listed here. But because this is a patch release, and its only purpose is to provide fixes to lots of small bugs, we list them here.

Instabilities (crashes)

  • Fixed crash that occurred when matching records in the Uptime model. Requires a very special and complex set of circumstances to be present to reproduce.
  • Fixed a bug that caused Analytica to hang when SplitText was called with an array-valued parameter.

Engine and Evaluation

  • The All in «module» syntax in [[DefineOptimization] was not parsing in 4.4.3. This has been fixed.
  • A node with CachingMethod is set to "Release when children computed" was being computed twice, when it should have been computed a single time.
  • The Npv function incorrectly reports "The second parameter, values, should be numeric, but the array passed contains a non-numeric value at Time=0..." when the array passed is a zero-length array.
  • The EvaluateScript command is supposed to consume any typescript output, including any error message. Error messages and some output (e.g., when creating an object) was not being grabbed in 4.4.3.
  • When using SubTable(A,fulDeterm:true) to obtain the contents of a DetermTable that has been loaded but not yet viewed or evaluated, the result was not right in 4.4.3. Some cells are blank where they should have zeroes, etc.
  • A certain DetermTable was evaluating to Undefined if its edit table has never been viewed since the model was loaded.
  • In a certain model, a circular dependency is reported in the typescript when the model is loaded, but no circular dependency exists.
  • The result of a comparison (e.g., B=1 or B>1) no longer drops indexes when a zero-length index is present. Similarly, the evaluation of Table(zero_len,In1) now preserves In1 in the result.

File Saving and Loading

  • In many models, the reformVal and reformDef attributes (which are used by Analytica internally to remember the pivot of edit and result tables) contain identifiers that don't exist any more in the model. When those models are loaded, those lines cause syntax errors that are reported in the typescript window. These don't impact anything, but they are confusing for users, so they have now been suppressed.
  • If you load a model created in Analytica 4.5 into 4.4.3, it fails to report that "this model was created in a newer version".
  • Immediately after adding a linked module to a new model, the File→Save menu option appears to save but doesn't ask for a filename. Apparenty the module was marked dirty (but shouldn't have been) and the model itself was not marked dirty (but should have been).


Clipboard

  • When copying multiple nodes from one module to another, if an identifier appears in the TableCellDefault ("Cell Default") attribute of one object, and that object is also being copied, the identifier is now updated so as to preserve the same relative relationship that existed originally.

Libraries and Example Models

  • The CallOption and PutOption functions in the Financial Library would return NaN when the time to expiration is zero and the stock price equals the strike price.

ADE

  • When you use CAObject::GetAttribute("value") or CAObject::GetAttribute("probValue") to get the mid- or sample-value of a variable, and an evaluation error occurs when evaluating it, it was returning ErrorCode==1 ("Unimplemented"). The ErrorCode was wrong, it should have been (and now is) 62 ("Error evaluating expression").
Comments


You are not allowed to post comments.