SERIALIZE_DOUBLES

SERIALIZE_DOUBLES allows you to save static double precision data from your user subroutines when Solver is executing a SAVE/ command to be used later when reloading an analysis.

Use

Called By

Any user-written subroutine.

Prerequisite

The user subroutine is being called to serialize data.

Calling Sequence

CALL SERIALIZE_DOUBLES (d_array, n)

Input Argument

 
d_array
A double-precision array containing the data to be serialized.
n
An integer variable that specifies the number of values contained in d_array.

Example

F77:

IF(IFLAG .EQ. 3)THEN
... Make calls to sysfnc and sysary to set up dependencies ...
ELSEIF (IFLAG .EQ. 7)THEN
CALL SERIALIZE_DOUBLES(DP_DATA, N_DP_DATA)
ELSEIF (IFLAG .EQ. 9)THEN
CALL UNSERIALIZE_DOUBLES(DP_DATA, N_DP_DATA)
ENDIF

CXX:

switch(IFLAG){
case 3:
... Make calls to c_sysfnc and c_sysary to set up dependencies ...
case 7:
c_adams_serialize_integers(&d_dataSize, 1);
c_adams_serialize_doubles(d_data, d_dataSize);
break;
case 9:
c_adams_unserialize_integers(&d_dataSize, 1);
if( d_data )free(d_data);
d_data= (double*) malloc(sizeof(double)*d_dataSize);
c_adams_unserialize_doubles(d_data, d_dataSize);
break;
}