MATUSHT
Bulk Data Entry Defines thermal material properties and parameters for user-defined thermal material.
Format
| (1) | (2) | (3) | (4) | (5) | (6) | (7) | (8) | (9) | (10) | 
|---|---|---|---|---|---|---|---|---|---|
| MATUSHT | MID | PARAM1 | VALUE1 | PARAM2 | VALUE2 | PARAM3 | VALUE3 | ||
| PARAM4 | VALUE4 | etc. | |||||||
| etc. | |||||||||
| PROPERTY | PROP1 | PROP2 | PROP3 | PROP4 | PROP5 | PROP6 | PROP7 | ||
| PROP8 | etc. | 
Example
| (1) | (2) | (3) | (4) | (5) | (6) | (7) | (8) | (9) | (10) | 
|---|---|---|---|---|---|---|---|---|---|
| MATUSHT | 12 | GROUP | MATHT | USUBID | 5 | NDEPVAR | 1 | ||
| PROPERTY | 210.0 | 800.0 | 1700.0 | 
Definition
| Field | Contents | SI Unit Example | 
|---|---|---|
| ID | Each MATUSHT Bulk Data Entry should have a
                                    unique ID.  No default (Integer > 0)  | 
                                |
| USUBID | User subroutine ID. This allows you to define different types
                                    of material properties. This corresponds to the
                                        idu variable in the user
                                        subroutine.Default = Blank (Integer > 0)  | 
                                |
| NDEPVAR | Number of User-defined variables for output.
                                        NDEPVAR identifies the number of
                                        State(*) variables which are defined in the
                                    user subroutine to be output to the H3D file. Default = 0 (Integer ≥ 0)  | 
                                |
| GROUP | User-defined group specified on the group argument of the
                                        LOADLIB entry. This field is used to
                                    identify the LOADLIB entry to load the
                                    corresponding library (.dll or
                                        .so).  (Character String)  | 
                                |
| PROPERTY | Indicates that user-defined material property data are to be defined in the subsequent fields. 3 4 5 | |
| PROPi | User-defined material property data. These values correspond
                                    to the props variable in the user subroutine.
                                        nprops variable in the user subroutine
                                    defines the total number of properties defined via the
                                        PROPi fields. 3
                                    4
                                    5
                                    Default = blank (Real)  | 
                                
Comments
- For more information, refer to User-Defined Thermal Material and Build External Libraries in the User Guide.
 - The corresponding dynamic linked libraries (.dll or .so) for the user-defined material is loaded based on the LOADLIB entry. If LOADLIB entry is not defined (or if the GROUP parameter is not specified), then OptiStruct loads the umat.dll or umat.so file from the working directory.
 - All parameter and value pairs listed before the PROPERTY continuation line are in free format. Therefore, the pair of parameter name and its value can be located anywhere in the defined fields.
 - The PROPi data are directly passed to the loaded .dll or .so file where it used by the subroutine identified by the USUBID parameter.
 - MATUSHT is only supported for Heat Nonlinear Transient Transfer Analysis. It can be used to define time-dependent and/or temperature-dependent thermal material properties.
 - MATUSHT can currently only be referenced on PSOLID Bulk Data Entries. It is not supported for reference on the PCONV Bulk Data Entry.
 - Shared libraries (.dll or .so) can be created using either Fortran, C or C++ for user-defined materials.
 - Regular Built-in OptiStruct output, like Grid Temperatures, Element
                        Fluxes, and so on can be requested for any thermal material user-subroutine
                        based model. Additionally, user-defined output can also be requested via the
                            
State(*)variable in the user subroutine. The number of suchState(*)variables should be identified on the NDEPVAR field.This State variable can be assigned to any output variable that is required to be output from the subroutine, and it can then be visualized in HyperView after loading the H3D file.
 - MATUSHT supports the option to assign use-defined
                        labels to state variables using the 
initusrsubroutine. State variables are user-defined variables used to output non-standard results in an H3D file. By using theinitusrsubroutine you can specify the label of the state variable to display in the H3D file.