Deallocating Resource Entities

Resources seized by controlling entities can be released (deallocated) by using the Release block. Resource constraints can be defined on the Release block to locate targeted resource entities within the controlling entity to be released. The Release block provides an output resource entity port for each constraint defined. For each controlling entity that enters the Release block during a simulation run, the user-defined resource constraints are used to locate and deallocate the targeted resources among the resources held by the controlling entity. The deallocated resources flow out the appropriate output resource ports.

Analogous to the seize process in Simulation Studio, releasing resources is treated as a special entity unbatching operation. Therefore, the Unbatch block can also be used to release resources if (i) the deallocation process does not require partial resources to be released from the controlling entity (no manipulation of resource units); or (ii) the model logic does not require different types of resource entities to flow to different locations (no multiple output ports). The released resource entities from an Unbatch block flow out the same output port, one after another.

Released resources can be routed to any block in the model as dictated by the system logic. In an emergency room example, after the doctor resource is released, he may be required to complete paperwork before seeing the next patient. In this case, the released doctor resource entity could be routed to a Delay block (representing the paperwork completion time) and then back to a Resource Pool block, signifying that it is available to be seized by another patient entity.