Having to explicitly specify these widths is a tedious job. To make matters worse, the addition of one relation to a multiport might force the model builder to go through the entire model again to adapt widths. To cope with this the user can set the width parameter of a relation to be inferred, but the original implementation did not support inference across actors or over multiple levels of hierarchy.
This paper describes the more general width inference algorithm now implemented in Ptolemy II. We cover the new features of the algorithm, optional settings for controlling optional consistency checks, and caveats for dealing with legacy models and default widths.