During import, this element first creates a material of type Common. The tag and component attributes are not strictly enforced during import because the import decides their values depending to what list you import the materials to. The given tag can be occupied by another material, and the component is specified by the target. The content of the material element defines what property groups and functions the material contains. The
propertyGroup element and the
func element work in the same way as the material element — they represent new entities under the entity created by the parent element.
The propertyGroup element contains a lot of elements named
set and
addInput. The
set element represents setting the value of a material property, where the name attribute is the name of the property and the value attribute is its value. Tensor-valued properties use curly braces to specify tensors. Here the syntax follows the standards that COMSOL Multiphysics uses in its API. If you give one value to a 3-by-3 tensor property it will become an isotropic tensor. Similarly, a value of length 3 is a diagonal tensor, and a value of length 6 represents a symmetric tensor. Give 9 values (as in the example above) to specify a full anisotropic tensor. The convention to use a vector of values to a tensor is something that the COMSOL Multiphysics software uses for property groups and also settings in physics features and multiphysics couplings. Other matrix-style values, such as the interpolation table for the
func element, use a matrix specification using two levels of curly braces. The
addInput element adds a model input to the material, and it expects a valid physical quantity ID for its quantity attribute.
The material element also supports a few set elements. Typically for the appearance settings such as the one named
family in the example above.