Table of contents
CSPICE_PDPOOL inserts double precision data into the kernel pool.
Given:
name the scalar string name of the kernel pool variable to associate
with the values supplied in the array `values'.
help, name
STRING = Scalar
`name' is restricted to a length of 32 characters or less.
values an array of double precision values to load into the kernel
pool sub-system with the assigned variable name `name'.
help, values
DOUBLE = Array[N]
the call:
cspice_pdpool, name, values
inserts the variable `name' into the kernel pool with values as defined in
`dvals'.
None.
Any numerical results shown for this example may differ between
platforms as the results depend on the SPICE kernels used as input
and the machine specific arithmetic implementation.
1) The following program demonstrates how to programmatically
insert double precision data into the kernel pool.
Example code begins here.
PRO pdpool_ex1
;;
;; Define array sizes and the kernel variable name.
;;
PDPOOL_DIM = 9
PDPOOL_VAR = 'pdpool_array'
NUM_VARS = 30
;;
;; Create an array of doubles, 0 to (PIPOOL_DIM-1)
;;
pdpool_arr = dindgen( PDPOOL_DIM )
;;
;; Insert the data assigned to 'PDPOOL_VAR' into the kernel pool.
;;
cspice_pdpool, PDPOOL_VAR, pdpool_arr
;;
;; Retrieve the variable's associated values into the
;; array named 'values'. Retrieve all values, so set
;; 'START' to zero.
;;
START = 0
cspice_gdpool, PDPOOL_VAR, START, NUM_VARS, values, found
;;
;; Check we found the expected variable, and ensure
;; the expected values.
;;
if ( found ) then begin
print, 'Found array variable ' + PDPOOL_VAR + ' with entries:'
for i = 0, (n_elements(values)-1) do begin
print, values[i]
endfor
endif else begin
print, 'Variable ' + PDPOOL_VAR + ' not found in kernel pool.'
endelse
END
When this program was executed on a Mac/Intel/IDL8.x/64-bit
platform, the output was:
Found array variable pdpool_array with entries:
0.0000000
1.0000000
2.0000000
3.0000000
4.0000000
5.0000000
6.0000000
7.0000000
8.0000000
Kernel pool variable names are restricted to a length of 32
characters or less.
1) If `name' is already present in the kernel pool and there
is sufficient room to hold all values supplied in `values',
the old values associated with `name' will be overwritten.
2) If there is not sufficient room to insert a new variable into
the kernel pool and `name' is not already present in the kernel
pool, an error is signaled by a routine in the call tree of
this routine.
3) If there is not sufficient room to insert the values
associated with `name', the error SPICE(NOMOREROOM) is signaled
by a routine in the call tree of this routine.
4) If the kernel pool variable name length exceeds its maximum
allowed length (see Kernel Required Reading, kernel.req), the
error SPICE(BADVARNAME) is signaled by a routine in the call
tree of this routine.
5) If any of the input arguments, `name' or `values', is
undefined, an error is signaled by the IDL error handling
system.
6) If any of the input arguments, `name' or `values', is not of
the expected type, or it does not have the expected dimensions
and size, an error is signaled by the Icy interface.
None.
None.
ICY.REQ
KERNEL.REQ
None.
J. Diaz del Rio (ODC Space)
E.D. Wright (JPL)
-Icy Version 1.1.0, 01-JUN-2021 (JDR)
Changed the input argument name "dvals" to "values" for
consistency with other routines.
Edited the header to comply with NAIF standard.
Added example's problem statement.
Added -Parameters, -Exceptions, -Files, -Restrictions,
-Literature_References and -Author_and_Institution sections.
Removed reference to the routine's corresponding CSPICE header from
-Abstract section.
Added arguments' type and size information in the -I/O section.
-Icy Version 1.0.1, 10-FEB-2010 (EDW)
Added mention of the length restriction on the kernel pool variable
name "name".
-Icy Version 1.0.0, 16-JUN-2003 (EDW)
Set the value of a d.p. kernel pool variable
|