Bug in Array Function XNodes 1.4.0.24?

Hello

I have been using Array Function XNodes 1.4.0.24 for a while now and find it quite useful.

However, I have met unexpected behavior which makes me doubt the filter table node (and so the whole package).

The matrix of results 'False elements' of the node is too large, filled with identical nonsensical data after the apparently correct data elements.

The amount of padding data depends on the array of Boolean.

My input array is U8. Its size seems to be the problem. If it is less of a factor of 100 the vi will work as expected.

Anyone who has installed the package can check this behavior with the vi attached?

The package can be downloaded here:

http://lavag.org/files/file/58-array-function-XNodes/

Best regards

Florian

The CR of LAVA is a support for each download. You should ask it there - http://lavag.org/topic/10303-cr-array-function-xnodes/

Tags: NI Software

Similar Questions

  • Unexpected behavior of the chain of worksheet to the array function

    Hello

    I found a few quirks in LabVIEW 2011 I don't understand. In the vi attached, I provide a one-dimensional spreadsheet string separated by spaces. I use the string of worksheet to the array function to convert this spreadsheet string into an array of strings.

    I came across problems when I wanted to specify a space as the delimiter character.

    The conversion works as expected, if I do not specify a delimiter (i.e., the default tab delimiter is used). But if I specify the delimiter, only the first element of the string of spreadsheet is converted. I don't understand this behavior.

    Thanks for your help.

    Peter

    What a shame... Thanks for your time and this thin.

    Peter

  • I think that there is a bug in the function RT Set CPU pool assignments (SMP)

    I'm trying to configure Symmetric multi Processing on a PXI controller which has 2 CPUs.  I check the number of processors using RT get number of processors (it gives me 2).  I have a constant matrix of wire to the RT Set CPU pool allocations function and create an array of 2 elements with system and reserved as the two values (to assign a single processor for my timed loop and the other for "everything else").

    It works, which means it seems to do the assignment.  But if I look at the assignments of Pool Set CPU error line, it returns-2231, "invalid CPU pool settings. Each pool must contain at least 1 CPU. »

    I do not know what that means, or why I am getting the error (I might just "ignore it", but if the error is 'real', which is not supposed to do).  The entrance to the Pool Set CPU assignment is described in the documentation as "an array of enumerations, with an entry for each CPU.  For me, this means 2 entries, which is what I have.

    Does anyone have a rational explanation of what's going on?  Is this a bug?  The documentation is the problem?  I have attached the front (showing the number of processors and the error output) and the (very simple) block diagram.

    Bob Schor

    Thank you, Bobby.

    I reread carefully the Note help "Specifies the Set of processors available for automatic load balancing".  Now that I know the 'right answer', I can interpret what is written as planned, but it's not easy!

    It is also curious that, although the previous example has generated error-2231, if we deleted the error (or wired never error line), function has, in fact, affect the system and Timed Structures pool to CPU0 (I have a few 'real' testing code that shows CPU0 with Structures Timed cycles).  Given that the function "does the right thing" even if you specify parameters of 'bad', perhaps it should be treated as a warning, not an error (or otherwise make a mistake of 'real' not assigned to a pool - it also wouldn't hurt to have a less obscure the Error Message, or more explicit "be sure to have at least a CPU explicitly assigned to each system and Timed Structures pools") , maybe in "BOLD".

    This code has no error:

    Hereby I give you credit for the 'Solution', but I'll mark my answer as the Solution because it has a photo to help readers who are intrigued by the question and our responses.

  • bug in several functions of IMAQ vision mask

    Some functions IMAQ Vision bad work if you use the image source as the mask. I keep running into this bug in IMAQ Vision, Vision functions exhibit this behavior, and others do not. It is not documented in job descriptions. Even if it were, it would still be a bug. Example:

    1. create an image source U8 containing zeros and nonzero values.

    2. son of the image in the entry source and IMAQ mask entry quantify and return the value of % of the global report to see what percentage of pixels are different from zero.

    The answer is wrong. If you copy the image in a separate image first and distinct picture of wire in the input mask, you get the right answer. See attached VI for building

    See you soon,.

    -root

    If someone knows a way to return the number of pixels not dummies in an image without duplicating the image in memory, please post the method here so I can mark it as a solution. I find that using IMAQ getpixelvalue in a double loop is extremely slow, even with a shift as a counter register.

    Using the histogram IMAQ VI seems to work (with no mask image)-the first index of the returned histogram array is the number of zero pixel, so the sum of the table no less (or less area this) is the number of pixels non-null.  The VI has the same bug with the image of the mask (and I agree with you that document a bug does not correct!) but at least you can use for this problem.

    Cheers ~ Greg

  • Resizing by program "decimate the Array function.

    Is it possible to resize programmatically 'decimate 1 matrix function D' or another way to do it (I hope that I am not missed something easy)? I need to decimate a table 1 d in 'X' number of rows according to the 'X' channels that have been read from a file.

    For example, if I have a table length 1 d 18, and I read in 3 channels I would an array of 3 x 6. If I have a table length 1 d 18, and I read on 2 channels, I would like a table 2 x 9. Any idea on how to tell the number of lines to Labview I need a 1 d array?

    It seems that in earlier versions of LabVIEW, there is a VI that does what I'm looking for. I tried searching the pallette and here on the forums as well, but haven't come up with something that works.

    http://forums.NI.com/T5/LabVIEW/programmatically-resizing-decimate-array/TD-p/19880

    Thank you!

    -Andrew

    Exchange dimensions which feed you table of remodel or use the conversion table.  Because I can't tell from the description exactly where the picture is bad, one or the other of these ideas should fix.

  • bug cycle generating function to have to

    Hello!

    I put the function generator at 1 kHz, 25% from the simulation, its ok, but when I click on the arrow pointing upwards on the cycle to increase one percent, the output of the unit is now 100-26 = 74%.  And therefore, work is reversed. (see: 11.0.278)

    Hello

    I just learn from our developers. The issue has been reproduced and entered into their system with the ID report bug: 117065. The fix will be included in one of future versions. There is no direct workaround solution. If you have an educational version of Multisim, you can use the input of the generator with NOR-ELVISmx drivers - this one works very well. Please let me know if there is anything else I can help you.

  • Build the cluster array function

    Why that different types of data can feed a package, but the function Array of Cluster build only accepts one type?

    JVH

    Basically, because it does not which, according to me, you think it does. As indicated in the documentation for each component is placed in a cluster. This cluster is always an element, and the cluster is placed in a table. Because each element of an array must be of the same data type, this means that each entry this function must be of the same type to the data type of cluster is the same. In other words, you can not, for example wire an integer first entry and a string to the second entry, because this would create a cluster of an integer and a cluster of a rope, which are two different data types, and cannot be placed in a table at the same time.

  • Is this a bug in Date function?

    Hello!

    Something that escapes me...

    My Code:

    function howlong (arg) {}

    If (length (arg) == 1) {}

    ARG = '0' + arg;

    return arg;

    }

    else {}

    ARG = arg;

    return arg;

    }

    }

    mySessionDate = new Date();

    year = mySessionDate.getFullYear ();

    month = mySessionDate.getMonth ();

    Today = mySessionDate.getDate ();

    hour = howlong (String (mySessionDate.getHours ()));

    minutes = howlong (String (mySessionDate.getMinutes ()));

    seconds = howlong (String (mySessionDate.getSeconds ()));

    sessionDateOpening = (year + "" + month + "" + today + "-" + time + ":" + minutes + ":" + seconds);

    sessionDateOpeningFld.text = sessionDateOpening;

    Why Flash displays everything except the month?

    It shows 10 instead of 11 for the current month! ???

    Never met such a bug...

    :-(

    Thank you very much in advance for your help!

    If you want to display the month numbers because they are frequently observed (1-12), then Yes, simply add 1 to the value that getMonth() product...

    mySessionDate.getMonth () + 1

  • Update of digital control with different values with array function

    Hello

    I have attached my code base. I want to execute the code for 2 sets of digital control with a gap between the two values, then pass it. Something like that

    ABC

    Initialize the P1 = 10; P2 = 20; P3 = 30; P4 = 40

    Run the code

    delay = 10ms

    Update of P1 = 150; P2 = 200; P3 = 350; P4 = 500

    Run the code

    jump to abc

    I am stuck how can I update the values of P1, P2, P3, P4? I thought about using a function table but couldn't go further.

    Thanks for the help,

    Ana

    Hello Ana,

    One way you might achieve what you are looking for is using property nodes. These property nodes will allow you to change the values of the block diagram control. You can set up a structure of case inside your loop that will change control through nodes of property value after a certain number of iterations. Here is a community sample that shows how to use the nodes property to change the Boolean controls:

    https://decibel.NI.com/content/docs/doc-22669

    -Erik S

  • How not to use formatting on a worksheet of the Array function string?

    Hello

    I'm trying to convert a string of csv containing a cluster in a string array as part of a definition of profile for temperature/humidity chambers. I don't want to just format the output array because the values are not the same type. Can I use an empty string over the terminal of formatting? I have attached the VI. I also saw a few wiz bang csv read/write of things, but it's a school project so I can't use the code.

    Thank you

    Simon

    Just use %s as your format string.

    Do not use table of cluster and then ungroup cluster.  This is a hack, a Rube Goldberg.  Just use Index Array.  It's resizable down in order to get successive indices.

  • BUG? or functionality of reports

    Hello

    in a report of the master / detail detailed information are not deleted when the master query is run again.

    Example: Create a master report / detail for dept and emp. When you run the report for the first time then the detail of the emp is empty until you click on a line dept. Yet when run you it a second time, the details of the first round appears until you click a dept line. When you limit the master to a single Department, then the displayed values are misleading, perhaps the master shows Dept. 10, while shows it in detail the EMP for the previously interviewed 20 dept.

    The details must be emptied each time when the report is run.

    This isn't a specific version.

    Concerning
    Marcus

    This is a bug.

    Logging now.

  • Merge several bays in object unique Array function

    Hello

    I have a multidimensional array database and I'm quite confused by bringing to the simple linear table. I know it requires some for loop to set the property and its value and some nested loop but I lost halfway.

    Please take a look at who follows and guide me how can I solve this problem.

    Thank you very much

    I have the following data

    records:Array = [0]
                        name = gender;
                        records:Array
                               [0] = male;
                               [1] = female;
    
    
                    [1]
                        name = count;
                        records:Array
                               [0] = 35;
                               [1] = 40; 
    

    I want to convert it into a single table as follows:

    records : Array =
                    [0] = [gender: male, count:35]
                    [1] = [gender: female, count: 40]
    

    If I'm following what you have and what you want, I think that the following is all you need...

    Here's what you say, you have:

    var records: Array = new Array(["male","female"],[35,40]);

    so to convert, first create a place to create new version

    var tempArray = new Array();

    Then, wrap around the table of records and create objects in the tempArray

    for (var i: uint = 0; i
    tempArray [i] = {sex: files [0] [i], count: files [1] [i]};
    }

    Assign then the tempArray either the documents table

    reviews = tempArray;

    confirm the results

    trace (records [0] .gender, records [0] .count);
    trace (records [1] .gender, records [1] .count);

  • Copy to the advanced array functionality

    Hi all

    I have a standard page and the page contains two SubTabs. One is "Initiator" and the other a "beneficiary".

    The initiator and the recipient tab contains advanced table.

    My requirement is
    Initiator add details of distribution in table advanced by adding lines in the initiator sub-tab
    and the same value should copy to the advanced recipient table once the user click on the button Add a new rank in the recipient sub-tab.

    How to implement this feature to copy? can someone give me an idea how to do that.


    Thank you and best regards,
    Jean Blaise

    Here's the code for overtime:

    PFR CO:

    If ("recipientTableRN". Equals (PageContext.GetParameter (SOURCE_PARAM))
    (& ADD_ROWS_EVENT.equals (pageContext.getParameter (EVENT_PARAM)))
    {
    AM.copyValues ();

    }

    AM:

    Public Sub copyValues()
    {
    RowSetIterator deleteIter;
    OADBTransaction tr = getOADBTransaction();

    Line InitiatorsubtabVORowImpl = null;
    InitiatorsubtabVOImpl mpvo = getInitiatorsubtabVO1 ();
    fetchedrowcount = mpvo. GetRowCount();
    InitiatorsubtabIter = mpvo.createRowSetIterator("InitiatorsubtabIter");
    InitiatorsubtabIter .setRangeStart (0);
    InitiatorsubtabIter .setRangeSize (fetchedrowcount);

    Row1 recipientsubtabVORowImpl = null;
    pvo recipientsubtabVOImpl = getrecipientsubtabVO1 ();
    fetchedrowcount1 = PVO. GetRowCount();
    recipientsubtabIter = pvo.createRowSetIterator ("recipientsubtabIter");
    recipientsubtabIter .setRangeStart (0);
    recipientsubtabIter .setRangeSize (fetchedrowcount1);

    for (int i = 0; i)<>
    {
    Row1 = (recipientsubtabVOImpl) recipientsubtabIter.getRowAtRangeIndex (i);

    line = (InitiatorsubtabVORowImpl) InitiatorsubtabIter.getRowAtRangeIndex (i);

    EmpName = Row.GetAttribute ("EmpName"). ToString();
    Row1.SetAttribute ("EmpName", EmpName);
    }

    Concerning
    Meher Irk

  • Bug in decimate table 1 d

    There Appars to be a Bug in Decimate 1 d Array function if I understand correctly, this should work.

    See the attached VI.

    In LabVIEW 2010 VI attached, I have 2 decimate the functions of table 1 d. Each has exactly 16 outputs. Then I initialize arrays 2, 16 elements, the second table has only 1 element.

    The Decimate function which is 16 food items returns the appropriate output values.

    The powered Decimate small table function returns zero as the first element, which is incorrect. The first element is not equal to zero.

    Documentation of LabVIEW (LOL) does not mention what is going to happen when the size of the table to help D 1 function Array entry is less the number of outputs. It is assumed that the Deimate function returns all of the elements that did not exist in the table and empty on the rest.

    Why not Decimate 1 d Array work function as expected in cases where the size of the input array is lower number of outputs? Is this a BUG? Is there a solution?

    In fact, the detailed help for table Decimate indicates what happens when the number of items is too little.  And what you see is not a bug.

    Quote from the detailed help

    "If you remove an item from the input array it will 15 items. The last decimated table will have only 3 elements (3, 7 and 11) from item 15 was deleted. Since the function will only return arrays of the same size, 3 other decimated tables will drop their last element so that all the berries contain now 3. »

    If all the tables of output are truncated in the short table.  As table 1 a to 1 item and all the rest are zero, they are all truncated to zero element.  When you index a table to an index that does not exist (for example, empty element 0 of the array), you get the default data for this table type.

  • String function tab delimiter table worksheet

    Hi all, I am trying to use chain of worksheet to the array function to read on several lines of text and separate them in a 2D array. I have trouble using the delimiter. The default delimiter is tab, if I leave he unwired or use the Constant tab, it works, but if I use \t, it does not work. I'm using Labview 2013 and Windows 7 64-bit.

    Anyone know what is happening? Also, if I want to use several delimiters, what should I do?

    Thank you!

    Right-click on your constant tab, select "code view"... you might find a surprise:

    "you don't need to manually insert a tab because the function is set by default to it already, since you have... you'll find a back double return '."

Maybe you are looking for