PCL Reference Manual > Results Postprocessing Functions > Results Utility Functions
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX''">XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX''">   
Results Utility Functions
This section describes results utility functions used to extract results data and attributes of results data from the database. These are basic functions for getting at results data in the database for use in customized PCL functions.
res_utl_extract_elem_pos_ids
(result_ids, elem_list, count, ids, npos, posids)
Description:
 
 
This function will extract the internal element position identifiers for the results data associated with a list of elements.
Input:
 
 
INTEGER
result_ids(5)
This value specifies the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier.
STRING
elem_list[]
This value specifies a list of elements for which results are extracted.
Output:
 
 
INTEGER
count
This value returns the number of returned element identifiers.
INTEGER
ids(VIRTUAL)
This value returns the list of element identifiers.
INTEGER
npos(VIRTUAL)
This value returns the number of element positions per element.
INTEGER
posids(VIRTUAL)
This value returns all of the element position identifiers for the specified elements.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500005
No Elements are found for the specified result matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500009
No results are found in the database matching the specified Ids.
4500014
An error has occurred interpreting the input List string.
4500017
The specified operation is not valid.
13000054
Result case not found.
13000071
Result case type not found.
13000085
Cursor not open.
13000086
No Records Found.
13000117
The query specified has completed.
13000210
The system is out of virtual memory.
14000281
LpExpandPclVariables: Virtual memory is full.
14000298
LpPicklistDecoder: Parse error.
14000299
LpPicklistDecoder: Memory is exhausted.
14000302
LpPicklistDecoderWithLookup: Memory is exhausted.
Remarks:
The results data from which the information is extracted will be held in memory for further operations. Only one result is held in memory at a time.
The output values ids and npos will be allocated with the number of offsets defined by the output value count.
The output value posids will be allocated with the number of offsets defined by the sum of all of entries in the output value npos.
This function can display a warning popup message form with the following message:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
Example:
Please see res_utl_extract_elem_pos_ids.
  
res_utl_get_elem_pos_loc
(elem_id, param_flag, epos_id, location)
Description:
 
 
This function will extract the internal element position location for the results data associated with an element identifier.
Input:
 
 
INTEGER
elem_id
This value specifies the element identifier.
INTEGER
param_flag
This value specifies the setting of the parameter flag: 0=XYZ global coordinates and 1=element parametric coordinates.
INTEGER
epos_id
This value specifies the element position identifier.
Output:
 
 
REAL
location(4)
This value returns the XYZ or element parametric coordinates.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500008
The input Location string is invalid.
13000021
Element not found.
Remarks:
This function can display an information popup message form with the following messages:
16000001 Error code %I% occurred in %A%.
16000002 Called from %A%.
30001425 Notice: %I% interpolants lie off the field.
30001437 An attempt was made to average nodal values for an element. All of the element nodes were not found for %I% elements.
This function can display a warning popup message form with the following messages:
38000199 WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Automatic gap fill invoked!
OR
WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Delete and Rebuild the Composite Trim Surface!
OR
ERROR -- Composite Trim Surface Evaluator cannot compute a point on surface! The problem is a vertical surface. Check the geometry, change view orientation, Delete and Rebuild the Composite Trim Surface!
30001424 Routine to locate points in elements did not converge for %I% interpolants.
This function can display a fatal popup message form with the following messages:
13000088 Preference not found.
16000201 Database error for item %I%: %A%.
30001061 Field %A% is disassociated with geometry entity and unusable unless a new geometry entity is provided.
38000136 CompTrimSurface processor cannot locate surface with LABEL=%I% -- This is a database FAILURE! -- Delete and Rebuild the CompTrim Surface.
Example:
Please see res_utl_get_elem_pos_loc.
   
res_utl_get_result_info
(result_ids, title, nres, data_type, assoc, resloc, cidflag, minloc, maxloc)
Description:
 
 
This function extracts information about the specified results data.
Input:
 
 
INTEGER
result_ids(5)
This value specifies the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier.
Output:
 
 
STRING
title[80](3)
This value returns the title of the current result.
INTEGER
nres
This value returns the total number of results.
INTEGER
data_type
This value returns the data type. Valid values are: 1=scalar, 2=vector, and 3=tensor.
INTEGER
assoc
This value returns the association type. Valid values are: 1=nodal and 2=element.
INTEGER
resloc
This value returns the results location. Valid values are: 1=centroidal, 2=nodal, and 3=gauss point.
LOGICAL
cidflag
This value returns TRUE if the results are defined in a non-global system.
INTEGER
minloc(2,6)
This value returns the identifier and location for each minimum result component. The location is used only for multiple element results.
INTEGER
maxloc(2,6)
This value returns the identifier and location for each maximum result component. The location is used only for multiple element results.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500005
No Elements are found for the specified result matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500009
No results are found in the database matching the specified Ids.
13000054
Result case not found.
13000071
Result case type not found.
13000086
No Records Found.
13000210
The system is out of virtual memory.
Remarks:
The results data from which the information is extracted will be held in memory for further operations. Only one result is held in memory at a time.
This function can display a warning popup message form with the following message:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
Example:
Please see res_utl_get_result_info
  
res_utl_clear_result
()
Description:
 
 
This function clears any previously used results data from memory.
Input:
 
 
None.
 
 
Output:
 
 
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully.
Error Conditions:
 
None.
Remarks:
None.
Example:
Please see res_utl_clear_result.
  
res_utl_get_result_entities
(result_ids, id_list)
Description:
 
 
This function returns a list of the identifiers for which the specified results exist.
Input:
 
 
INTEGER
result_ids(5)
This value specifies the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier.
Output:
 
 
STRING
id_list[VIRTUAL]
This value returns a list of the identifiers for which the specified results exist.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500005
No Elements are found for the specified result matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500009
No results are found in the database matching the specified Ids.
13000054
Result case not found.
13000071
Result case type not found.
13000086
No Records Found.
13000210
The system is out of virtual memory.
14000001
LpGetHeapSpace: Allocated heapspace is exhausted.
14000201
Invalid output string specified for call.
Remarks:
The specified result will be held in memory for further operations. Only one result is held in memory at a time.
This function can display a warning popup message form with the following message:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
Example:
Please see res_utl_get_result_entities.
  
res_utl_get_result_type
(result_ids, result_type)
Description:
 
 
This function returns the result type for the specified results.
Input:
 
 
INTEGER
result_ids(5)
This value specifies the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier.
Output:
 
 
INTEGER
result_type
This value returns the result type. Valid values are: 1=Scalar, 2=Vector, and 3=Tensor.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500005
No Elements are found for the specified result matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500009
No results are found in the database matching the specified Ids.
13000054
Result case not found.
13000071
Result case type not found.
13000210
The system is out of virtual memory.
Remarks:
None.
Example:
Please see res_utl_get_result_type.
.  
res_utl_get_results_cids
(result_ids, result_type, nids, ids, cids)
Description:
 
 
This function returns the coordinate frame identifiers used for the result defined at the specified node or element locations.
Input:
 
 
INTEGER
result_ids(5)
This value specifies the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier.
INTEGER
result_type
This value specifies the type: 1=node, and 2=element.
INTEGER
nids
This value specifies the number of identifiers.
INTEGER
ids(nids)
This value specifies node or element identifiers.
Output:
 
 
INTEGER
cids()
This value returns a list of coordinate frame identifiers in which the results specified are oriented. Valid values are: -1=element local and 0=global.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500004
No Nodes found in the database matching the input list.
4500005
No Elements found in the database matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500009
No results are found in the database matching the specified Ids.
4500016
The input list type is not valid.
13000054
Result case not found.
13000071
Result case type not found.
13000086
No Records Found.
13000210
The system is out of virtual memory.
Remarks:
The specified result will be held in memory for further operations. Only one result is held in memory at a time.
This function can display a warning popup message form with the following message:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
Example:
Please see res_utl_get_results_cids.
res_utl_extract_nodal_results
(result_ids, node_list, derivation, cid, data_type, nres, ids, results, minloc, maxloc)
Description:
 
 
This function extracts the specified results data from the database.
Input:
 
 
INTEGER
result_ids(5)
This value specifies the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier.
STRING
node_list[]
This value specifies a list of nodes for which to extract results.
STRING
derivation[10]
This value specifies the derivation specifier if the results are to be derived. A value of null will leave the result as is. See the remarks below for more information.
STRING
cid[]
This value specifies the coordinate system for vector/tensor transformations. A null string is used to leave the coordinate frame identifier as is.
Output:
 
 
INTEGER
data_type
This value returns the data type. Valid values are: 1=scalar, 2=vector, and 3=tensor.
INTEGER
nres
This value returns the number of returned node identifiers.
INTEGER
ids(VIRTUAL)
This value returns a list of node identifiers.
REAL
results(VIRTUAL)
This value returns all of the results at the specified nodes.
INTEGER
minloc(6)
This value returns the array offsets for each minimum result component in the output value results.
INTEGER
maxloc(6)
This value returns the array offsets for each maximum result component in the output value results.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500002
An error has occurred calculating a nodal averaged result.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500004
No Nodes found in the database matching the input list.
4500005
No Elements found in the database matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500009
No results are found in the database matching the specified Ids.
4500010
The derivation specified in invalid.
4500011
A error has occurred extrapolating this result to the element nodes.
4500014
An error has occurred interpreting the input List string.
4500015
The specified Coordinate Frame does not exist.
4500018
The Coordinate Frame List is not valid.
13000054
Result case not found.
13000056
Coordinate frame not found.
13000071
Result case type not found.
13000085
Cursor not open.
13000086
No Records Found.
13000117
The query specified has completed.
13000210
The system is out of virtual memory.
14000281
LpExpandPclVariables: Virtual memory is full.
14000298
LpPicklistDecoder: Parse error.
14000299
LpPicklistDecoder: Memory is exhausted.
14000302
LpPicklistDecoderWithLookup: Memory is exhausted.
Remarks:
The specified result will be held in memory for further operations. Only one result is held in memory at a time.
This function will perform extrapolation and averaging as necessary when element based results are requested.
The result data type returned will be determined by the input value derivation.
The output value ids will be allocated with the number of offsets defined by the output value nres.
The output value results will be allocated as a two dimensional array where the number of offsets in the first dimension of the array will be returned by the output value nres. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output value results will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
Vector or tensor results will be transformed to the alternate coordinate frame identifier if specified.
The input value derivation can have the following values:
:
 
Tensor to Scalar:
“VONM”
“OCT”
“HYDRO”,
 
 
“TRESCA”
“INV1”
“INV2”
 
 
“INV3”
“MAXSHR”
“MAXCMP”
 
 
“MINCMP”
“P1”
“P2”
 
 
“P3”
“XX”
“YY”
 
 
“XY”
“YZ”
“ZX”
 
 
 
 
 
 
Tensor to Vector:
“PV1”
“PV2”
“PV3”
 
 
any six characters such as “XXYYZZ”
 
 
 
 
 
 
Vector to Scalar:
“XX”
“YY”
“ZZ”
 
 
“MAG”
“MAXCMP”
“MINCMP”
 
 
“AVG”
 
 
This function can display an information popup message form with the following messages:
16000001 Error code %I% occurred in %A%.
16000002 Called from %A%.
30001425 Notice: %I% interpolants lie off the field.
30001437 An attempt was made to average nodal values for an element. All of the element nodes were not found for %I% elements.
This function can display a warning popup message form with the following messages:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
38000199 WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Automatic gap fill invoked!
OR
WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Delete and Rebuild the Composite Trim Surface!
OR
ERROR -- Composite Trim Surface Evaluator cannot compute a point on surface! The problem is a vertical surface. Check the geometry, change view orientation, Delete and Rebuild the Composite Trim Surface!
30001424 Routine to locate points in elements did not converge for %I% interpolants.
This function can display a fatal popup message form with the following messages:
13000088 Preference not found.
16000201 Database error for item %I%: %A%.
30001061 Field %A% is disassociated with geometry entity and unusable unless a new geometry entity is provided.
38000136 CompTrimSurface processor cannot locate surface with LABEL=%I% -- This is a database FAILURE! -- Delete and Rebuild the CompTrim Surface.
Example:
Please see res_utl_extract_nodal_results.
res_utl_extract_nodal_results2
(result_ids, node_list, derivation, cid_list, avg_method, avg_domain, extrap_method, complex_form, complex_angle, data_type, nres, ids, results, minloc, maxloc)
Description:
 
 
This function extracts the specified results data from the database.
Input:
 
 
INTEGER
result_ids(5)
This value specifies the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier.
STRING
node_list[]
This value specifies a list of nodes for which to extract results.
STRING
derivation[10]
This value specifies the derivation specifier if the results are to be derived. A value of null will leave the result as is. See the remarks below for more information.
STRING
cid[]
This value specifies the coordinate system for vector/tensor transformations. A null string is used to leave the coordinate frame identifier as is.
STRING
avg_method[]
This value specifies the averaging method to be used.
STRING
avg_domain[]
This value specifies the averaging domain to be used.
STRING
extrap_method[]
This value specifies the extrapolation method to be used.
STRING
complex_form[]
This value specifies the form to be used for complex numbers.
REAL
complex_angle
This value is used with the complex results when the complex_form is “Angle”.
Output:
 
 
INTEGER
data_type
This value returns the data type. Valid values are: 1=scalar, 2=vector, and 3=tensor.
INTEGER
nres
This value returns the number of returned node identifiers.
INTEGER
ids(VIRTUAL)
This value returns a list of node identifiers.
REAL
results(VIRTUAL)
This value returns all of the results at the specified nodes.
INTEGER
minloc(6)
This value returns the array offsets for each minimum result component in the output value results.
INTEGER
maxloc(6)
This value returns the array offsets for each maximum result component in the output value results.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500002
An error has occurred calculating a nodal averaged result.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500004
No Nodes found in the database matching the input list.
4500005
No Elements found in the database matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500009
No results are found in the database matching the specified Ids.
4500010
The derivation specified in invalid.
4500011
A error has occurred extrapolating this result to the element nodes.
4500014
An error has occurred interpreting the input List string.
4500015
The specified Coordinate Frame does not exist.
4500018
The Coordinate Frame List is not valid.
13000054
Result case not found.
13000056
Coordinate frame not found.
13000071
Result case type not found.
13000085
Cursor not open.
13000086
No Records Found.
13000117
The query specified has completed.
13000210
The system is out of virtual memory.
14000281
LpExpandPclVariables: Virtual memory is full.
14000298
LpPicklistDecoder: Parse error.
14000299
LpPicklistDecoder: Memory is exhausted.
14000302
LpPicklistDecoderWithLookup: Memory is exhausted.
Remarks:
The specified result will be held in memory for further operations. Only one result is held in memory at a time.
This function will perform extrapolation and averaging as necessary when element based results are requested.
The result data type returned will be determined by the input value derivation.
The output value ids will be allocated with the number of offsets defined by the output value nres.
The output value results will be allocated as a two-dimensional array where the number of offsets in the first dimension of the array will be returned by the output value nres. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output value results will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
Vector or tensor results will be transformed to the alternate coordinate frame identifier if specified.
The input value derivation can have the following values:
:
 
Tensor to Scalar:
“VONM”
“OCT”
“HYDRO”,
 
 
“TRESCA”
“INV1”
“INV2”
 
 
“INV3”
“MAXSHR”
“MAXCMP”
 
 
“MINCMP”
“P1”/”MAJOR”
“P2”/”INTER”
 
 
“P3”/”MINOR”
“XX”
“YY”
 
 
“XY”
“YZ”
“ZX”
 
 
“MXSH2D”
“MXCP2D”
“MNCP2D”
 
 
“MJR2D”
“MNR2D”
“TRES2D”
 
 
 
 
 
 
Tensor to Vector:
“PV1”/”MAJORV”
“PV2”/”INTERV”
“PV3”/”MINORV”
 
 
“MJRV2D”
“MNRV2D”
 
 
 
 
 
 
 
Vector to Scalar:
“XX”
“YY”
“ZZ”
 
 
“MAG”
“MAXCMP”
“MINCMP”
 
 
“AVG”
 
 
The input value avg_method can have one of the following values:
“DeriveAverage”, “AverageDerive”, “Difference”, or “Sum”
The input value avg_domain can have one of the following values:
“All”, “Material”, “Property”, “EType”, “Target”, “Element”
The input extrap_method can have one of the following values:
“ShapeFunc”, “Average”, “Centroid”, “Max”, “Min”, “AsIs”
The input complex_form can have one of the following values:
“Real”, “Imaginary”, “Magnitude”, “Phase”, “Angle”
This function can display an information popup message form with the following messages:
16000001 Error code %I% occurred in %A%.
16000002 Called from %A%.
30001425 Notice: %I% interpolants lie off the field.
30001437 An attempt was made to average nodal values for an element. All of the element nodes were not found for %I% elements.
This function can display a warning popup message form with the following messages:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
38000199 WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Automatic gap fill invoked!
OR
WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Delete and Rebuild the Composite Trim Surface!
OR
ERROR -- Composite Trim Surface Evaluator cannot compute a point on surface! The problem is a vertical surface. Check the geometry, change view orientation, Delete and Rebuild the Composite Trim Surface!
30001424 Routine to locate points in elements did not converge for %I% interpolants.
This function can display a fatal popup message form with the following messages:
13000088 Preference not found.
16000201 Database error for item %I%: %A%.
30001061 Field %A% is disassociated with geometry entity and unusable unless a new geometry entity is provided.
38000136 CompTrimSurface processor cannot locate surface with LABEL=%I% -- This is a database FAILURE! -- Delete and Rebuild the CompTrim Surface.
Example:
INTEGER i, nres, dtype, minloc(6), maxloc(6), status
INTEGER nids(VIRTUAL)
REAL results(VIRTUAL)
 
/* Extract von Mises nodal results from the element tensor result with Loadcase ID=2, Subcase ID=1,Primary Res ID=3, Secondary Res ID=1, Layer ID=1 */
status = res_utl_extract_nodal_results( [2,1,3,1,1], "Node 1:#", @
         "vonm", "", dtype, nres, nids, results, minloc, maxloc )
IF( status != 0 ) THEN @ /* print message if error */
   msg_to_form( status, 4, 0, 0, 0., "" )
ELSE
   /* print out min/max */
   i = minloc(1)
   ui_writec(" Min Id= %d, von Mises Stress= %g", ids(i), results(i) )
   i = maxloc(1)
   ui_writec(" Max Id= %d, von Mises Stress= %g", ids(i), results(i) )
END IF
 
res_utl_extract_nodal_history
(nlcs, lcids, subids, result_ids, node_list, derivation, cid, data_type, nres, ids, results, minloc, maxloc)
Description:
 
 
This function extracts the specified results data from the database.
Input:
 
 
INTEGER
nlcs
This value specifies the number of result cases to be extracted.
INTEGER
lcids(nlcs)
This value specifies the loadcase identifiers.
INTEGER
subids(nlcs)
This value specifies the subcase identifiers.
INTEGER
result_ids(3)
This value specifies the primary result identifier, secondary result identifier, and layer identifier.
STRING
node_list[]
This value specifies a list of nodes at which to extract results.
STRING
derivation[10]
This value specifies the derivation specifier if the results are to be derived. A value of null will leave the result as is. See the remarks below for more information.
STRING
cid[]
This value specifies the coordinate system for vector/tensor transformations. A null string is used to leave the coordinate frame identifier as is.
Output:
 
 
INTEGER
data_type
This value returns the data type. Valid values are: 1=scalar, 2=vector, and 3=tensor.
INTEGER
nres
This value returns the number of node identifiers.
INTEGER
ids(VIRTUAL)
This value returns a list of node identifiers.
REAL
results(VIRTUAL)
This value returns all of the results at the specified nodes for each result case.
INTEGER
minloc(VIRTUAL)
This value returns the load case or subcase identifier array offsets for each node minimum in the output value results.
INTEGER
maxloc(VIRTUAL)
This value returns the load case or subcase identifier array offsets for each maximum node in the output value results.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500002
An error has occurred calculating a nodal averaged result.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500004
No Nodes found in the database matching the input list.
4500005
No Elements found in the database matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500009
No results are found in the database matching the specified Ids.
4500010
The derivation specified in invalid.
4500011
A error has occurred extrapolating this result to the element nodes.
4500014
An error has occurred interpreting the input List string.
4500015
The specified Coordinate Frame does not exist.
4500018
The Coordinate Frame List is not valid.
13000054
Result case not found.
13000056
Coordinate frame not found.
13000071
Result case type not found.
13000085
Cursor not open.
13000086
No Records Found.
13000117
The query specified has completed.
13000210
The system is out of virtual memory.
14000281
LpExpandPclVariables: Virtual memory is full.
14000298
LpPicklistDecoder: Parse error.
14000299
LpPicklistDecoder: Memory is exhausted.
14000302
LpPicklistDecoderWithLookup: Memory is exhausted.
Remarks:
The specified result will be held in memory for further operations. Only one result is held in memory at a time.
This function will perform extrapolation and averaging as necessary when element based results are requested.
The result data type returned will be determined by the input value derivation.
The output value ids will be allocated with the number of offsets defined by the output value nres.
The output value results will be allocated as a three dimensional array where the number of offsets in the first dimension of the array will be set by the input value nlcs. The number of offsets in the second dimension of the array will be set by the output value nres. The number of offsets in the third dimension is dependent on the input value derivation. The third dimension of the output value results will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
The output values minloc and maxloc will be allocated as two dimensional arrays where the number of offsets in the first dimension of the array will be set by the output value nres. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output values minloc and maxloc will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
Vector or tensor results will be transformed to the alternate coordinate frame identifier if specified.
Minimum and maximum subcase locations will be determined for each node specified.
The input value derivation can have the following values:
 
Tensor to Scalar:
“VONM”
“OCT”
“HYDRO”,
 
 
“TRESCA”
“INV1”
“INV2”
 
 
“INV3”
“MAXSHR”
“MAXCMP”
 
 
“MINCMP”
“P1”/”MAJOR”
“P2”/”INTER”
 
 
“P3”/”MINOR”
“XX”
“YY”
 
 
“XY”
“YZ”
“ZX”
 
 
“MXSH2D”
“MXCP2D”
“MNCP2D”
 
 
“MJR2D”
“MNR2D”
“TRES2D”
 
 
 
 
 
 
Tensor to Vector:
“PV1”/”MAJORV”
“MJRV2D”
“PV2”/”INTERV”
“MNRV2D”
“PV3”/”MINORV”
 
 
“MJRV2D”
“MNRV2D”
 
 
 
any six characters such as “XXYYZZ”
 
 
 
 
 
 
Vector to Scalar:
“XX”
“YY”
“ZZ”
 
 
“MAG”
“MAXCMP”
“MINCMP”
 
 
“AVG”
 
 
This function can display an information popup message form with the following messages:
16000001 Error code %I% occurred in %A%.
16000002 Called from %A%.
30001425 Notice: %I% interpolants lie off the field.
30001437 An attempt was made to average nodal values for an element. All of the element nodes were not found for %I% elements.
This function can display a warning popup message form with the following messages:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
38000199 WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Automatic gap fill invoked!
OR
WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Delete and Rebuild the Composite Trim Surface!
OR
ERROR -- Composite Trim Surface Evaluator cannot compute a point on surface! The problem is a vertical surface. Check the geometry, change view orientation, Delete and Rebuild the Composite Trim Surface!
30001424 Routine to locate points in elements did not converge for %I% interpolants.
This function can display a fatal popup message form with the following messages:
13000088 Preference not found.
16000201 Database error for item %I%: %A%.
30001061 Field %A% is disassociated with geometry entity and unusable unless a new geometry entity is provided.
38000136 CompTrimSurface processor cannot locate surface with LABEL=%I% -- This is a database FAILURE! -- Delete and Rebuild the CompTrim Surface.
Example:
Please see res_utl_extract_nodal_history.
 
res_utl_extract_nodal_history2
(nlcs, lcids, subids, result_ids, node_list, derivation, cid, avg_method, avg_domain, extrap_method, complex_form, complex_angle, data_type, nres, ids, results, minloc, maxloc)
Description:
 
 
This function extracts the specified results data from the database.
Input:
 
 
INTEGER
nlcs
This value specifies the number of result cases to be extracted.
INTEGER
lcids(nlcs)
This value specifies the loadcase identifiers.
INTEGER
subids(nlcs)
This value specifies the subcase identifiers.
INTEGER
result_ids(3)
This value specifies the primary result identifier, secondary result identifier, and layer identifier.
STRING
node_list[]
This value specifies a list of nodes at which to extract results.
STRING
derivation[10]
This value specifies the derivation specifier if the results are to be derived. A value of null will leave the result as is. See the remarks below for more information.
STRING
cid[]
This value specifies the coordinate system for vector/tensor transformations. A null string is used to leave the coordinate frame identifier as is.
STRING
avg_method[]
This value specifies the averaging method to be used.
STRING
avg_domain[]
This value specifies the averaging domain to be used.
STRING
extrap_method[]
This value specifies the extrapolation method to be used.
STRING
complex_form[]
This value specifies the form to be used for complex numbers.
REAL
complex_angle
This value is used with complex results when the complex_form is “Angle”.
Output:
 
 
INTEGER
data_type
This value returns the data type. Valid values are: 1=scalar, 2=vector, and 3=tensor.
INTEGER
nres
This value returns the number of node identifiers.
INTEGER
ids(VIRTUAL)
This value returns a list of node identifiers.
REAL
results(VIRTUAL)
This value returns all of the results at the specified nodes for each result case.
INTEGER
minloc(VIRTUAL)
This value returns the load case or subcase identifier array offsets for each node minimum in the output value results.
INTEGER
maxloc(VIRTUAL)
This value returns the load case or subcase identifier array offsets for each maximum node in the output value results.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500002
An error has occurred calculating a nodal averaged result.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500004
No Nodes found in the database matching the input list.
4500005
No Elements found in the database matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500009
No results are found in the database matching the specified Ids.
4500010
The derivation specified in invalid.
4500011
A error has occurred extrapolating this result to the element nodes.
4500014
An error has occurred interpreting the input List string.
4500015
The specified Coordinate Frame does not exist.
4500018
The Coordinate Frame List is not valid.
13000054
Result case not found.
13000056
Coordinate frame not found.
13000071
Result case type not found.
13000085
Cursor not open.
13000086
No Records Found.
13000117
The query specified has completed.
13000210
The system is out of virtual memory.
14000281
LpExpandPclVariables: Virtual memory is full.
14000298
LpPicklistDecoder: Parse error.
14000299
LpPicklistDecoder: Memory is exhausted.
14000302
LpPicklistDecoderWithLookup: Memory is exhausted.
Remarks:
The specified result will be held in memory for further operations. Only one result is held in memory at a time.
This function will perform extrapolation and averaging as necessary when element based results are requested.
The result data type returned will be determined by the input value derivation.
The output value ids will be allocated with the number of offsets defined by the output value nres.
The output value results will be allocated as a three-dimensional array where the number of offsets in the first dimension of the array will be set by the input value nlcs. The number of offsets in the second dimension of the array will be set by the output value nres. The number of offsets in the third dimension is dependent on the input value derivation. The third dimension of the output value results will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
The output values minloc and maxloc will be allocated as two-dimensional arrays where the number of offsets in the first dimension of the array will be set by the output value nres. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output values minloc and maxloc will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
Vector or tensor results will be transformed to the alternate coordinate frame identifier if specified.
Minimum and maximum subcase locations will be determined for each node specified.
The input value derivation can have the following values:
 
Tensor to Scalar:
“VONM”
“OCT”
“HYDRO”,
 
 
“TRESCA”
“INV1”
“INV2”
 
 
“INV3”
“MAXSHR”
“MAXCMP”
 
 
“MINCMP”
“P1”/”MAJOR”
“P2”/”INTER”
 
 
“P3”/”MINOR”
“XX”
“YY”
 
 
“XY”
“YZ”
“ZX”
 
 
“MXSH2D”
“MXCP2D”
“MNCP2D”
 
 
“MJR2D”
“MNR2D”
“TRES2D”
 
 
 
 
 
 
Tensor to Vector:
“PV1”/”MAJORV”
“MJRV2D”
“PV2”/”INTERV”
“MNRV2D”
“PV3”/”MINORV”
 
 
any six characters such as “XXYYZZ”
 
 
 
 
 
 
Vector to Scalar:
“XX”
“YY”
“ZZ”
 
 
“MAG”
“MAXCMP”
“MINCMP”
 
 
“AVG”
 
 
The input value avg_method can have the following values:
“DeriveAverage”, “AverageDerive”, “Difference”, “Sum”
The input value avg_domain can have the following values:
“All”, “Material”, “Property”, “EType”, “Target”, “Element”
The input value extrap_method can have the following values:
“ShapeFunc”, “Average”, “Centroid”, “Max”, “Min”, “AsIs”
The input value complex_form can have the following values:
“Real”, “Imaginary”, “Magnitude”, “Phase”, “Angle”
This function can display an information popup message form with the following messages:
16000001 Error code %I% occurred in %A%.
16000002 Called from %A%.
30001425 Notice: %I% interpolants lie off the field.
30001437 An attempt was made to average nodal values for an element. All of the element nodes were not found for %I% elements.
This function can display a warning popup message form with the following messages:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
38000199 WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Automatic gap fill invoked!
OR
WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Delete and Rebuild the Composite Trim Surface!
OR
ERROR -- Composite Trim Surface Evaluator cannot compute a point on surface! The problem is a vertical surface. Check the geometry, change view orientation, Delete and Rebuild the Composite Trim Surface!
30001424 Routine to locate points in elements did not converge for %I% interpolants.
This function can display a fatal popup message form with the following messages:
13000088 Preference not found.
16000201 Database error for item %I%: %A%.
30001061 Field %A% is disassociated with geometry entity and unusable unless a new geometry entity is provided.
38000136 CompTrimSurface processor cannot locate surface with LABEL=%I% -- This is a database FAILURE! -- Delete and Rebuild the CompTrim Surface.
Example:
INTEGER i, j, nres, dtype, minloc(VIRTUAL), maxloc(VIRTUAL), status
INTEGER nids(VIRTUAL), subids(5) = 1,2,3,4,5
REAL results(VIRTUAL)
 
/* Extract von Mises nodal results from the element tensor result with Loadcases ID=2, Subcases ID=1 thru 5,Primary Res ID=3, Secondary Res ID=1, Layer ID=1 */
status = res_utl_extract_nodal_results( 5,[2,2,2,2,2],subids, @
         [3,1,1], "Node 1:#", "vonm", "", dtype, nres, nids, results, @
         minloc, maxloc )
IF( status != 0 ) THEN  /* print message if error */
   msg_to_form( status, 4, 0, 0, 0., "" )
ELSE
   /* print out min/max subcase/value for each node */
   FOR( i = 1 TO nres )
      ui_writec(" Id= %d, Min Subcase= %d, von Mises Stress= %g", @
                  ids(i), subids(minloc(i)), results(minloc(i),i) )
      ui_writec(" Id= %d, Max Subcase= %d, von Mises Stress= %g", @
                  ids(i), subids(maxloc(i)), results(maxloc(i),i) )
   END FOR
END IF
 
  
res_utl_create_nodal_result
(result_ids, primary_title, secondary_title, nids, ids, cid_list, data_type, results)
Description:
 
 
This function adds the specified results data to the database.
Input:
 
 
INTEGER
result_ids(5)
This value specifies the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier. The primary and result identifiers are not used as inputs by this function. This value is used as both an input and an output to the function and would be passed by the calling function as a single argument.
STRING
primary_title[80]
This value specifies the primary result title.
STRING
secondary_title[80]
This value specifies the secondary result title.
INTEGER
nids
This value specifies the number of input node identifiers.
INTEGER
ids(nids)
This value specifies the node identifiers for the results.
STRING
cid_list[]
This value specifies the alternate coordinate system for the vector or tensor results. A null string is used for the global coordinate system.
INTEGER
data_type
This value specifies the data type to use: 1=scalar, 2=vector, and 3=tensor.
REAL
results()
This value specifies all of the results at the specified nodes.
Output:
 
 
INTEGER
result_ids(5)
This value returns the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier. The load case, subcase, and layer identifiers are not used as output values by this function. The primary and result identifiers are used as outputs by this function. This value is used as both an input and an output to the function and would be passed by the calling function as a single argument.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500004
No Nodes found in the database matching the input list.
4500007
The specified Layer Id is not associated with the specified result.
4500015
The specified Coordinate Frame does not exist.
4500018
The Coordinate Frame List is not valid.
13000054
Result case not found.
Remarks:
This function expects that a load case or subcase and a layer position already exist.
The value result_ids will be used as both an input and an output value.
The primary and secondary identifiers returned by the input and output value result_ids are based on the input values primary_title and secondary_title. These input values primary_title and secondary_title will either match up with existing primary and secondary results or new ones will be generated.
Example:
Please see res_utl_create_nodal_result.
 
res_utl_extract_elem_results
(result_ids, elem_list, derivation, location, cid, data_type, resloc, nres, ids, nresults, results, minloc, maxloc)
Description:
 
 
This function extracts the specified results data from the database.
Input:
 
 
INTEGER
result_ids(5)
This value specifies the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier.
STRING
elem_list[]
This value specifies a list of elements for which to extract results.
STRING
derivation[10]
This value specifies the derivation specifier if the results are to be derived. A value of null will leave the result as is. See the remarks below for more information.
STRING
location[]
This value specifies the location of the coordinate frame identifier: "", "A" = axis, "C" = centroid, and "N" = nodal.
STRING
cid[]
This value specifies the coordinate system for vector and tensor transformations. A null string is used to leave the coordinate frame identifier as is. Valid Coordinate sytem strings types are: "Global", "Material", "IJK", "Nodal", "Coord", "ResCoord", "Bisector", "CQUAD8", "Unknown", "Default", "LocalDir", "AsIs". For a more detailed explanation of Coordinate Systems in Patran, please see Coordinate Systems (p. 27) in the Results Postprocessing
Output:
 
 
INTEGER
data_type
This value returns the data type. Valid values are: 1=scalar, 2=vector, and 3=tensor.
INTEGER
resloc
This value returns the result location. Valid values are: 1=centroid, 2=nodal, 3=multiple, and 4=mixed.
INTEGER
nres
This value returns the number of returned element identifiers.
INTEGER
ids(VIRTUAL)
This value returns a list of element identifiers.
INTEGER
nresults(VIRTUAL)
This value returns the number of results per element.
REAL
results(VIRTUAL)
This value returns all of the results at the specified element locations.
INTEGER
minloc(12)
This value returns the array offsets for each minimum result component in the output value results.
INTEGER
maxloc(12)
This value returns the array offsets for each maximum result component in the output value results.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500005
No Elements are found for the specified result matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500008
The input Location string is invalid.
4500009
No results are found in the database matching the specified Ids.
4500010
The derivation specified in invalid.
4500011
A error has occurred extrapolating this result to the element nodes.
4500014
An error has occurred interpreting the input List string.
4500015
The specified Coordinate Frame does not exist.
4500018
The Coordinate Frame List is not valid.
13000054
Result case not found.
13000056
Coordinate frame not found.
13000071
Result case type not found.
13000085
Cursor not open.
13000086
No Records Found.
13000117
The query specified has completed.
13000210
The system is out of virtual memory.
14000281
LpExpandPclVariables: Virtual memory is full.
14000298
LpPicklistDecoder: Parse error.
14000299
LpPicklistDecoder: Memory is exhausted.
14000302
LpPicklistDecoderWithLookup: Memory is exhausted.
Remarks:
This function will perform extrapolation and averaging as necessary when element based results are requested.
The result data type returned will be determined by the input value derivation.
Results may be extracted either at element centroids, element nodes or as found.
The value in the output values minloc or maxloc are not the direct index into the output value results. Use the following formula to obtain the index into the output value results using the values in the output values minloc or maxloc: res_index = loc(2,i) + nresults(1) + nresults(2) + ... + nresults(loc(1,i)-1). If the element results are centroidal this will become: res_index = loc(1,i).
The specified result will be held in memory for further operations. Only one result is held in memory at a time.
The output value ids will be allocated with the number of offsets defined by the output value nres.
The output value results will be allocated as a two dimensional array where the number of offsets in the first dimension of the array will be set by the sum of all of the values in the output value nresults. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output value results will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
The output values minloc and maxloc will be allocated as two dimensional arrays where the number of offsets in the first dimension of the array will be set by the output value nres. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output values minloc and maxloc will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
Vector or tensor results will be transformed to the alternate coordinate frame identifier if specified.
The input value derivation can have the following values:
 
Tensor to Scalar:
“VONM”
“OCT”
“HYDRO”,
 
 
“TRESCA”
“INV1”
“INV2”
 
 
“INV3”
“MAXSHR”
“MAXCMP”
 
 
“MINCMP”
“P1”/”MAJOR”
“P2”/”INTER”
 
 
“P3”/”MINOR”
“XX”
“YY”
 
 
“XY”
“YZ”
“ZX”
 
 
“MXSH2D”
“MXCP2D”
“MNCP2D”
 
 
“MJR2D”
“MNR2D”
“TRES2D”
 
 
“VMSTRN”
 
 
 
Tensor to Vector:
“PV1”/”MAJORV”
“PV2”/”INTERV”
“PV3”/”MINORV”
 
 
“MJRV2D”
“MNRV2D”
 
 
 
any six characters such as “XXYYZZ”
 
 
 
 
 
 
Vector to Scalar:
“XX”
“YY”
“ZZ”
 
 
“MAG”
“MAXCMP”
“MINCMP”
 
 
“AVG”
 
 
This function can display an information popup message form with the following messages:
16000001 Error code %I% occurred in %A%.
16000002 Called from %A%.
30001425 Notice: %I% interpolants lie off the field.
30001437 An attempt was made to average nodal values for an element. All of the element nodes were not found for %I% elements.
This function can display a warning popup message form with the following messages:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
38000199 WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Automatic gap fill invoked!
OR
WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Delete and Rebuild the Composite Trim Surface!
OR
ERROR -- Composite Trim Surface Evaluator cannot compute a point on surface! The problem is a vertical surface. Check the geometry, change view orientation, Delete and Rebuild the Composite Trim Surface!
30001424 Routine to locate points in elements did not converge for %I% interpolants.
This function can display a fatal popup message form with the following messages:
13000088 Preference not found.
16000201 Database error for item %I%: %A%.
30001061 Field %A% is disassociated with geometry entity and unusable unless a new geometry entity is provided.
38000136 CompTrimSurface processor cannot locate surface with LABEL=%I% -- This is a database FAILURE! -- Delete and Rebuild the CompTrim Surface.
Example:
Please see res_utl_extract_elem_results.
 
res_utl_extract_elem_results2
(result_ids, elem_list, derivation, location, cid, avg_method, avg_domain, extrap_method, complex_form, complex_angle, data_type, resloc, nres, ids, nresults, results, minloc, maxloc)
Description:
 
 
This function extracts the specified results data from the database.
Input:
 
 
INTEGER
result_ids(5)
This value specifies the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier.
STRING
elem_list[]
This value specifies a list of elements for which to extract results.
STRING
derivation[10]
This value specifies the derivation specifier if the results are to be derived. A value of null will leave the result as is. See the remarks below for more information.
STRING
location[]
This value specifies the location of the coordinate frame identifier: "", "A" = axis, "C" = centroid, and "N" = nodal.
STRING
cid[]
This value specifies the coordinate system for vector and tensor transformations. A null string is used to leave the coordinate frame identifier as is.
STRING
avg_method[]
This value specifies the averaging method to be used.
STRING
avg_domain[]
This value specifies the averaging domain to be used.
STRING
extrap_method[]
This value specifies the method to use in extrapolation.
STRING
complex_form[]
This value specifies the form to be used for complex numbers.
REAL
complex_angle
This value is used with complex results when the complex_form is “Angle”.
Output:
 
 
INTEGER
data_type
This value returns the data type. Valid values are: 1=scalar, 2=vector, and 3=tensor.
INTEGER
resloc
This value returns the result location. Valid values are: 1=centroid, 2=nodal, 3=multiple, and 4=mixed.
INTEGER
nres
This value returns the number of returned element identifiers.
INTEGER
ids(VIRTUAL)
This value returns a list of element identifiers.
INTEGER
nresults(VIRTUAL)
This value returns the number of results per element.
REAL
results(VIRTUAL)
This value returns all of the results at the specified element locations.
INTEGER
minloc(12)
This value returns the array offsets for each minimum result component in the output value results.
INTEGER
maxloc(12)
This value returns the array offsets for each maximum result component in the output value results.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
 
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500005
No Elements are found for the specified result matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500008
The input Location string is invalid.
4500009
No results are found in the database matching the specified Ids.
4500010
The derivation specified in invalid.
4500011
A error has occurred extrapolating this result to the element nodes.
4500014
An error has occurred interpreting the input List string.
4500015
The specified Coordinate Frame does not exist.
4500018
The Coordinate Frame List is not valid.
13000054
Result case not found.
13000056
Coordinate frame not found.
13000071
Result case type not found.
13000085
Cursor not open.
13000086
No Records Found.
13000117
The query specified has completed.
13000210
The system is out of virtual memory.
14000281
LpExpandPclVariables: Virtual memory is full.
14000298
LpPicklistDecoder: Parse error.
14000299
LpPicklistDecoder: Memory is exhausted.
14000302
LpPicklistDecoderWithLookup: Memory is exhausted.
Remarks:
This function will perform extrapolation and averaging as necessary when element based results are requested.
The result data type returned will be determined by the input value derivation.
Results may be extracted either at element centroids, element nodes or as found.
The value in the output values minloc or maxloc are not the direct index into the output value results. Use the following formula to obtain the index into the output value results using the values in the output values minloc or maxloc: res_index = loc(2,i) + nresults(1) + nresults(2) + ... + nresults(loc(1,i)-1). If the element results are centroidal this will become: res_index = loc(1,i).
The specified result will be held in memory for further operations. Only one result is held in memory at a time.
The output value ids will be allocated with the number of offsets defined by the output value nres.
The output value results will be allocated as a two dimensional array where the number of offsets in the first dimension of the array will be set by the sum of all of the values in the output value nresults. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output value results will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
The output values minloc and maxloc will be allocated as two dimensional arrays where the number of offsets in the first dimension of the array will be set by the output value nres. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output values minloc and maxloc will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
Vector or tensor results will be transformed to the alternate coordinate frame identifier if specified.
The input value derivation can have the following values:
 
Tensor to Scalar:
“VONM”
“OCT”
“HYDRO”,
 
 
“TRESCA”
“INV1”
“INV2”
 
 
“INV3”
“MAXSHR”
“MAXCMP”
 
 
“MINCMP”
“P1”/”MAJOR”
“P2”/”INTER”
 
 
“P3”/”MINOR”
“XX”
“YY”
 
 
“XY”
“YZ”
“ZX”
 
 
“MXSH2D”
“MXCP2D”
“MNCP2D”
 
 
“MJR2D”
“MNR2D”
“TRES2D”
 
 
“VMSTRN”
 
 
 
Tensor to Vector:
“PV1”/”MAJORV”
“PV2”/”INTERV”
“PV3”/”MINORV”
 
 
“MJRV2D”
“MNRV2D”
 
 
 
any six characters such as “XXYYZZ”
 
 
 
 
 
 
Vector to Scalar:
“XX”
“YY”
“ZZ”
 
 
“MAG”
“MAXCMP”
“MINCMP”
 
 
“AVG”
 
 
The input value avg_method can have the following values:
“DeriveAverage”, “AverageDerive”, “Difference”, “Sum”
The input value avg_domain can have the following values:
“All”, “Material”, “Property”, “EType”, “Target”, “Element”
The input value extrap_method can have the following values:
“ShapeFunc”, “Average”, “Centroid”, “Max”, “Min”, “AsIs”
The input value complex_form can have the following values:
“Real”, “Imaginary”, “Magnitude”, “Phase”, “Angle”
This function can display an information popup message form with the following messages:
16000001 Error code %I% occurred in %A%.
16000002 Called from %A%.
30001425 Notice: %I% interpolants lie off the field.
30001437 An attempt was made to average nodal values for an element. All of the element nodes were not found for %I% elements.
This function can display a warning popup message form with the following messages:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
38000199 WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Automatic gap fill invoked!
OR
WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Delete and Rebuild the Composite Trim Surface!
OR
ERROR -- Composite Trim Surface Evaluator cannot compute a point on surface! The problem is a vertical surface. Check the geometry, change view orientation, Delete and Rebuild the Composite Trim Surface!
30001424 Routine to locate points in elements did not converge for %I% interpolants.
This function can display a fatal popup message form with the following messages:
13000088 Preference not found.
16000201 Database error for item %I%: %A%.
30001061 Field %A% is disassociated with geometry entity and unusable unless a new geometry entity is provided.
38000136 CompTrimSurface processor cannot locate surface with LABEL=%I% -- This is a database FAILURE! -- Delete and Rebuild the CompTrim Surface.
Example:
INTEGER i, j, idx, nres, dtype, resloc, minloc(2,6), maxloc(2,6), status
INTEGER eids(VIRTUAL), nresults(VIRTUAL)
REAL results(VIRTUAL)
 
/* Extract the element tensor result with Loadcase ID=2, Subcase ID=1,Primary Res ID=3, Secondary Res ID=1, Layer ID=1 at the element nodes and orient the tensor with the global*/
status = res_utl_extract_elem_results( [2,1,3,1,1], "Elm 1:#", @
         "", "n", "Coord 0", dtype, resloc, nres, eids, nresults, @
         results, minloc, maxloc )
IF( status != 0 ) THEN @ /* print message if error */
   msg_to_form( status, 4, 0, 0, 0., "" )
ELSE
   /* print out min/max for each stress component */
   FOR( j = 1 TO 6 )
      idx = minloc(2,j)
      FOR( i = 1 TO minloc(1,j)-1)
         idx += nresults(i)
      END FOR
      ui_writec(" Min Id= %d, Comp= %d, Stress= %g", @
          ids(minloc(1,i)), j, results(idx,j) )
      idx = maxloc(2,j)
      FOR( i = 1 TO maxloc(1,j)-1)
         idx += nresults(i)
      END FOR
      ui_writec(" Max Id= %d, Comp= %d, Stress= %g", @
          ids(maxloc(1,i)), j, results(idx,j) )
   END FOR
END IF
  
res_utl_extract_elem_history
(nlcs, lcids, subids, result_ids, elem_list, derivation, location, cid, data_type, resloc, nres, ids, nresults, results, minloc, maxloc)
Description:
 
 
This function extracts the specified results data from the database.
Input:
 
 
INTEGER
nlcs
This value specifies the number of result cases to be extracted.
INTEGER
lcids(nlcs)
This value specifies the load case identifiers.
INTEGER
subids(nlcs)
This value specifies the subcase identifiers.
INTEGER
result_ids(3)
This value specifies the primary result identifier, secondary result identifier, and layer identifier.
STRING
elem_list[]
This value specifies a list of elements at which to extract results.
STRING
derivation[10]
This value specifies the derivation specifier if the results are to be derived. A value of null will leave the result as is. See the remarks below for more information.
STRING
location[]
This value specifies the coordinate frame identifier location: "", "A" = axis, "C" = centroid, and "N" = nodal.
STRING
cid[]
This value specifies the coordinate system for vector/tensor transformations. A null string is used to leave the coordinate frame identifier as is.
Output:
 
 
INTEGER
data_type
This value returns the data type. Valid values are: 1=scalar, 2=vector, and 3=tensor.
INTEGER
resloc
This value returns the results location. Valid values are: 1=centroid, 2=nodal, and 3=multiple.
INTEGER
nres
This value returns the number of node identifiers.
INTEGER
ids(VIRTUAL)
This value returns a list of node identifiers.
INTEGER
nresults(VIRTUAL)
This value returns the number of results per element.
REAL
results(VIRTUAL)
This value returns all of the results at the specified node for each result case.
INTEGER
minloc(VIRTUAL)
This value returns the array offsets for each minimum result component in the output value results.
INTEGER
maxloc(VIRTUAL)
This value returns the array offsets for each maximum result component in the output value results.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500005
No Elements are found for the specified result matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500008
The input Location string is invalid.
4500009
No results are found in the database matching the specified Ids.
4500010
The derivation specified in invalid.
4500011
A error has occurred extrapolating this result to the element nodes.
4500014
An error has occurred interpreting the input List string.
4500015
The specified Coordinate Frame does not exist.
4500018
The Coordinate Frame List is not valid.
13000054
Result case not found.
13000056
Coordinate frame not found.
13000071
Result case type not found.
13000085
Cursor not open.
13000086
No Records Found.
13000117
The query specified has completed.
13000210
The system is out of virtual memory.
14000281
LpExpandPclVariables: Virtual memory is full.
14000298
LpPicklistDecoder: Parse error.
14000299
LpPicklistDecoder: Memory is exhausted.
14000302
LpPicklistDecoderWithLookup: Memory is exhausted.
Remarks:
This function will perform extrapolation and averaging as necessary.
The result data type returned will be determined by the input value derivation.
The minimum and maximum subcase locations will be determined for each element location specified.
The values in the output values minloc or maxloc are not the direct index into the output value results. Use the following formula to obtain the index into the output value results using the values in the output values minloc or maxloc: res_index = loc(2,i) + nresults(1) + nresults(2) + ... + nresults(loc(1,i)-1). If the element results are centroidal this will become: res_index = loc(1,i).
The last specified result will be held in memory for further operations. Only one result is held in memory at a time.
The output value ids will be allocated with the number of offsets defined by the output value nres.
The output value results will be allocated as a two dimensional array where the number of offsets in the first dimension of the array will be set by the sum of all of the values in the output value nresults. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output value results will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
The output values minloc and maxloc will be allocated as two dimensional arrays where the number of offsets in the first dimension of the array will be set by the output value nres. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output values minloc and maxloc will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
Vector or tensor results will be transformed to the alternate coordinate frame identifier if specified.
The input value derivation can have the following values:
 
Tensor to Scalar:
“VONM”
“OCT”
“HYDRO”,
 
 
“TRESCA”
“INV1”
“INV2”
 
 
“INV3”
“MAXSHR”
“MAXCMP”
 
 
“MINCMP”
“P1”
“P2”
 
 
“P3”
“XX”
“YY”
 
 
“XY”
“YZ”
“ZX”
 
 
 
 
 
 
Tensor to Vector:
“PV1”
“PV2”
“PV3”
 
 
any six characters such as “XXYYZZ”
 
 
 
 
 
 
Vector to Scalar:
“XX”
“YY”
“ZZ”
 
 
“MAG”
“MAXCMP”
“MINCMP”
 
 
“AVG”
 
 
This function can display an information popup message form with the following messages:
16000001 Error code %I% occurred in %A%.
16000002 Called from %A%.
30001425 Notice: %I% interpolants lie off the field.
30001437 An attempt was made to average nodal values for an element. All of the element nodes were not found for %I% elements.
This function can display a warning popup message form with the following messages:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
38000199 WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Automatic gap fill invoked!
OR
WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Delete and Rebuild the Composite Trim Surface!
OR
ERROR -- Composite Trim Surface Evaluator cannot compute a point on surface! The problem is a vertical surface. Check the geometry, change view orientation, Delete and Rebuild the Composite Trim Surface!
30001424 Routine to locate points in elements did not converge for %I% interpolants.
This function can display a fatal popup message form with the following messages:
13000088 Preference not found.
16000201 Database error for item %I%: %A%.
30001061 Field %A% is disassociated with geometry entity and unusable unless a new geometry entity is provided.
38000136 CompTrimSurface processor cannot locate surface with LABEL=%I% -- This is a database FAILURE! -- Delete and Rebuild the CompTrim Surface.
Example:
Please see res_utl_extract_elem_history.
  
res_utl_extract_elem_history2
(nlcs, lcids, subids, result_ids, elem_list, derivation, location, cid, avg_method, avg_domain, extrap_method, complex_form, complex_angle, data_type, resloc, nres, ids, nresults, results, minloc, maxloc)
Description:
 
 
This function extracts the specified results data from the database.
Input:
 
 
INTEGER
nlcs
This value specifies the number of result cases to be extracted.
INTEGER
lcids(nlcs)
This value specifies the load case identifiers.
INTEGER
subids(nlcs)
This value specifies the subcase identifiers.
INTEGER
result_ids(3)
This value specifies the primary result identifier, secondary result identifier, and layer identifier.
STRING
elem_list[]
This value specifies a list of elements at which to extract results.
STRING
derivation[10]
This value specifies the derivation specifier if the results are to be derived. A value of null will leave the result as is. See the remarks below for more information.
STRING
location[]
This value specifies the coordinate frame identifier location: "", "A" = axis, "C" = centroid, and "N" = nodal.
STRING
cid[]
This value specifies the coordinate system for vector/tensor transformations. A null string is used to leave the coordinate frame identifier as is.
STRING
avg_method[]
This value specifies the averaging method to use.
STRING
avg_domain[]
This value specifies the averaging domain to use.
STRING
extrap_method[]
This value specifies the extrapolation method to use.
STRING
complex_form[]
This value specifies the form to be used with complex numbers.
REAL
complex_angle
This value is used with complex results when the complex_form is “Angle”.
Output:
 
 
INTEGER
data_type
This value returns the data type. Valid values are: 1=scalar, 2=vector, and 3=tensor.
INTEGER
resloc
This value returns the results location. Valid values are: 1=centroid, 2=nodal, and 3=multiple.
INTEGER
nres
This value returns the number of node identifiers.
INTEGER
ids(VIRTUAL)
This value returns a list of node identifiers.
INTEGER
nresults(VIRTUAL)
This value returns the number of results per element.
REAL
results(VIRTUAL)
This value returns all of the results at the specified node for each result case.
INTEGER
minloc(VIRTUAL)
This value returns the array offsets for each minimum result component in the output value results.
INTEGER
maxloc(VIRTUAL)
This value returns the array offsets for each maximum result component in the output value results.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500005
No Elements are found for the specified result matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500008
The input Location string is invalid.
4500009
No results are found in the database matching the specified Ids.
4500010
The derivation specified in invalid.
4500011
A error has occurred extrapolating this result to the element nodes.
4500014
An error has occurred interpreting the input List string.
4500015
The specified Coordinate Frame does not exist.
4500018
The Coordinate Frame List is not valid.
13000054
Result case not found.
13000056
Coordinate frame not found.
13000071
Result case type not found.
13000085
Cursor not open.
13000086
No Records Found.
13000117
The query specified has completed.
13000210
The system is out of virtual memory.
14000281
LpExpandPclVariables: Virtual memory is full.
14000298
LpPicklistDecoder: Parse error.
14000299
LpPicklistDecoder: Memory is exhausted.
14000302
LpPicklistDecoderWithLookup: Memory is exhausted.
Remarks:
This function will perform extrapolation and averaging as necessary.
The result data type returned will be determined by the input value derivation.
The minimum and maximum subcase locations will be determined for each element location specified.
The values in the output values minloc or maxloc are not the direct index into the output value results. Use the following formula to obtain the index into the output value results using the values in the output values minloc or maxloc: res_index = loc(2,i) + nresults(1) + nresults(2) + ... + nresults(loc(1,i)-1). If the element results are centroidal this will become: res_index = loc(1,i).
The last specified result will be held in memory for further operations. Only one result is held in memory at a time.
The output value ids will be allocated with the number of offsets defined by the output value nres.
The output value results will be allocated as a two dimensional array where the number of offsets in the first dimension of the array will be set by the sum of all of the values in the output value nresults. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output value results will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
The output values minloc and maxloc will be allocated as two dimensional arrays where the number of offsets in the first dimension of the array will be set by the output value nres. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output values minloc and maxloc will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
Vector or tensor results will be transformed to the alternate coordinate frame identifier if specified.
The input value derivation can have the following values:
 
Tensor to Scalar:
“VONM”
“OCT”
“HYDRO”,
 
 
“TRESCA”
“INV1”
“INV2”
 
 
“INV3”
“MAXSHR”
“MAXCMP”
 
 
“MINCMP”
“P1”/”MAJOR”
“P2”/”INTER”
 
 
“P3”/”MINOR”
“XX”
“YY”
 
 
“XY”
“YZ”
“ZX”
 
 
“MXSH2D”
“MXSH2D”
“MNCP2D”
 
 
“MJR2D”
“MNR2D”
“TRES2D”
 
 
 
 
 
 
Tensor to Vector:
“PV1”/”MAJORV”
“PV2”/”INTERV”
“PV3”/”MINORV”
 
 
“MJRV2D”
“MNRV2D”
 
 
 
any six characters such as “XXYYZZ”
 
 
 
 
 
 
Vector to Scalar:
“XX”
“YY”
“ZZ”
 
 
“MAG”
“MAXCMP”
“MINCMP”
 
 
“AVG”
 
 
The input value avg_method can have the following values:
“DeriveAverage”, “AverageDerive”, “Difference”, “Sum”
The input value avg_domain can have the following values:
“All”, “Material”, “Property”, “EType”, “Target”, “Element”
The input value extrap_method can have the following values:
“ShapeFunc”, “Average”, “Centroid”, “Max”, “Min”, “AsIs”
The input value complex_form can have the following values:
“Real”, “Imaginary”, “Magnitude”, “Phase”, “Angle”
This function can display an information popup message form with the following messages:
16000001 Error code %I% occurred in %A%.
16000002 Called from %A%.
30001425 Notice: %I% interpolants lie off the field.
30001437 An attempt was made to average nodal values for an element. All of the element nodes were not found for %I% elements.
This function can display a warning popup message form with the following messages:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
38000199 WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Automatic gap fill invoked!
OR
WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Delete and Rebuild the Composite Trim Surface!
OR
ERROR -- Composite Trim Surface Evaluator cannot compute a point on surface! The problem is a vertical surface. Check the geometry, change view orientation, Delete and Rebuild the Composite Trim Surface!
30001424 Routine to locate points in elements did not converge for %I% interpolants.
This function can display a fatal popup message form with the following messages:
13000088 Preference not found.
16000201 Database error for item %I%: %A%.
30001061 Field %A% is disassociated with geometry entity and unusable unless a new geometry entity is provided.
38000136 CompTrimSurface processor cannot locate surface with LABEL=%I% -- This is a database FAILURE! -- Delete and Rebuild the CompTrim Surface.
Example:
INTEGER i, nres, dtype, resloc, minloc(VIRTUAL), @
       maxloc(VIRTUAL), status
INTEGER eids(VIRTUAL), nresults(VIRTUAL), lcids(5)=2,5,9,11,15
REAL results(VIRTUAL)
 
/* Extract the element tensor result with Loadcases ID=2,5,9,11,15, Subcase ID=1,Primary Res ID=3, Secondary Res ID=1, Layer ID=1 at the element centroids. Transform to the cylindrical system Coord 1 and retrieve the Theta component for element 101. Create an XY plot of the result */
status = res_utl_extract_elem_history( 5, lcids,[1,1,1,1,1], @
         [3,1,1], “Elm 101", “yy”, “c”, “Coord 1”, type, resloc, @
         nres, eids, nresults, results, minloc, maxloc )
IF( status != 0 ) THEN @ /* print message if error */
   msg_to_form( status, 4, 0, 0, 0., “”)
ELSE
   /* Create the plot */
   xy_window_create(“res_utls”, 2., 2., 6., 6. )
   xy_window_location_set(“res_utls”, 2., 2., 0 )
   xy_curve_create(“theta_stress”, “theta_stress”, 7 )
   xy_curve_data_set(“theta_stress”, TRUE, 5, [0., 0., 0., 0., 0.], @
    results )
END IF
   
res_utl_create_elem_result
(result_ids, primary_title, secondary_title, nids, ids, cid_list, n_comp, data_type, location, nresults, results)
Description:
 
 
This function adds the specified results data to the database.
Input:
 
 
INTEGER
result_ids(5)
This value specifies the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier. The primary and result identifiers are not used as inputs by this function. This value is used as both an input and an output to the function and would be passed by the calling function as a single argument.
STRING
primary_title[80]
This value specifies the primary result title.
STRING
secondary_title[80]
This value specifies the secondary result title.
INTEGER
nids
This value specifies the number of input element identifiers.
INTEGER
ids()
This value specifies the element identifiers for the results.
STRING
cid_list[]
This value specifies the alternate coordinate system for vector or tensor results. A null string is used for the global coordinate system.
INTEGER
data_type
This value specifies the data type to use: 1=scalar, 2=vector, and 3=tensor.
STRING
location[]
This value specifies the location to use: "C" = centroid, and "N" = nodal.
INTEGER
nresults()
This value specifies the number of results per element.
REAL
results()
This value specifies an array of all of the results at the specified nodes.
Output:
 
 
INTEGER
result_ids(5)
This value returns the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier. The load case, subcase, and layer identifiers are not used as output values by this function. The primary and result identifiers are used as outputs by this function. This value is used as both an input and an output to the function and would be passed by the calling function as a single argument.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500005
No Elements are found for the specified result matching the input list.
4500007
The specified Layer Id is not associated with the specified result.
4500008
The input Location string is invalid.
4500009
No results are found in the database matching the specified Ids.
4500015
The specified Coordinate Frame does not exist.
4500018
The Coordinate Frame List is not valid.
13000054
Result case not found.
Remarks:
This function expects that a load case or subcase and a layer position already exist.
The value result_ids will be used as both an input and an output value.
The primary and secondary identifiers returned by the input and output value result_ids are based on the input values primary_title and secondary_title. These input values primary_title and secondary_title will either match up with existing primary and secondary results or new ones will be generated.
Example:
Please see res_utl_create_elem_result.
  
res_utl_extract_path_results
(result_ids, npts, pts, derivation, cid, data_type, results, minloc, maxloc, elem_ids)
Description:
 
 
This function extracts the specified results data from the database and interpolate as needed to obtain results along a specified set of XYZ coordinates defining the path.
Input:
 
 
INTEGER
result_ids(5)
This value specifies the load case identifier, subcase identifier, primary result identifier, secondary result identifier, and layer identifier.
INTEGER
npts
This value specifies the number of path points.
REAL
pts(npts*3)
This value specifies global XYZ point locations.
STRING
derivation[10]
This value specifies the derivation specifier if the results are to be derived. A value of null will leave the result as is. See the remarks below for more information.
STRING
cid[]
This value specifies the coordinate system for vector/tensor transformations. A null string is used to leave the coordinate frame identifier as is.
Output:
 
 
INTEGER
data_type
This value returns the data type. Valid values are: 1=scalar, 2=vector, and 3=tensor.
REAL
results(VIRTUAL)
This value returns all of the results at the specified path points.
INTEGER
minloc(6)
This value returns the point index for each minimum result component.
INTEGER
maxloc(6)
This value returns the point index for each maximum result component.
INTEGER
elem_ids(npts)
This value returns identifiers for elements containing each point. No identifiers or 0 will be returned if a point was not interpolated.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
1
This is an internal status condition. There is no corresponding status message in the message database.
4500002
An error has occurred calculating a nodal averaged result.
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500004
No Nodes found in the database matching the input list.
4500005
No Elements found in the database matching the input list.
4500006
The Loadcase/Subcase/Primary Result/ Secondary Result Id combination specified cannot be found.
4500007
The specified Layer Id is not associated with the specified result.
4500009
No results are found in the database matching the specified Ids.
4500010
The derivation specified in invalid.
4500011
A error has occurred extrapolating this result to the element nodes.
4500015
The specified Coordinate Frame does not exist.
4500018
The Coordinate Frame List is not valid.
4500020
The input path specified points which did not interpolate to any elements.
13000054
Result case not found.
13000056
Coordinate frame not found.
13000071
Result case type not found.
13000086
No Records Found.
13000210
The system is out of virtual memory.
Remarks:
The result data type returned will be determined by the derivation method.
If an element result is specified, it will be extrapolated to the nodes and nodal averaged result values will be computed and used for path interpolation.
This function supports TRI3, TRI6, QUAD4, QUAD8, TET4, TET10, WEDGE6, WEDGE15, HEX8, and HEX20 element types for interpolation. Other element shapes may yield undesirable results.
The specified result will be held in memory for further operations. Only one result is held in memory at a time.
The output value results will be allocated as a two dimensional array where the number of offsets in the first dimension of the array will be returned by the output value npts. The number of offsets in the second dimension is dependent on the input value derivation. The second dimension of the output value results will be set as follows: If the input value derivation specifies a “tensor to scalar” or “vector to scalar” operation there will be 1 offset. If the input value derivation specifies a “tensor to vector” operation there will be 3 offsets.
Vector or tensor results will be transformed to the alternate coordinate frame identifier if specified.
The input value derivation can have the following values:
 
Tensor to Scalar:
“VONM”
“OCT”
“HYDRO”,
 
 
“TRESCA”
“INV1”
“INV2”
 
 
“INV3”
“MAXSHR”
“MAXCMP”
 
 
“MINCMP”
“P1”
“P2”
 
 
“P3”
“XX”
“YY”
 
 
“XY”
“YZ”
“ZX”
 
 
 
 
 
 
Tensor to Vector:
“PV1”
“PV2”
“PV3”
 
 
any six characters such as “XXYYZZ”
 
 
 
 
 
 
Vector to Scalar:
“XX”
“YY”
“ZZ”
 
 
“MAG”
“MAXCMP”
“MINCMP”
 
 
“AVG”
 
 
This function can display an information popup message form with the following messages:
16000001 Error code %I% occurred in %A%.
16000002 Called from %A%.
30001425 Notice: %I% interpolants lie off the field.
30001437 An attempt was made to average nodal values for an element. All of the element nodes were not found for %I% elements.
This function can display a warning popup message form with the following messages:
4500019 The results specified for this operation are defined in an Unknown element local coordinate system. The global system will be assumed for all transformation operations. Errors may be introduced when using nodal averaged or transformed result components.
38000199 WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Automatic gap fill invoked!
OR
WARNING -- The Composite Trim Surface Evaluator has detected a large gap (or missing surface) of %7.5f. The design build gap is %7.5f. Delete and Rebuild the Composite Trim Surface!
OR
ERROR -- Composite Trim Surface Evaluator cannot compute a point on surface! The problem is a vertical surface. Check the geometry, change view orientation, Delete and Rebuild the Composite Trim Surface!
30001424 Routine to locate points in elements did not converge for %I% interpolants.
This function can display a fatal popup message form with the following messages:
13000088 Preference not found.
16000201 Database error for item %I%: %A%.
30001061 Field %A% is disassociated with geometry entity and unusable unless a new geometry entity is provided.
38000136 CompTrimSurface processor cannot locate surface with LABEL=%I% -- This is a database FAILURE! -- Delete and Rebuild the CompTrim Surface.
Example:
Please see res_utl_extract_path_results.
  
res_utl_get_loadcases
(ncases, lcids, nsub)
Description:
 
 
This function retrieves the existing load cases with associated results from the database.
Input:
 
 
None.
 
 
Output:
 
 
INTEGER
ncases
This value returns the number of load cases found.
INTEGER
lcids(VIRTUAL)
This value returns a list of load case identifiers.
INTEGER
nsub(VIRTUAL)
This value returns the number of subcases for each load case.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
13000052
Load case not found.
Remarks:
The output values lcids and nsub will be allocated by the function.
Example:
Please see res_utl_get_loadcases.
  
res_utl_get_subcases
(lcid, nsub, subids)
Description:
 
 
This function retrieves the existing subcases with associated results from the database.
Input:
 
 
INTEGER
lcid
This value specifies the loadcase identifier.
Output:
 
 
INTEGER
nsub
This value returns the number of subcases found.
INTEGER
subids(VIRTUAL)
This value returns a list of subcase identifiers.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
13000052
Load case not found.
13000053
Sub case not found.
Remarks:
The output value subids will be allocated by the function.
Example:
Please see res_utl_get_subcases
  
res_utl_get_result_ids
(nlcs, lcid, subids, nres, primary_id, secondary_id)
Description:
 
 
This function retrieves the existing results identifiers associated with a list of load case and subcase identifiers from the database.
Input:
 
 
INTEGER
nlcs
This value specifies the number of load cases.
INTEGER
lcid(nlcs)
This value specifies load case identifiers.
INTEGER
subids()
This value specifies subcase identifiers.
Output:
 
 
INTEGER
nres
This value returns the number of results found.
INTEGER
primary_id(VIRTUAL)
This value returns a list of primary result identifiers.
INTEGER
secondary_id(VIRTUAL)
 
 
This value returns a list of secondary result identifiers.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500009
No results are found in the database matching the specified Ids.
Remarks:
The output values primary_id and secondary_id will be allocated by the function.
Example:
Please see res_utl_get_result_ids.
  
res_utl_get_result_layers
(result_ids, nlayers, ids, labels)
Description:
 
 
This function retrieves the layer positions associated with results from the database.
Input:
 
 
INTEGER
result_ids(4)
This value specifies the load case identifier, subcase identifier, primary result identifier, and secondary result identifier.
Output:
 
 
INTEGER
nlayers
This value returns the number of associated layers found.
INTEGER
ids(VIRTUAL)
This value returns a list of layer position identifiers.
STRING
labels[80](VIRTUAL)
This value returns the labels for the layers found.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
13000054
Result case not found.
13000071
Result case type not found.
13000093
Too Many Values Returned for Space Allocated.
13000210
The system is out of virtual memory.
Remarks:
ALL results have at least one associated layer position identifier. Non-layered result layer titles may be blank.
The output values ids and labels will be allocated by the function.
Example:
Please see res_utl_get_result_layers.
  
res_utl_get_global_vars
(nvar, var_name)
Description:
 
 
This function retrieves the existing global variables from the database.
Input:
 
 
None.
 
 
Output:
 
 
INTEGER
nvar
This value returns the number of global variables found.
STRING
var_name[80](VIRTUAL)
 
 
This value returns the labels for the variables found.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
Remarks:
The output value var_name will be allocated by the function.
Example:
Please see res_utl_get_global_vars.
  
Description:
 
 
This function retrieves the value of a specific global variable associated with a load case and subcase.
Input:
 
 
INTEGER
lcid
This value specifies the load case identifier.
INTEGER
subid
This value specifies the subcase identifier.
STRING
var_name[]
This value specifies the global variable name.
Output:
 
 
INTEGER
ncomp
This value returns the number of components used for the variable value 1, 3 or 6.
REAL
vals(6)
This value returns the value[s] for the global variable.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500012
The specified global variable is not found.
13000054
Result case not found.
13000055
Global variable not found.
Remarks:
None.
Example:
Please see res_utl_get_global_vars.
  
res_utl_get_subcases_by_gv
(lcid, var_name, compnum, val1, val2, method, nscs, subids)
Description:
 
 
This function retrieves all subcase identifiers with the specified global variable value within the specified range.
Input:
 
 
INTEGER
lcid
This value specifies the loadcase identifier.
STRING
var_name[]
This value specifies the global variable name.
INTEGER
compnum
This value specifies the component of the values to use. This value is usually set to 1.
REAL
val1
This value specifies the lower value of the range.
REAL
val2
This value specifies the upper value of the range.
STRING
method[]
This value specifies the method used to retrieve the subcase identifiers. Valid values are: "U" = under, "B" = between, "A" = above, and "O" = outside.
Output:
 
 
INTEGER
nscs
This value returns the number of subcases found.
INTEGER
subids(VIRTUAL)
This value returns a list of subcase identifiers.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500003
A memory allocation error has occurred. Please check function inputs and call RES_UTL_FREE_RESULTS() before proceeding.
4500009
No results are found in the database matching the specified Ids.
4500013
The filter method specified is not valid.
13000052
Load case not found.
13000053
Sub case not found.
Remarks:
The output value subids will be allocated by the function.
Since a floating-point compare is performed to filter subcases, a tolerance should be added the range values to assure an expected behavior.
The input value method is case insensitive and only the first character is used.
Example:
Please see res_utl_get_subcases_by_gv.
  
res_utl_calc_results
(res1, operator, res2, res3)
Description:
 
 
This function operates mathematically on two result values on a component by component basis.
Input:
 
 
REAL
res1()
This value specifies the first result value or constant.
STRING
operator[]
This value specifies the operator to use. A “+” will add the input values res1+res2.
REAL
res2()
This value specifies the second result value or constant.
Output:
 
 
REAL
res3()
This value returns the result value.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500001
One of the input array arguments is of an insufficient dimension.
4500017
The specified operation is not valid.
Remarks:
The value in either the input value res1 or res2 may be used as a constant. This is accomplished by using a single dimensional array as one of the input values res1 or res2.
The size of the input values res1, res2, and the output value res3 is determined by the declaration. All elements of the input values will be operated on.
The input value operation can have the following values:
:
 
“-”
will subtract RES1-RES2
 
“*”
will multiply RES1*RES2
 
“/”
will divide RES1/RES2
 
“^”
will exponentiate RES1^RES2
 
“<”
will place the lesser of RES1 and RES2 in RES3
 
“>”
will place the greater of RES1 and RES2 in RES3
 
“SIND”
will place SIND(RES1) in RES3
 
“COSD”
will place COSD(RES1) in RES3
 
“ASIND”
will place ASIND(RES1) in RES3
 
“ACOSD”
will place ACOSD(RES1) in RES3
 
“SINR”
will place SINR(RES1) in RES3
 
“COSR”
will place COSR(RES1) in RES3
 
“TAND”
will place TAND(RES1) in RES3
 
“ATAND”
will place ATAND(RES1) in RES3
 
“TANR”
will place TANR(RES1) in RES3
 
“ATANR”
will place ATANR(RES1) in RES3
 
“ATAN2D”
will place ATAN2D(RES1,RES2) in RES3
 
“ATAN2R”
will place ATAN2R(RES1,RES2) in RES3
 
“SQRT”
will place SQRT(RES1) in RES3
 
“LN”
will place LN(RES1) in RES3
 
“LOG”
will place LOG(RES1) in RES3
 
“EXP”
will place EXP(RES1) in RES3
 
“ABS”
will place ABS(RES1) in RES3
Example:
Please see res_utl_calc_results.
.  
res_utl_dot_results
(nres, res1, res2, res3)
Description:
 
 
This function calculates the dot product of 2 vector result values.
Input:
 
 
INTEGER
nres
This value specifies the number of result vectors in the values.
REAL
res1(nres,3)
This value specifies the first vector result value.
REAL
res2(nres,3)
This value specifies the second vector result value.
Output:
 
 
REAL
res3(nres)
This value returns the scalar results value of dot products.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully.
Error Conditions:
 
None.
Remarks:
None.
Example:
Please see res_utl_dot_results.
  
res_utl_cross_results
(nres, res1, res2, res3)
Description:
 
 
This function calculates the cross product of two vector result values.
Input:
 
 
INTEGER
nres
This value specifies the number of result vectors in values.
REAL
res1(nres,3)
This value specifies the first vector result value.
REAL
res2(nres,3)
This value specifies the second vector result value.
Output:
 
 
REAL
res3(nres,3)
This value returns the vector results value of cross products.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully.
Error Conditions:
 
None.
Remarks:
None.
Example:
Please see res_utl_cross_results (p. 1016) in the PCL Reference Manual Examples.
  
res_utl_transform_results
(nvals, ncomp, in_vals, from_cid, to_cid, out_vals)
Description:
 
 
This function transforms the input vector or tensor values from one rectangular coordinate system to another.
Input:
 
 
INTEGER
nvals
This value specifies the number of result vectors in the result values.
INTEGER
ncomp
This value specifies the number of components as 3 or 6
REAL
in_vals(nvals,ncomp)
This value specifies the result value.
INTEGER
from_cid
This value specifies the FROM coordinate frame identifier.
INTEGER
to_cid
This value specifies the TO coordinate frame identifier.
Output:
 
 
REAL
out_vals(nvals,ncomp)
This value returns the transformed result value.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
4500001
One of the input array arguments is of an insufficient dimension.
4500015
The specified Coordinate Frame does not exist.
4500017
The specified operation is not valid.
4500018
The Coordinate Frame List is not valid.
Remarks:
This function only supports transformations between rectangular coordinate systems. If cylindrical or spherical transformations are needed, the create or extract functions need to be used so that geometric node and element locations can be determined.
Example:
Please see res_utl_transform_results.
  
db_get_connector_fastener
(id, pname, fmt, nid_gs, xyz_gs, nid_ga, nid_gb, id_pata, id_patb)
Description:
 
 
This function retrieves fastener connector attributes from the database.
Input:
 
 
INTEGER
list
The connector ID.
Output:
 
 
STRING[]
pname
The name of the associated connector property.
INTEGER
fmt
The format of the spot weld (enum: SW_UNKNOWN=0, SW_PARTPAT=1, SW_ELPAT=2, SW_ELEMID=3, SW_GRIDID=4, OR SW_ALIGN=5).
INTEGER
nid_gs
ID of the node at the connector location (if zero, use xyz_gs - supported for ELPAT and PARTPAT formats only).
REAL(3)
xyz_gs
XYZ location of the connector location (used only if nid_gs is zero - ELPAT and PARTPAT formats only).
INTEGER
nid_ga
ID of the node at the pierce location on surface patch A (zero if not specified).
INTEGER
nid_gb
Id of the node at the pierce location on surface patch B (zero if not specified).
INTEGER(33)
id_pata
The element ID, property ID or array of node ids defining surface patch A (all formats except ALIGN).
INTEGER
id_patb
The element ID, property ID or array of node ids defining surface patch B(all formats except ALIGN).
STRING[]
type
The connector type (e.g., Spot Weld, Fastener).
INTEGER
<Return Value>
This function returns a value of 0 if successful.
Error Conditions:
 
DbConnectorNotFound
DbConnectorWrongType
  
db_get_connector_spot_weld
(id, pname, fmt, nid_gs, xyz_gs, nid_ga, nid_gb, id_pata, id_patb)
Description:
 
 
This function retrieves spot weld connector attributes from the database.
Input:
 
 
INTEGER
list
The connector ID.
Output:
 
 
STRING[]
pname
The name of the associated connector property.
INTEGER
fmt
The format of the spot weld (enum: SW_UNKNOWN=0, SW_PARTPAT=1, SW_ELPAT=2, SW_ELEMID=3, SW_GRIDID=4, OR SW_ALIGN=5).
INTEGER
nid_gs
ID of the node at the connector location (if zero, use xyz_gs - supported for ELPAT and PARTPAT formats only).
REAL(3)
xyz_gs
XYZ location of the connector location (used only if nid_gs is zero - ELPAT and PARTPAT formats only).
INTEGER
nid_ga
ID of the node at the pierce location on surface patch A (zero if not specified).
INTEGER
nid_gb
Id of the node at the pierce location on surface patch B (zero if not specified).
INTEGER(33)
id_pata
The element ID, property ID or array of node ids defining surface patch A (all formats except ALIGN).
INTEGER
id_patb
The element ID, property ID or array of node ids defining surface patch B(all formats except ALIGN).
STRING[]
type
The connector type (e.g., Spot Weld, Fastener).
INTEGER
<Return Value>
This function returns a value of 0 if successful.
Error Conditions:
 
DbConnectorNotFound
DbConnectorWrongType
  
db_get_connector_type
(id, title)
Description:
 
 
Given a connector ID, this function retrieves the connector type from the database..
Input:
 
 
INTEGER
list
The connector ID.
Output:
 
 
STRING[]
type
The connector type (e.g., Spot Weld, Fastener).
INTEGER
<Return Value>
This function returns a value of 0 if successful.
Error Conditions:
 
MSG_FEM_CONN_NOT_FOUND
  
db_get_load_case_title
(id, title)
Description:
 
 
This function retrieves the title for a specified loadcase identifier.
Input:
 
 
INTEGER
id
This value specifies the loadcase identifier.
Output:
 
 
STRING
title[80]
This value returns the loadcase title.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
13000052
Load case not found.
Remarks:
None.
Example:
Please see db_get_load_case_title.
  
db_get_load_case_id
(title, id)
Description:
 
 
This function retrieves the id for a specified loadcase title.
Input:
 
 
STRING
title[80]
This value specifies the loadcase title.
Output:
 
 
INTEGER
id
This value returns the loadcase identifier.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
13000052
Load case not found.
Remarks:
None.
Example:
Please see db_get_load_case_id.
  
db_get_sub_case_title
(lcid, subid, title)
Description:
 
 
This function retrieves the title for a specified loadcase and subcase identifier. It returns the title of a subcase excluding any extension added to the name to distinguish it, in the GUI, from other subcases with the same name.If you want to keep the name extensions that Patran adds to the loadcase and subcase identifier, use the function res_data_get_subcase_name, 1483.
Input:
 
 
INTEGER
lcid
This value specifies the loadcase identifier.
INTEGER
subid
This value specifies the subcase identifier.
Output:
 
 
STRING
title[31]
This value returns the subcase title.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
13000053
Sub case not found.
 
Remarks:
None.
Example:
Please see db_get_sub_case_title.
  
db_get_sub_case_id
(lcid, title, subid)
Description:
 
 
This function retrieves the subcase identifier for a specified loadcase identifier, subcase title.
Input:
 
 
INTEGER
lcid
This value specifies the loadcase identifier.
STRING
title[31]
This value specifies the subcase title.
Output:
 
 
INTEGER
subid
This value returns the subcase identifier.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
13000053
Sub case not found.
Remarks:
None.
Example:
Please see db_get_sub_case_id.
  
db_get_primary_res_label
(primary_id, label)
Description:
 
 
This function retrieves the label for a specified primary result identifier.
Input:
 
 
INTEGER
primary_id
This value specifies the primary result identifier.
Output:
 
 
STRING
label[80]
This value returns the primary result label.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
13000054
Result case not found.
Remarks:
None.
Example:
Please see db_get_primary_res_label.
  
db_get_primary_res_id
(label, primary_id)
Description:
 
 
This function retrieves the identifier for a specified primary result label.
Input:
 
 
STRING
label[80]
This value specifies the primary result label.
Output:
 
 
INTEGER
primary_id
This value returns the primary result identifier.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
13000054
Result case not found.
Remarks:
None.
Example:
Please see db_get_primary_res_id.
   
db_get_secondary_res_label
(primary_id, secondary_id, label)
Description:
 
 
This function retrieves the label for a specified secondary result identifier.
Input:
 
 
INTEGER
primary_id
This value specifies the primary results identifier.
INTEGER
secondary_id
This value specifies the secondary result identifier.
Output:
 
 
STRING
label[80]
This value returns the secondary result label.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
See the Status Messages (Ch. 11) for information on any error values returned by this function.
Remarks:
None.
Example:
Please see db_get_secondary_res_label.
  
db_get_secondary_res_id
(primary_id, label, secondary_id)
Description:
 
 
This function retrieves the identifier for a specified secondary result label.
Input:
 
 
INTEGER
primary_id
This value specifies the primary result identifier.
STRING
label[80]
This value specifies the secondary result label.
Output:
 
 
INTEGER
secondary_id
This value returns the secondary result identifier.
INTEGER
<Return Value>
This function returns a value of 0 when executed successfully and a non zero value to indicate a change in status or an error.
Error Conditions:
 
See the Status Messages (Ch. 11) for information on any error values returned by this function.
Remarks:
None.
Example:
Please see db_get_secondary_res_id.