Archived: LabVIEW 2009 MathScript RT Module Known Issues

NI does not actively maintain this document.

This content provides support for older products and technology, so you may notice outdated links or obsolete information about operating systems or other relevant products.

Overview



This document contains the LabVIEW 2009 MathScript RT Module known issues that were discovered before and since the release of LabVIEW 2009 MathScript RT Module. Not every issue known to NI will appear on this list; it is intended to only show the severe and more common issues that can be encountered.

Fields

Each known issue includes these fields:
  • Issue ID
  • Legacy ID - The issue's legacy ID from NI's deprecated bug reporting database (if applicable)
  • Issue Title
  • Problem Description
  • Workaround
  • Reported Version - the earliest version of LabVIEW the issue was reported in
  • Resolved Version - version the issue was resolved or was no longer applicable
  • Date Added - the date the issue was added to the document (not reported date)

LabVIEW 2009 Known Issues List

The Known Issues for LabVIEW 2009 can be found in the LabVIEW 2009 Known Issues document.

Contacting NI

You can contact us by phone, email, or the discussion forums. Visit the NI Website to contact us. If you are contacting NI in regards to a specific issue, be sure to reference the ID. If you have feedback on this document, please contact NI on this NI Developer Zone post.

Windows 7

National Instruments is committed to maintaining compatibility with Microsoft Windows technology changes. However, NI has become aware of a number of issues of potential significance regarding Microsoft Windows 7. To learn how Windows 7 affects your use of NI products, visit ni.com/info and enter the Info Code windows7.

Known Issues by Date

The following items are known issues in MathScript RT 2009 sorted by Date.

52985 4DJFLU00Save for Previous on a VI with MathScript results in broken VI
91951 490EII2JMathScript realmax function returns Inf instead of max pos real value.
97533MathScript user defined functions (udfs) that overload Control Design (CD) Functions that are also built-in MathScript Functions will not show up in the "help" command
99061MathScript Probe on a reentrant clone attaches to the original
144647MathScript on Real Time target may cause long delays
118408Editing a VI with a MathScript Node that contains a very large script is very slow
129879Using empty brackets to specify a function has no outputs is not a valid syntax.
133843Using end keyword on the last line of a MathScript .m file causes errors
152620MathScript probe does not work on VI running on RT
163320MathScript 'bitrevorder' function returns incorrect output vector orientation when called with a string
165507The power operator does not have higher precedence than the negative operator.
172384Function "which" doesn't work without a parameter
173387After removing functions that cause warning glyphs from User-Defined Functions, the VI looks broken
175141After building applications with MathScript, the MathScript VIs are broken
176211Attributes don't work unless specified for all plots
176298Change of types do not propagate when there is a chain > 1 of user-defined functions
177781"An error occurred in a SubVI call" path error not descriptive
177805Building a matrix of string and reals incorrectly produces a real matrix
162349MathScript syntax highlighting and error/warning glyphs are inconsistent
190836VI with a MathScript Node that calls .m files can sometimes be broken even if there is no error
193324MathScript search path is corrupted in unsaved LabVIEW projects
194369Behavior change of Logical function
194534MathScript node reports "Code could not be generated" when using Execution Trace Toolkit VIs
191788'interpolate1d' function output dimension behavior change when upgrading from 8.6 to 2009
197936Receive an "unsupported target" error when trying to deploy VI using MathScript to an NI Smart Camera.
173693Removing warning glyphs from a MathScript node with a hierarchy of user-defined functions may break VI
193125VI Search dialog may appear when opening a VI with MathScript in LabVIEW 2009 when previously saved in LabVIEW 2009 SP1
194964RT Target may crash when closing the block diagram of a running VI with the MathScript Probe
195525MathScript search path incorrectly shows one of the paths to be invalid
195875Wiring a automatically type casted (coerced) value to the input of a MathScript Node causes a failure when building an executable
196761Use of if..else..end within a for..end or while..end can cause non-deterministic execution on RT targets
197580Opening a MathScript VI created on a different machine results in a search dialog for MCStatic_ VIs
198092Unable to assign a variable sized array into a fixed size matrix
199534Growing an empty array in a loop does not work
235596Mathscript RT Module for MAC will not install on LabVIEW 2009 Evaluation
99862MathScript cannot read compressed .MAT files



IDKnown Issue
52985
4DJFLU00

Return
Save for Previous on a VI with MathScript results in broken VI
If you select File»Save for Previous Version and save a VI that contains a MathScript Node for LabVIEW 8.0, the VI is broken when you load it in LabVIEW 8.0.

Workaround: To correct this problem, load the VI in LabVIEW 8.0 and then modify the script in the MathScript Node. For example, add and remove a space. Then click the block diagram outside of the MathScript Node. When you click the Run button, the VI runs correctly.

Reported Version: 8.5  Resolved Version: N/A  Added: 09/01/2007
91951
490EII2J

Return
MathScript realmax function returns Inf instead of max pos real value.
MathScript realmax function returns Inf instead of the maximum positive floating-point number.

Workaround: N/A

Reported Version: 8.5  Resolved Version: N/A  Added: 09/01/2007
97533

Return
MathScript user defined functions (udfs) that overload Control Design (CD) Functions that are also built-in MathScript Functions will not show up in the "help" command
If Control Design & Simulation Module (CD) is installed and the user also has a user-defined function (udf) with the same name as a CD function that is also a built-in function, then the UDF will not show up when the "help" command is run. Example: If CD is installed and the machine has a UDF called "norm.m", then on entering "help norm" the expected behavior would be to see the help for the function "norm.m". However, it's the CD help for norm that will be shown, and there will be no mention of "norm.m".

Workaround: Rename UDFs to avoid conflict.

Reported Version: 8.6  Resolved Version: N/A  Added: 07/11/2008
99061

Return
MathScript Probe on a reentrant clone attaches to the original
If you try to probe a MathScript node on a clone of a reentrant VI, the probe will actually attach to the original VI instead.

Workaround: Turn off reentrant execution on the VI that contains the MathScript node before you attach the MathScript probe.

Reported Version: 8.6  Resolved Version: N/A  Added: 08/01/2008
144647

Return
MathScript on Real Time target may cause long delays
Sometimes, when a VI with a MathScript node is deployed to a RT (Real Time) target, the cursor flashes for a minute or so before being deployed

Workaround: N/A

Reported Version: 2009  Resolved Version: N/A  Added: 02/17/2009
118408

Return
Editing a VI with a MathScript Node that contains a very large script is very slow
When a VI with a MathScript node with a very script is edited, the response time is very slow

Workaround: N/A

Reported Version: 8.5  Resolved Version: 2009 SP1  Added: 08/03/2009
129879

Return
Using empty brackets to specify a function has no outputs is not a valid syntax.
When defining a function, using [] to specify that the function has 0 outputs will cause syntax errors.
Example: function [] = foo(x) % ...

Workaround: Do not use empty brackets.
Example: function foo() % ...

Reported Version: 8.6  Resolved Version: N/A  Added: 08/03/2009
133843

Return
Using end keyword on the last line of a MathScript .m file causes errors
When the end keyword is used on the last line of a .m file to terminate the definition of a function, MathScript will throw EOF errors

Workaround: Do not use end keyword. MathScript knows it is the end of the function definition by the presence of another function definition that follows it, or by the end of file.

Reported Version: 8.6  Resolved Version: N/A  Added: 08/03/2009
152620

Return
MathScript probe does not work on VI running on RT

Workaround: N/A

Reported Version: 2009  Resolved Version: 2009 SP1  Added: 08/03/2009
163320

Return
MathScript 'bitrevorder' function returns incorrect output vector orientation when called with a string
When you call the MathScript 'bitrevorder' function with a string input, it returns both outputs as column vectors instead of row vectors.

Workaround: N/A

Reported Version: 2009  Resolved Version: N/A  Added: 08/03/2009
165507

Return
The power operator does not have higher precedence than the negative operator.
The power operator should have higher precedence than the negative operator, so the expression -1^2 should equal to -1, but in MathScript the result is 1

Workaround: Use parentheses to denote which operation should have precedence, for example, -(1^2) instead of -1^2

Reported Version: 8.0  Resolved Version: N/A  Added: 08/03/2009
172384

Return
Function "which" doesn't work without a parameter
Using the function which without a parameter results in the following error "Error in function which at line #: You specified an invalid number of input parameters for this function."

Workaround: Provide a specific function name as the parameter.

Reported Version: 2009  Resolved Version: N/A  Added: 08/03/2009
173387

Return
After removing functions that cause warning glyphs from User-Defined Functions, the VI looks broken
After removing the function that causes warning glyphs in a User-Defined Function (UDF), the Run button of the VI looks like its broken and so do the wires.

Workaround: Running the VI or clicking with the mouse inside then outside of the Node fixes the errors.

Reported Version: 2009  Resolved Version: N/A  Added: 08/03/2009
175141

Return
After building applications with MathScript, the MathScript VIs are broken
After building applications, DLLs, or source distributions out of VIs containing MathScript Nodes, some VIs containing MathScript Nodes might be broken. The Error List might show an error for the MathScript Node "VI failed to compile."

Workaround: This issue has been fixed in the LabVIEW 2009f3 Patch

Reported Version: 2009  Resolved Version: N/A  Added: 08/03/2009
176211

Return
Attributes don't work unless specified for all plots
When plotting multiple graphs, you cannot specify attributes for only some of them.
Example: In a Mathscript Node
x = linspace(0,2*pi);
y1 = sin(x);
y2 = cos(x);
plot(x, y1, x, y2, 'r');
does not work as expected

Workaround: Change the plot command to pass in a plot attribute for all the plots
Workaround for the Example: plot(x, y1, 'b', x, y2, 'r');

Reported Version: 2009  Resolved Version: N/A  Added: 08/03/2009
176298

Return
Change of types do not propagate when there is a chain > 1 of user-defined functions
Type changes to a user-defined function (udf) in a chain of udfs of length > 1 does not propagate to the user's top-level calling VI.

Workaround: N/A

Reported Version: 2009  Resolved Version: N/A  Added: 08/03/2009
177781

Return
"An error occurred in a SubVI call" path error not descriptive
When calling the path function, if an element of the current path is no longer valid, the VI returns a non-helpful error saying "An error occurred in a SubVI call"

Workaround: Go to Tools >> Options >> MathScript and ensure all paths provided in the list are valid

Reported Version: 2009  Resolved Version: N/A  Added: 08/03/2009
177805

Return
Building a matrix of string and reals incorrectly produces a real matrix

Workaround: N/A

Reported Version: 2009  Resolved Version: 2009 SP1  Added: 08/03/2009
162349

Return
MathScript syntax highlighting and error/warning glyphs are inconsistent
When calling functions that introduce warning glyphs in the MathScript Node, the behavior of syntax highlighting and error/warning glyphs can be inconsistent. The yellow triangle warning glyph and the red 'X' error glyph may appear while editing the script but disappear when editing is complete. Similarly, syntax highlighting may mark symbols as user-defined functions while typing in the node but unknown symbols after editing is complete.

Workaround: Remove functions that introduce warning glyphs in the MathScript Node.

Reported Version: 2009  Resolved Version: N/A  Added: 11/10/2009
190836

Return
VI with a MathScript Node that calls .m files can sometimes be broken even if there is no error
In certain cases, a VI with a MathScript node that calls m-files can be broken even if there is no error in the VI or in the m-file. Viewing the error window with CTRL-L shows no VI with a red X next to it.

Workaround: There are two workarounds: 1) Click on the run-button of the VI with the MathScript node and VI fixes itself OR 2) Close VI and quit LabVIEW. Go to your LabVIEW Data folder and delete the InstCache and MathScriptVIs folder. Start LabVIEW and open the VI.

Reported Version: 2009  Resolved Version: N/A  Added: 11/10/2009
193324

Return
MathScript search path is corrupted in unsaved LabVIEW projects
If you try to set the MathScript search path under My Computer>>Properties in an unsaved LabVIEW project, the search path will be lost. All directories you enter will be replaced with the next time you open the dialog.

Workaround: Save the project before setting the MathScript search path.

Reported Version: 2009  Resolved Version: N/A  Added: 11/10/2009
194369

Return
Behavior change of Logical function
In the MathScript Window in LabVIEW 8.6, the logical function returns a logical array, if the input to the function is an array. In 2009, it returns a double array with 0,1 values for the booleans. This may change behavior when trying to use this array for masking or indexing another array. For example:a=[1 2 3 ]
l=logical([0 1 0])
a(l)

Workaround: For the above example, you can implement the logic with the following script:

a=[1 2 3 ]
l=logical([0 1 0])
a(find(l))

Reported Version: 2009  Resolved Version: N/A  Added: 11/10/2009
194534

Return
MathScript node reports "Code could not be generated" when using Execution Trace Toolkit VIs
When trying to use the MathScript execution trace toolkit functions, LabVIEW may return a "Code could not be generated" error for the MathScript node. This occurs if you are calling rt_starttrace, rt_stopsend, rt_stopsave, rt_loguserevent, or rt_loadsend and have not installed the Exeuction Trace Toolkit as part of the LabVIEW Real-Time installation.

Workaround: Rerun the LabVIEW Real-Time installer and select to install the Execution Trace Toolkit.

Reported Version: 2009  Resolved Version: N/A  Added: 11/10/2009
191788

Return
'interpolate1d' function output dimension behavior change when upgrading from 8.6 to 2009
In version 8.6, the output dimension of the is always a row vector. In version 2009, the output dimension is a row or column vector that matches the dimension of the y1 input. For example, the following input Interp1([1 2 3], [10 20 30]', [1.1 1.5 2.2 3]) returns a row vector in previous versions, and a column vector in 2009.

Workaround: Transpose the output if needed.

Reported Version: 2009  Resolved Version: N/A  Added: 11/11/2009
197936

Return
Receive an "unsupported target" error when trying to deploy VI using MathScript to an NI Smart Camera.
When trying to deploy a VI using MathScript to an NI Smart Camera you will receive an error saying the target is unsupported.

Workaround: Delete the labview/Targets/NI/RT/SmartCamera/TargetSyntax.xml file.

Reported Version: 2009  Resolved Version: N/A  Added: 01/06/2010
173693

Return
Removing warning glyphs from a MathScript node with a hierarchy of user-defined functions may break VI
This problem can occur when there is a VI in memory with a MathScript node and it has a a chain of two or more user-defined functions. If the user-defined function at the bottom of the hierarchy calls a function that produces a warning glyph (e.g. addpath), the entire hierarchy up to the caller VI will run with slower run-time performance. However, attempting to change the bottom user-defined function to remove the offending function will break the caller VI.

Workaround: Close all VIs using MathScript nodes. Also make sure to close the MathScript Window. Ideally, it is best to close LabVIEW to ensure nothing is using MathScript. Delete all VIs in the "LabVIEW Data\MathScriptVIs" directory. Make any necessary changes to your .m files to remove any functions that will cause a warning glyph. Is is now okay to restart LabVIEW and reload the caller VI.

Reported Version: 2009  Resolved Version: N/A  Added: 06/17/2010
193125

Return
VI Search dialog may appear when opening a VI with MathScript in LabVIEW 2009 when previously saved in LabVIEW 2009 SP1
If you save a VI that contains a MathScript Node in LabVIEW 2009 SP1 and then open the VI in LabVIEW 2009, you might see search dialogs for internal MathScript VIs.

Workaround: You can safely ignore these dialogs, and the VI will load successfully. To avoid seeing these dialogs, mass compile the VI in LabVIEW 2009.

Reported Version: 2009  Resolved Version: N/A  Added: 06/17/2010
194964

Return
RT Target may crash when closing the block diagram of a running VI with the MathScript Probe
If you are running a VI on a Real-Time target with a MathScript Probe attached to a MathScript node, closing the block diagram may cause the target to crash.

Workaround: Close the MathScript Probe before closing the block diagram.

Reported Version: 2009 SP1  Resolved Version: N/A  Added: 06/17/2010
195525

Return
MathScript search path incorrectly shows one of the paths to be invalid
When the project is moved, one of the paths in the search path wrongly shows up as invalid.

Workaround: After saving the project, open the search path page and click ok.

Reported Version: 2009  Resolved Version: N/A  Added: 06/17/2010
195875

Return
Wiring a automatically type casted (coerced) value to the input of a MathScript Node causes a failure when building an executable
Wiring a automatically type casted (coerced) value to the input of a math script node causes a failure when building an executable. After that all VI's using a math script node are broken until you restart LabVIEW

Workaround: N/A

Reported Version: 2009  Resolved Version: 2009 SP1  Added: 06/17/2010
196761

Return
Use of if..else..end within a for..end or while..end can cause non-deterministic execution on RT targets
In general, use of any variable within a loop that is an array or a matrix must be preallocated. However, if certain temporary variables are used within a loop then they do not need to be preallocated. However, this guideline fails when the use of the temporary variable is within a if..else..end used within the loop.

Workaround: In such cases, you also need to preallocate the temp variables outside the loop

Reported Version: 2009 SP1  Resolved Version: N/A  Added: 06/17/2010
197580

Return
Opening a MathScript VI created on a different machine results in a search dialog for MCStatic_ VIs
External .m files are compiled into VIs for MathScript to use. These VIs are created automatically and do not need to be referenced by the user. When moving VIs that use external .m files to a different machine, LabVIEW may prompt to search for the generated VIs that were created on the original computer.

Workaround: Simply ignore the missing MCStatic_ VI messages. The missing VIs will be regenerated automatically once the VI completes its load.

Reported Version: 2009  Resolved Version: N/A  Added: 06/17/2010
198092

Return
Unable to assign a variable sized array into a fixed size matrix
MathScript is unable to generate code that assigns a variable size array to a fixed size array.

Workaround: N/A

Reported Version: 2009  Resolved Version: 2009 SP1  Added: 06/17/2010
199534

Return
Growing an empty array in a loop does not work
If you create a variable as an empty array and then try to grow it repeatedly in a for loop, the matrix will reset to an empty array at each iteration of the loop and only contain the elements from the last iteration.

Workaround: Instead of creating an empty array, initialize the variable to be a constant or preallocate the array

Reported Version: 2009 SP1  Resolved Version: N/A  Added: 06/17/2010
235596

Return
Mathscript RT Module for MAC will not install on LabVIEW 2009 Evaluation
While installing the MathScript RT 2009 Module for MAC on top of a LabVIEW 2009 Evaluation version, the MathScript Module installer reports that

"You cannot install LabVIEW 2009 MathScript RT module on this volume. LabVIEW 2009 must be installed first."

Workaround: N/A

Reported Version: 2009  Resolved Version: N/A  Added: 06/17/2010
99862

Return
MathScript cannot read compressed .MAT files
When trying to load data from a .MAT file created on a MACI platform (Intel Mac?), MathScript reports "Error in line 0. An internal error occurred while processing this MathScript. Contact National Instruments with the MathScript you used."

Workaround: Save the .MAT file in an uncompressed format. MathScript should now be able to load the data.

Reported Version: 8.5.1  Resolved Version: N/A  Added: 06/17/2010

Document last updated on 6/17/2010

Glossary of Terms

 

  • Bug ID - When an issue is reported to NI, you may be given this ID or find it on ni.com.  You may also find IDs posted by NI on the discussion forums or in KnowledgeBase articles.
  • Legacy ID – An older issue ID that refers to the same issue.  You may instead find this issue ID in older known issues documents.
  • Description - A few sentences which describe the problem. The brief description given does not necessarily describe the problem in full detail.
  • Workaround - Possible ways to work around the problem.
  • Reported Version - The earliest version in which the issue was reported.
  • Resolved Version - Version in which the issue was resolved or was no longer applicable. "N/A" indicates that the issue has not been resolved.
  • Date Added - The date the issue was added to the document (not the reported date).