UG_IO SimSys SFUNC 3D Function Data File Type

An SFUNC file contains 3D field function data (scalar, vector, matrix and/or symmetric metric).

     { Number_of_Nodes, Number_of_Scalar_Functions, Number_of_Vector_Functions }

     [ { Function_Label } for scalar function 1,
       { Function_Label } for scalar function 2,
       ...
       { Function_Label } for scalar function Number_of_Scalar_Functions ]

     [ { Function_Label } for vector function 1,
       { Function_Label } for vector function 2,
       ...
       { Function_Label } for vector function Number_of_Vector_Functions ]

     [ { Function_Label } for matrix function 1,
       { Function_Label } for matrix function 2,
       ...
       { Function_Label } for matrix function Number_of_Matrix_Functions ]

     [ { Function_Label } for metric function 1,
       { Function_Label } for metric function 2,
       ...
       { Function_Label } for metric function Number_of_Metric_Functions ]

     [ { scalar function data at each node } for scalar function 1,
       { scalar function data at each node } for scalar function 2,
       ...
       { scalar function data at each node } for scalar function
         Number_of_Scalar_Functions ]

     [ { (X,Y,Z) vector function data at each node } for vector function 1,
       { (X,Y,Z) vector function data at each node } for vector function 2,
       ...
       { (X,Y,Z) vector function data at each node } for vector function
         Number_of_Vector_Functions ]

     [ { (Mat_0,Mat_1,..,Mat_8) matrix function data at each node } for matrix
         function 1,
       { (Mat_0,Mat_1,..,Mat_8) matrix function data at each node } for matrix
         function 2,
       ...
       { (Mat_0,Mat_1,..,Mat_8) matrix function data at each node } for matrix
         function Number_of_Matrix_Functions ]

     [ { (Met_0,Met_1,..,Met_5) metric function data at each node } for metric
         function 1,
       { (Met_0,Met_1,..,Met_5) metric function data at each node } for metric
         function 2,
       ...
       { (Met_0,Met_1,..,Met_5) metric function data at each node } for metric
         function Number_of_Metric_Functions ]

    	Number_of_Nodes			: Number of grid nodes.
    	Number_of_Scalar_Functions	: Number of scalar functions.
    	Number_of_Vector_Functions	: Number of vector functions.
    	Number_of_Matrix_Functions	: Number of matrix functions.
    	Number_of_Metric_Functions	: Number of metric functions.
    	Function_Label			: Function label.

    The 9-coefficients of the matrix are Mat_0, Mat_1, .., Mat_8.
    They are ordered as shown below.

    		 Mat_0 Mat_1 Mat_2
    	Matrix = Mat_1 Mat_3 Mat_4
    		 Mat_2 Mat_4 Mat_5

    	Mat_0				: coefficient 0 of matrix.
    	Mat_1				: coefficient 1 of matrix.
    	Mat_2				: coefficient 2 of matrix.
    	Mat_3				: coefficient 3 of matrix.
    	Mat_4				: coefficient 4 of matrix.
    	Mat_5				: coefficient 5 of matrix.
    	Mat_6				: coefficient 6 of matrix.
    	Mat_7				: coefficient 7 of matrix.
    	Mat_8				: coefficient 8 of matrix.

    The 6-coefficients of the symmetric metric are Met_0, Met_1, .., Met_5.
    They are ordered as shown below.

    		 Met_0 Met_1 Met_2
    	Metric = Met_1 Met_3 Met_4
    		 Met_2 Met_4 Met_5

    	Met_0				: coefficient 0 of symmetric metric.
    	Met_1				: coefficient 1 of symmetric metric.
    	Met_2				: coefficient 2 of symmetric metric.
    	Met_3				: coefficient 3 of symmetric metric.
    	Met_4				: coefficient 4 of symmetric metric.
    	Met_5				: coefficient 5 of symmetric metric.

In the above description, the brackets [ ... ] enclose items in a loop, and braces { ... } enclose items in a single logical record.

In C or C++ Function Label must be declared as "char Function_Label[21]". For example,

    	char Function_Label[21];
    	strcpy (Function_Label, 'label_for_function');

Do not use more than 20 characters plus the terminating \0 per function label. In Fortran, Function_Label must be declared as "character*21 Function_Label". For example,

    	character*21 Function_Label
    	Function_Label = 'label_for_function   '

In Fortran, do not use more than 20 characters of text per label. The last location (location 21 out of 21) must be blank.

In FORTRAN unformatted form, the data must be written out or read in using the record format defined above. The floating point data items must all be either real*4 or real*8 data.

In C binary form, the data may be written out or read in using records the length of loops or of the individual data items. The floating point data items must all be either float or double data.

In ASCII formatted form, the data may be written out or read in using records the length of loops or of the individual data items. Data items may be written out in free format of any specific form.

Up One Level

UG_IO SimSys Files Home