This function writes in parallel mode records of a type 13 segment (discrete states of the positions and velocities, Hermite interpolation with variable timesteps) to the SPK file associated to the ephemeris descriptor eph.
The reservation parameter must be the reservation id returned by the function writeph_spk13_par_reserve().
The target_index parameter is the index of the target in the targets array that was passed to the function writeph_spk13_par_reserve(), starting from 0.
The record_begin_index parameter is the index of the first record to be written in the target's segment, starting from 0.
The record_count parameter is the number of records to be written starting from the record_begin_index.
The states array must be of size record_count*6 and have the following structure :
X coord 1st record |
Y coord 1st record |
Z coord 1st record |
dX 1st record |
dY 1st record |
dZ 1st record |
... |
... |
... |
... |
... |
... |
X coord (record_count)th record |
Y coord (record_count)th record |
Z coord (record_count)th record |
dX (record_count)th record |
dY (record_count)th record |
dZ (record_count)th record |
The epochs array must be of size record_count and contain the epochs (in Julian date TDB) corresponding to each state vector, it has the following structure :
Epoch of the 1st record |
... |
Epoch of the (record_count)th record |
Multiple threads can call this function at the same time, but with different values of target_index and/or record_begin_index. The behavior is undefined if multiple threads overlap the written data : e.g., two threads write to the same target target_index and a common record number.