Material Properties File

The MyCompany_UserMat_Properties.xml file contains the specific data that is sent to Mechanical. Within the file, the Bulk Details element houses the data elements.

The illustration shown below displays the BulkDetails element in a collapsed view. The additional elements within BulkDetails are the elements that you will make changes to.

Within the BulkDetails element, the PropertyData element defines the input data for each user-defined material model.

The PropertyData element requires the property attribute (property="prUSER") which is a string data type that corresponds to an id attribute in the Metadata element within the properties files. You may use any unique string as the identification for a given Property. The PropertyData element also requires the minOccurrences attribute (minOccurrences="1") attribute. You use the ParameterValue element within PropertyData to define the data for a user-defined material model.

<Data format>=string</Data>

You must include this line as shown for compatibility requirements.

<Qualifier name="UserMat">string</Qualifier>

Identifies this PropertyData as being defined in UserMat. The string should be specified as "USER" to define inputs for this user-defined material model (TB, USER) or "STATE" to define state variables for this user-defined material model (TB, STATE) or a material model (e.g. CZM) which supports USER as a valid TBOPT field (e.g. TB,CZM,,,,USER).

<Qualifier name="Display">False</Qualifier>

This Boolean allows the PropertyData to be hidden (False) in the GUI but the data is sent to Mechanical.

The individual field data and behaviors for a user-defined material model are defined within the ParameterValue element. The following attributes are applicable for this element.

Attribute

Value

Description

parameter

"string"

The string corresponds to the id attribute in a ParametersDetails element of the Metadata element. You may use any unique string as the identification for a given Parameter (user-defined material model field).

format

"string"

This attribute is required for compatibility requirements and the string value must equal "float".

lowerLimit

"string"

This string is the lower limit of valid data. It is possible to use ">0.0" for a positive non-zero value. The default is negative the maximum double numerical representation.

upperLimit

"string"

The string is the upper limit of valid data. It is possible to use "<0.0" for a negative non-zero value. The default is the maximum double numerical representation.

Further defining ParameterValue content includes the following:

<Data=string</Data>

The string is the default value for the parameter to send to Mechanical. If the desire is to have a blank field in the GUI to indicate a value should be entered (shown in yellow), use the value included in the example, the result of pow(2,-100).

<Qualifier name="UserMat Constant">string</Qualifier>

The string is an integer value which specifies this parameter value's position in TBDATA command. For example, the user input value of parameter "paC3" will be placed at the fifth position in TBDATA command.

<Qualifier name="Variable Type">string</Qualifier>

This string should be specified as Dependent for a dependent parameter and as Independent for an independent parameter (e.g. Temperature).

Temperature Dependent Parameter Value

When the data can vary with temperature then you need to include a parameter (in the example, ParameterValue parameter="pa1") as the first element of the PropertyData element. You need to also include the following two attributes to define the number of temperature points for which data will be provided.

minEntries

minEntries="string": The string is an integer value. A value of "0" allows the user to enter data without any temperature points.

maxEntries

maxEntries="string": The string is an integer value. For example, a value of "2" allows up to a maximum of two temperature data points to be specified. The maximum entries allowed by MAPDL is limited by the following calculation:

maxEntries <= 1000 / (number of user-defined material model inputs)

For the example content, the parameter "pa1" is defined in the Metadata table as Temperature. You can use an alternate string if desired (e.g. "temp").

STATE Dependent Parameter Value

If your material model also needs STATE data to complete the inputs, include the groupPropertyData parameter as the last element in the PropertyData element. In the example illustrated below, placing this element in more than one PropertyData element will group these PropertyData under a single property "UserMat Model Example 1" in the GUI.

The parameter groupPropertyData is defined in the Metadata table with the name Material Property which facilitates this behavior. You can use an alternate string if desired (e.g. "group").