Index Page brcktd_c

A B C D E F G H I J K L M N O P Q R S T U V W X

Procedure Abstract Required_Reading Keywords Brief_I/O Detailed_Input | Detailed_Output Parameters Exceptions Files Particulars Examples | Restrictions Literature_References Author_and_Institution Version Index_Entries

#### Procedure

       SpiceDouble brcktd_c ( SpiceDouble  number,
                              SpiceDouble  end1,
                              SpiceDouble  end2   )

#### Abstract

       Bracket a number. That is, given a number and an acceptable
       interval, make sure that the number is contained in the
       interval. (If the number is already in the interval, leave it
        alone. If not, set it to the nearest endpoint of the interval.)

#### Required_Reading

       None.

#### Keywords

       None.

#### Brief_I/O

       VARIABLE  I/O  DESCRIPTION
       --------  ---  --------------------------------------------------
       number     I   Number to be bracketed.
       end1       I   One of the bracketing endpoints for number.
       end2       I   The other bracketing endpoint for number.

       The function returns the bracketed number.

#### Detailed_Input

       number      is the number to be bracketed. That is, the
                   value of number is constrained to lie in the
                   interval bounded by end1 and end2.

       end1,
       end2        are the lower and upper bounds for number. The
                   order is not important.

#### Detailed_Output

       The function returnes the input number, if it was already in the
       interval provided. Otherwise the returned value is the nearest
       bound of the interval.

#### Parameters

       None.

#### Exceptions

       Error free.

#### Files

       None.

#### Particulars

       This routine provides a shorthand notation for code fragments
       like the following

          #include "SpiceUsr.h"
                .
                .
                .
          if ( number < end 1 )
          {
             number = end1;
          }
          else if ( number > end2 )
          {
             number = end2;
          }

       which occur frequently during the processing of program inputs.

#### Examples

        The following illustrates the operation of brcktd_c.

              brcktd_c (  -1.,   1.,  10. )  =  1.
              brcktd_c (  29.,   1.,  10. )  = 10.
              brcktd_c (   3., -10.,  10. )  =  3.
              brcktd_c (   3., -10.,  -1. )  = -1.

        The following code fragment illustrates a typical use for brcktd_c.

           #include "SpiceUsr.h"
                .
                .
                .
           /.
           Star magnitude limit must be in the range 0-10.
           ./

           prompt_c ( "Enter magnitude limit > ", 25, magLimStr );

           prsdp_c  ( magLimStr, &maglim );

           maglim = brcktd_c ( maglim, 0., 10. );

#### Restrictions

       None.

#### Literature_References

       None.

#### Author_and_Institution

       N.J. Bachman    (JPL)
       W.L. Taber      (JPL)
       I.M. Underwood  (JPL)

#### Version

       -CSPICE Version 1.0.1, 11-NOV-2006 (EDW)

          Added "None." text to Keywords section, required for
          API doc script (cspicehtml.pl) integrity checks.

       -CSPICE Version 1.0.0, 16-AUG-1999 (NJB) (WLT) (IMU)

#### Index_Entries

       bracket a d.p. value within an interval

#### Link to routine brcktd_c source file brcktd_c.c

    Wed Apr  5 17:54:29 2017