dafwda |
Table of contents
ProcedureDAFWDA ( DAF, write data to address ) SUBROUTINE DAFWDA ( HANDLE, BEGIN, END, DATA ) AbstractWrite or rewrite the double precision data bounded by two addresses within a DAF. Required_ReadingDAF KeywordsFILES DeclarationsIMPLICIT NONE INTEGER HANDLE INTEGER BEGIN INTEGER END DOUBLE PRECISION DATA ( * ) Brief_I/OVARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- HANDLE I Handle of a DAF. BEGIN, END I Initial, final address within file. DATA I Data to be stored between BEGIN and END. Detailed_InputHANDLE is the handle of a DAF. BEGIN, END are the initial and final addresses of a contiguous set of double precision numbers within a DAF. Presumably, these make up all or part of a particular array. DATA are the double precision data to be stored between the specified addresses within the specified file. Detailed_OutputNone. ParametersNone. Exceptions1) If BEGIN is zero or negative, the error SPICE(DAFNEGADDR) is signaled. 2) If the BEGIN > END, the error SPICE(DAFBEGGTEND) is signaled. FilesNone. ParticularsThe principal reason that DAFs are so easy to use is that the data in each DAF are considered to be one long contiguous set of double precision numbers. You can store data anywhere within a DAF without knowing (or caring) about the physical records in which they are stored. Of course, if you are merely adding arrays to a DAF, you should not use DAFWDA directly, but should use DAFANA (add new array) and its entry points, since these update the appropriate bookkeeping records automatically. ExamplesThe following code fragment illustrates the use of DAFWDA to update an imaginary array. The array begins with a directory containing 11 epochs. Each pair of epochs bounds an interval, and each interval is covered by a set of eight osculating elements. By accident, the elements were written with the wrong value for the GM of the central body (the last element in each set). Each set must be retrieved, updated,and rewritten. CALL DAFUS ( SUM, ND, NI, DC, IC ) BEGIN = IC(5) DO I = 1, 10 OFFSET = BEGIN + 11 + (I - 1) * 8 CALL DAFRDA ( HANDLE, OFFSET+1, OFFSET+8, ELEMENTS ) ELEMENTS(8) = NEW_GM CALL DAFWDA ( HANDLE, OFFSET+1, OFFSET+8, ELEMENTS ) END DO RestrictionsNone. Literature_ReferencesNone. Author_and_InstitutionN.J. Bachman (JPL) J. Diaz del Rio (ODC Space) H.A. Neilan (JPL) W.L. Taber (JPL) I.M. Underwood (JPL) VersionSPICELIB Version 1.1.0, 27-OCT-2021 (JDR) (NJB) Added IMPLICIT NONE statement. Local variable BUFFER is now initialized and saved. Edited the header to comply with NAIF standard. Moved DAF required reading from $Literature_References to $Required_Reading section. SPICELIB Version 1.0.2, 10-MAR-1992 (WLT) Comment section for permuted index source lines was added following the header. SPICELIB Version 1.0.1, 22-MAR-1990 (HAN) Literature references added to the header. SPICELIB Version 1.0.0, 31-JAN-1990 (IMU) |
Fri Dec 31 18:36:09 2021