Create an imat_fn object.
f=imat_fn
f=imat_fn(m,n,p,...)
f=imat_fn(m,n,p,...,'Attr',value,...)
f=imat_fn(m,n,p,...,v)
f=imat_fn(v)
f=imat_fn(imat_result)
You call imat_fn to construct an imat_fn object. An imat_fn object contains function or time history abscissa/ordinate values as well as data attributes such as function type, data type, coordinate labels, etc.
Calling imat_fn with no arguments creates an empty imat_fn object.
If the first one or more arguments to imat_fn are integers, then an mxnxpx... function is created. Each element of this object is a single function. (Alternatively, the dimension of the function object can be specified by a row vector of dimensions, as in imat_fn([2 2]).) The output function will have the default attributes, which can be changed by setdef.
To override default attributes at time of object creation, you can specify one or more attribute names and values in the call to imat_fn. This is equivalent to creating the object with default attributes, and then setting the specified attributes in sequential order.
Instead of a list of attribute names and values, you may supply a structure variable v with field names equal to attribute names, and field values set to the desired attribute values. (Such a structure can be obtained from the get function with multiple attribute requests.)
If the supplied input is an imat_result object, it will be converted to an imat_fn. Results with DataLocations of Data At Nodes, Data At Nodes On Elements, and Data On Elements are converted, and results with no data are skipped. The results are first grouped by DataLocation, then by ResultType. Within each matching result type, the Time or Frequency fields must be unique. These generate the abscissa values for the imat_fn. A new function is created for each component in the result. If the time field contains unique values, the output imat_fn will be a Time Response. Otherwise it will be a Spectrum. Resulting functions with a given reference node were created from the same set of results. The reference node is set to the index of the first result in the supplied imat_result object used to generate the functions.
When Data At Nodes results are converted, the node number and direction are placed in the response coordinate, and the reference coordinate is blank. For Data On Elements results, the reference coordinate is blanked and the response node is set to the element number and the response direction is 'ELEM'. For Data At Nodes On Elements results, the reference node is set to the element number, reference direction is 'ELEM', response node is node number, response direction is component, and the layer is placed in UserValue3.
>> f=imat_fn(3,'functiontype','frequency response function');