Index Page gfrefn_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

       void gfrefn_c ( SpiceDouble     t1,
                       SpiceDouble     t2,
                       SpiceBoolean    s1,
                       SpiceBoolean    s2,
                       SpiceDouble   * t  )

#### Abstract

       For those times when we can't do better, we use a bisection
       method to find the next time at which to test for state change.

#### Required_Reading

       None.

#### Keywords

       SEARCH
       UTILITY

#### Brief_I/O

       VARIABLE  I/O  DESCRIPTION
       --------  ---  --------------------------------------------------
       t1         I   One of two values bracketing a state change.
       t2         I   The other value that brackets a state change.
       s1         I   State at t1.
       s2         I   State at t2.
       t          O   New value at which to check for transition.

#### Detailed_Input

       t1         One of two abscissa values (usually times)
                  bracketing a state change.

       t2         The other abscissa value that brackets a state change.

       s1         System state at t1. This argument is provided
                  for forward compatibility; it's not currently used.

       s2         System state at t2. This argument is provided
                  for forward compatibility; it's not currently used.

#### Detailed_Output

       t          is the midpoint of t1 and t2.

#### Parameters

       None.

#### Exceptions

       Error free

#### Files

       None.

#### Particulars

       "Refinement" means reducing the size of a bracketing interval on the
       real line in which a solution is known to lie. In the GF setting,
       the solution is the time of a state transition of a binary function.

       This routine supports solving for locations of bracketed state
       transitions by the bisection method. This is the default refinement
       method used by the GF system.

       The argument list of this routine is compatible with the GF system's
       general root finding routine. Refinement routines created by users
       must have the same argument list in order to be used by the GF
       mid-level APIs such as gfocce_c and gffove_c.

#### Examples

       The following code fragment from an example program in the header of
       gfocce_c shows the address of this routine passed as the 12th argument.

          /.
          Perform the search.
          ./
          gfocce_c ( "ANY",
                     "MOON",     "ellipsoid",  "IAU_MOON",
                     "SUN",      "ellipsoid",  "IAU_SUN",
                     "LT",       "EARTH",      CNVTOL,
                     &gfstep_c,  &gfrefn_c,    rpt,
                     &gfrepi_c,  &gfrepu_c,    &gfrepf_c,
                     bail,       &gfbail_c,    &cnfine,
                     &result                              );

#### Restrictions

       No errors are returned by this routine.

#### Literature_References

       None.

#### Author_and_Institution

       N.J. Bachman   (JPL)
       W.L. Taber     (JPL)
       I.M. Underwood (JPL)
       L.S. Elson     (JPL)
       E.D. Wright    (JPL)

#### Version

       -CSPICE Version 1.0.0, 15-APR-2009 (NJB) (EDW)

#### Index_Entries

       GF standard step refinement

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

    Wed Apr  5 17:54:36 2017