'Variance PtByPt.vi' generates values of negative values for some input

With certain sequences of input values the Gap PtByPt.vi can generate negative values. It is because of the precision in calculations.

Because it is very common to calculate the gap by taking the square root of the variance, this behavior can take you by surprise because the result will be Nan and not almost 0 you expect. According to the data, this may be frequent or very frequent. In general, a nuisance to debug.

The remedy is simple: take the Abs() before the square root value. A vi that demonstrates the case is attached.

I would suggest to include this correction (or similar) in the "Variance PtByPt.vi' because it gives rise to unexpected and hard to find errors.

By definition - variance cannot be negative.

CAR 446514 discussed in this thread has been corrected in LabVIEW 2014.  For a more complete list of bugs fixed in LabVIEW 2014, see 2014 LabVIEW bugfixes. You can download a copy of LabVIEW 2014 evaluation at http://www.ni.com/trylabview/ or if you have a previous version of LabVIEW installed and an active subscription to SSP, you will be able to download the latest version of LabVIEW through NI Update Service.

Kind regards

Jeff Peacock

Product Support Engineer | LabVIEW R & D | National Instruments | Certified LabVIEW Architect

Tags: NI Software

Similar Questions

  • Generate values for automatic fields

    Dear gurus,

    I want to generate automatic value for each field in the form, as for example in the course of field OLM code or any field in any application how can I fill with automatic generated value each time as sequence concatenated with some characters?

    Thank you

    Visit this link

    Thank you

  • Definition of default values for the inputs of button and the cursor?


    I use Labview 8.5.1 and have a few entries button and zipper-type on my front. How can I set some of them having specific (as opposed to zero) default values when the VI is executed?

    Thanks for the help

    The default value for the type of slide of entry (or button).

    Right-click on the control.

    Select "Operations on the data" > "default to the current value of doing."

  • I can't have my Subvi simply use the default values for some of its entries?

    I use the code for a DS345 machine, using the sample code from here: http://sine.ni.com/apps/utf8/niid_web_display.download_page?p_id_guid=E3B19B3E9149659CE034080020E748...

    I use version 7.0 (because I'm in 7.1).

    Anyway. I managed to get the proper waveform I wanted, just stored waveform in the default values and frequency input, so I can some frequency I want input. When I run the example VI itself, it displays the waveform for the machine just that very well, however, when I use this example VI as a Subvi, it didn't come out of the machine data.

    Any ideas?

    Thank you


    When I say defaults for some of its entries, I mean the values that are usually connected by a user, controls that are not 'inputs' in VI.

    I understood the question, and I must say that I am embarrassed. If you look at the code, I'm feeding a resource VISA name, when the Subvi needs just a chain with the GPIB address number.

  • NULL values for some elements of the XML reading tree

    I am confirming that I interpret correctly all the elements of a custom data XML structure defined by my application (the schema is completely under my control).  Some of the elements in my XML tree are read as NULL values, even if similar items are readind as expected.  I have checked some obvious things like misspelling the names of keys, but have not yet find the problem.  Anyone who has debugged similar questions - what else could cause this?

    Example XML:


    And extracted C++ w/comments at the end of each line about what I see (DataManager is my class of CRUD operations):

    In DataManager.hpp:

    QVariant mCustomDataStructsTopLevel;
    QVariantMap mCustomDataStructsTopLevelMap;

    In DataManager.cpp:

    mCustomDataStructsTopLevel = mXda.load(Utils::dataFilePath(customDataStructsFileName));  // XmlDataAccess; verified loading w/no errors
    mCustomDataStructsTopLevelMap = mCustomDataStructsTopLevel.toMap();
    qDebug() << "appName element value: " << mCustomDataStructsTopLevelMap["appName"]; // Outputs "MyAppsName" as expected
    qDebug() << "lastId element value: " << mCustomDataStructsTopLevelMap["lastId"]; // Outputs null (specifically: QVariant(, ) ) - this is NOT expected
    qDebug() << "appVersion element value: " << mCustomDataStructsTopLevelMap["appVersion"]; // Outputs null (specifically: QVariant(QString, "") )  - this is NOT expected

    OK, I got the feeling (and actually hoped) it was a silly mistake of face-palm on my part (compared to a problem of BB10 who had little chance of getting fixed).

    The problem is that I copy the structure of custom data from Starter to my Active dir to my data directory to first install but do not crush him on subsequent launches, as the copy in the data directory is what the user changes and relies on.  I was not a delete and reinstall on each of my iterations, so I wasn't really loading the modified versions of my XML I wanted--just, I was getting a day old stale version which was actually for the items I didn't expect NULL values for nulls.  DOH!

  • How can I set the default value for an input text element?


    I have a page where I ask the user to fill out entry texts.
    The input text have links for some parameters of an exported method of the AM via the DataControl.
    Once the user fills the text of entry, he can click a button that executes the method associated with AOS.
    It's ok.

    Now, I want to set default values appropriate (taken from a java method) for some texts of entry on the initial page rendering, for they are virgins.
    How can I do this?
                                <af:inputText value="#{bindings.parameter.inputValue}" label="Method Parameter"
                                              shortDesc="#{bindings.parameter.hints.tooltip}" id="it15">
                                    <f:validator binding="#{bindings.parameter.validator}"/>
        <variableIterator id="variables">
          <variable Type="java.lang.String" Name="parameter" IsQueriable="false"/>
  • The Null value as the default value for an input to a stored procedure parameter


    How can we set the default values with the NULL value for the parameter in a stored procedure.
    create or replace procedure emp_proc ( p_test_input in varchar2
                                                        p_emp_id in number,
                                                        p_emp_name in varchar2,
                                                       p_manager_id in number )
       if ( upper ( p_test_input ) = 'I' )
          insert into emp
          values      ( p_emp_id  ,p_emp_name ,p_Manager_id,sysdate );
       elsif ( upper ( p_test_input ) = 'D' )
          delete from emp
          where       emp_id  = p_emp_id;
             ( 'Please input ''A'' for ADD or ''D'' Delete  EMPLOYEE'
       end if;
    As described above if I want to delete only the functioning

    I want to call this procedure without pass additional parameters.
     EXECUTE  emp_proc('D',1010);
    Published by: Rede on May 28, 2010 12:21

    Published by: Rede on May 28, 2010 12:22
    create or replace procedure emp_proc ( p_test_input in varchar2,
                                                        p_emp_id in number,
                                                        p_emp_name in varchar2 default null,
                                                       p_manager_id in number default null )
  • How to add the default value for the "Full - Text Search" box

    Hi all

    I am looking for the ability to add a default value for the "Full text search" box in the search form.


    When the user accesses the search page it get default values for some fields (defined in the rule as default values) such as

    xField1 = txt1 and xFiel2 = txt2.

    and Furthermore we need full-text = Hello world.

    Is this possible?

    Another way that we use is to open the search by URL with coreContentOnly = 1 as a form:

    http:// < Server >/cs/idcplg? IdcService = GET_DOC_PAGE & to Action = GetTemplatePage & to Page = STANDARD_QUERY_PAGE & coreContentOnly = 1 & to xField1 = txt1 & to xFiel2 = txt2

    It is possible to add full-text criteria here? Somethig like: & text = Hello World

    Thank you


    It is not possible in a very obvious way, not to mention that it is a rather strange request.  I can't really imagine a realistic use for this case.

    Anyway, without a messy customization, you should provide a default query with an FTX inside element text setting (i.e. "IdcService = GET_DOC_PAGE & Action = GetTemplatePage & Page = STANDARD_QUERY_PAGE & QueryText =Hello World" "")

    To do this in a profile in the secondary effects of the profile section, add the following:

    <$dpPromote("QueryText",>Hello everyone") $>.

  • CS_SRS. WKTEXT generated value is being generated by commas instead points

    I was able to add a coordinate system: ETRS89 / Portugal TM06

    but the CS_SRS. WKTEXT generated value is being generated by commas instead points.

    is generated as:
    PROJCS ["" ETRS89 / Portugal TM06 ", GEOGCS ["ETRS89", REFERENCE ['European terrestrial reference (EPSG ID 6258) 1989 system', SPHEROID ["GRS 1980 (EPSG ID 7019)"6378137, 298,257222101]], PRIMEM ["Greenwich", 0.000000], UNIT ['decimal degrees', 0.01745329251994328]], PROJECTION [" ETRS89 PT-TM06 "], PARAMETER ['Latitude_Of_Origin', 39,6682583333333], ['Central_Meridian', - 8,13310833333333], PARAMETER ["Scale_Factor", 1], PARAMETER ["False_Easting", 0], ["False_Northing", 0], UNIT ["meter", 1]"]

    but should be like:
    PROJCS ["' ETRS89 / Portugal TM06", GEOGCS ["ETRS89", REFERENCE ["European terrestrial reference 1989 system (EPSG ID 6258)", SPHEROID ["GRS 1980 (EPSG ID 7019)" 6378137, 298.257222101]], PRIMEM ["Greenwich", 0.000000], UNIT ['decimal degrees', 0.01745329251994328]], PROJECTION ["ETRS89 PT-TM06"], PARAMETER ['Latitude_Of_Origin', 39.6682583333333], PARAMETER ['Central_Meridian',-8.13310833333333], ["Scale_Factor", 1], PARAMETER ["False_Easting", 0], ["False_Northing", 0], UNIT ["meter", 1] "]

    and the SDO_CS. VALIDATE_WKT gives FALSE (170).
    I could disable the trigger CS_SRS and update the value in the hand, but is it the right way?

    Hello Rui,

    to disable triggers, according to me, is not a good solution. You must solve the problem for the insert statement. Please have look more closely at the NLS settings during your session when you do the insert. I had good experiences to set the NLS parameter to the American environment. You should be able to influence the outcome of integration by setting the nls_numeric_characters ',' (set NLS_NUMERIC_CHARACTERS = ','.) and make the Insert with this settings. The setting can be changed for the current session only, so it doesn' influence other processes in your instance. After insertion, you can reset the setting, or simply close the session.


  • How to generate values null?

    I have a nice select which produces this output:
    Sum of the value
    42 02/1997
    35.6 06/1997
    17.6 07/1997
    97,2 08/1997
    42 10/1997
    71.8 11/1997
    90.6 12/1997

    I want to see zero if for the month, that data is not provided, this would gives this result:

    Sum of the value
    0 01/1997
    42 02/1997
    0 03/1997
    0 04/1997
    0 05/1997
    35.6 06/1997
    17.6 07/1997
    97,2 08/1997
    0 09/1997
    42 10/1997
    71.8 11/1997
    90.6 12/1997

    He comes to select nice I use:

    SELECT TO_CHAR (titi, "MM/YYYY") value.
    Toto "stacking".
    with precipitation as
    Select date1 rainfalldate, value
    of evv_stpl
    where clef_var = 4542
    and between date1
    TO_DATE ("0101" |) ""1997"|" 000000', 'DDMMYYYYHH24MISS') and to_date ("0101" |) ""1997"|" 235959', 'DDMMYYYYHH24MISS') 365
    order of date1
    Select trunc (rainfalldate, 'MM') titi, toto (toto) sum of
    (select rainfalldate, value, lead (value) over (partition by order of trunc (rainfalldate) of rainfalldate),
    (Value) lead over (partition by order of trunc (rainfalldate) of rainfalldate) - value toto
    where toto > = 0
    Trunc Group (rainfalldate, 'MM')
    order by trunc (rainfalldate, 'MM')

    Insert into 'evv_stpl' ('Clef_var', 'Date1', 'Value') values (4542,' 02/1997 ', 42);
    Insert into 'evv_stpl' ('Clef_var', 'Date', value) values (4542,' 06/1997 ', 35, 6);
    Insert into 'evv_stpl' ('Clef_var', 'Date', value) values (4542,' 07/1997 ', 17, 6);
    Insert into 'evv_stpl' ('Clef_var', 'Date', value) values (4542,' 08/1997 ', 97, 2);
    Insert into 'evv_stpl' ('Clef_var', 'Date', value) values (4542, 10/1997 ', 42);
    Insert into 'evv_stpl' ('Clef_var', 'Date', value) values (4542, 11/1997 ', 71, 8);
    Insert into 'evv_stpl' ('Clef_var', 'Date', value) values (4542, 12/1997 ' 90, 6);
    Insert into 'evv_stpl' ('Clef_var', 'Date', value) values (4542,' 01/1998 ', 1, 8);

    Could you help me? I know that I have to generate a list of months and a value of zero and to join these two tables. Despite my best efforts, I could not arrive at a result. Thank you very much for your help!


    for some reason, you missed the join external on your last question, when he was on your old one (the {noformat} (+) {noformat}). If you want your activation date shaped in a particular way, you need the to_char on the external final selection. Always leave the stuff of formatting until as late as possible, in this way, you have lots of information in your calculations, etc.

    This should be what you are looking for:

                             VALEUR VALUE
                      FROM   EVV_STPL
                      WHERE  CLEF_VAR = 4542
                      AND    DATE1 BETWEEN TO_DATE('0101'||'1997'||'000000', 'DDMMYYYYHH24MISS')
                                           TO_DATE('0101'||'1997'||'235959', 'DDMMYYYYHH24MISS') +365
                      ORDER BY DATE1),
           MONTHS AS (SELECT ADD_MONTHS(TO_DATE('01/1997', 'mm/yyyy'), LEVEL-1) DT
                      FROM DUAL CONNECT BY LEVEL <= 12),
                             SUM(TOTO) CUMUL
                      FROM   (SELECT RAINFALLDATE,
                                     LEAD(VALUE) OVER (PARTITION BY TRUNC(RAINFALLDATE)
                                                       ORDER BY RAINFALLDATE) - VALUE TOTO
                              FROM RAINFALL)
                      WHERE TOTO >= 0
                      GROUP BY TRUNC(RAINFALLDATE, 'MM'))
           NVL(MT.CUMUL, 0) CUMUL

    Published by: Boneist on June 26, 2009 09:41

    Oops; I forgot to add the to_char in!

  • Create a table of values for which a condition is met

    I have exactly this problem, however connected solution is no longer valid: Re: table to automatically generate values if the condition is met,

    Basically I have a table (named 'Master Sheet') that has two columns, one with project names with a status ('Active' or 'pending'). I want a separate table that automatically fills the project names of the leaf of the master for which the status is 'Active '.

    For example, from this table:













    I want to automatically generate this table, which contains only values whose status is 'Active' (not 'pending' and without values null):









    Please note that using the filter function does not work in this case, as I need to be able to freely add new lines to the two tables.

    Hi Kath,

    Here is a pair of similar solutions.

    That on background uses a writing ('ACTIVE') of the value in the formula in the master-1 table to create the index in column C.

    Above who gets the value of the cell in row 1 (A1) of the table of the single column and lists him only the names of any State were brought to the project.

    Index columns can be hidden.


    Master: C2 IF (B = C$ 1, ROW (), 999)

    Table 1::A3: IF (SMALL (Master: $C, LINE () −2) = MAX (Master: $C),"", INDEX (Master: $A:$ B, SMALL (Maste r: $C, ROW (−2)), COLUMN ()))

    Master - 1:C2: IF (B = "ACTIVE", ROW (), 999)

    Table 1 - 1:A2: IF (SMALL ("Master-1': C, LINE (−1) ') = MAX ('Master-1': C),' ', index (" Master-1': b, SMA LL('Master-1'::C,ROW()−1),COLUMN()))) ")")

    All forms filled up to the last line of their respective columns.

    Filled with formulas in column A of the table of two columns to right of column B.

    Single column table must be no more than a longer column of its master table.

    Double table column must be as long as his master table or less.

    Kind regards


  • How do subtract you different values for items in a specific table?

    Hi LabVIEW community.

    I am new to LabVIEW and Im working on my first application. One of my challenges I have problems is to know how to avoid specific values of some elements in a table.

    My application is to measure the distance between sensor and magnet, however the initial distance for each magnet sensor is different. I have converted the tension up to a distance using the Math node for each element and now need to correct these values by subtracting their initial value.

    The source is a table 1 d of DBL64 composed of 32 elements and each of these values must have a different value subtracted.

    for example:

    Element 1 - 5.557

    element 2 - 2.34

    3-7 654 element and so on

    I tried to separate them (index table) and subtract the values of each item and then combine them again. This was not effetive. I need to write these values in a .txt file and also to use them in another calculation.

    I have attached my attempted under VI.

    Any advice would really be apprecieated.

    You don't need to look it. There is a very simple method. Generate a table that contains all your desired offsets.  Then he subtract off the coast.

    This is the VI even with this change:

  • Take the minimum value for table data

    I'm storing test data in a table, with the hope that I can output the minimum value of the data. So far, I have used the table of max/min but can't make it work how I want. The test runs continuously in a loop of the holder. I get the minimum values in the table, but I would like to change the number of samples that the table contains, before it generates a minimum. The other option is that I run the test for a period of time (e.g. 3 seconds) and the table stores the data for this time then output 1 minimum value for the entire period.

    My current configuration VI is attached.

    Very appreciated


    The size of the array in your VI is determined by the number of samples that you collect in your DAQ assistant, who is now 100 samples.  Never more, never less.

    How many samples do you want before you determine the minimum?

    Maybe what you really want to do is to build the table in the while loop and store it in a shift register, and when the loop has repeated enough times, then you take the minimum of built table.

  • Find values for all variables


    The Sub data, I want to find records where status = 1 and the values for all the questionnarie ($quest1 to Quest5) is other than 1, i.e. the value must be null, 0 or a negative integer

    Thanks in advance

    with t as


    Select 101 as the nest, 1 as the status, "Cookie" as a term, 1 as $quest1, Quest2 0, 0 Quest3, 0 Quest4, 0 as Quest5 from dual union

    Select 102, 1, "Chips", 0, 0, 0, 0, 0 double Union

    Select 102, 1, "Chips", 0, 0, 0, 0, 1 double Union

    Select 102, 1, 'milk', 0, 0, 0, 0, null Union double

    Select 103, 0, 'mixture', 0, 0, 0, 0, 0 double Union

    Select 103, 1, 'sugar', 0, 0, 1, 1, 1 Union double

    Select 104, 1, 'sugar', null, null, 0, 0, 0 double Union

    Select 105, 1, 'the', 1, 1, 0, 0, -1 Union double

    Select 106, 0, 'milk', 1, 1, 0, 0, -1 double Union

    Select 106, 1, 'milk', -1, -1, 0, 0, -1 Union double

    Select 106, 1, 'milk', 0, 0, 0, 0, 0 of the double


    Select * from t

    When status = 1



    Select *.


    When status = 1

    and nvl ($quest1, 0)<= 0="">

    and nvl (quest2, 0)<=>

    and nvl (quest3, 0)<=>

    and nvl (quest4, 0)<=>

    and nvl (quest5, 0)<=>

  • Default value for the text in a tabular presentation element


    I creates a tabular form generated by using a SQL query.
    I would like to first of all the value for a column of nextval deault a sequence when an empty row is added using the add a LINE button

    my request currently for the sequence value column when you click on the ADD row button is:
    apex_item.display_and_save (4, NULL) as trans_id,.

    I want this column trans_id trans_seq.nextval where trans_seq is a default sequence.

    I tried specifying the default value in the column attributes (expression of PL/SQL - trans_seq.nextval) which does not work.
    If I give in the SQL query, it throws an error saying that the unauthorized sequence here...

    My query is structured as follows:
    apex_item.display_and_save (4,c002) trans_id
    WHERE collection_name = 'TRANSACTIONS'
    apex_item.display_and_save (4,NULL)  as  trans_id
         WHERE :request = 'ADD_ROW_MANUAL'
    Appreciate any help in this regard. I hope that my question is explained clearly

    Thanks in advance,

    Published by: Fisher on February 16, 2010 12:41

    Published by: Fisher on February 16, 2010 15:55


    1. create a function named next_value

    create or replace function next_value
    return number
    ret_value number;
    select trans_seq.nextval into ret_value from dual;
    return ret_value;

    2 display the query as below

    apex_item.display_and_save (4,c002) trans_id
    WHERE collection_name = 'TRANSACTIONS'
    apex_item.display_and_save (4,next_value())  as  trans_id
         WHERE :request = 'ADD_ROW_MANUAL'

    Kind regards

Maybe you are looking for

  • Compose a line on my comcast email has very small fonts. How to change just this line (subject line)

    Something has caused this single line only very little. It's a firefox problem because when I connect under internet explorer, has not not place

  • How can I turn off auto update?

    I had FF never check the value. On its own, this parameter was changed to "Check for updates but let me choose". However, the parameter is actually, "install automatically". How can I fix it? I can decide on updates all by myself. The change was 28 V

  • Cannot add music on my iPhone via iTunes!

    I apologize if this has been asked several times, I'm afraid, I can't find a solution for myself and I have a few questions myself. First of all, I have an iPhone running iOS 9.2 5. Operating system my PC is Windows 8.1. My iTunes is currently 12.3.

  • DV8T not charging

    When I place my mouse on the icon on the taskbar battery level you it shows the battery level at 91%, branch, does not support. Shouldn't it be in charge if it is less then 100%?

  • Upgrade memory on Equium M70

    I currently have 512 KB of memory in my laptop, I want to go to 1 GB.What I have to install another 512 or replace it with 1 GB.Also do you have information on where to buy additional memory.