Like a compound block, a submodel block can be used for hierarchical simulation modeling and for facilitating component reuse.
The key difference between a submodel block and a compound block is that the contents of a compound block are embedded in
the model when it is created. Although a compound block can be saved and reused in the same model or different models, each
instance of the compound block must be edited separately if changes need to be made. All instances of a compound block, whether
in the same model or different models, are independent from each other. On the other hand, a submodel block provides a linkage
to its contents from the simulation model. The definition of the submodel contents can be stored as a compound block file
(with file extension .cblk
) and modified independently. When the content definition is changed, all instances of the submodel, whether in the same model
or different models, contain the changes.