View Raw SPL
/*****************************************************************************
*                                                                            *
*   ISFINITE.SPL Copyright (C) 2002 DSP Development Corporation              *
*                               All Rights Reserved                          *
*                                                                            *
*   Author:      Randy Race                                                  *
*                                                                            *
*   Synopsis:    Returns 1 for each element that is not inf or NA            *
*                                                                            *
*   Revisions:    9 Aug 2002  RRR  Creation                                  *
*                                                                            *
*****************************************************************************/

#include 


#if @HELP_ISFINITE

    ISFINITE

    Purpose: Returns 1 for each element that is not infinite (inf) or NA

    Syntax:  ISFINITE(ser)

              ser - Series

    Returns: A series where each element is 1 where the input series is
             not INF or NA and 0 where the input series is INF or NA.

    Example:
             a = {1, 2, inf, nan};
             b = 5;
             c = {};

             isfinite(a) returns {1, 1, 0, 0}
             isfinite(b) returns {1}
             isfinite(c) returns {}

    Remarks:
             ISFINITE always returns a series.

             ISFINITE returns an empty series if the input is an empty series.

    See Also:
             Finite
             Isempty
             Isinf
             Isnan
#endif


/* where is input not inf or NA? */
isfinite(a)
{
        if (argc < 1) error("isfinite - input required");

        return(finite(a));
}