modelOven
Extends from Icons.Oven (Icon for ovens), Interfaces.Basics.GenericStock_Special (Generic Stock with internal dynamics).
Information
This information is part of the Business Simulation Library (BSL). Please support this work and ► donate.
An oven (aka batch delay) can be seen as an idealized model of a batch process, e.g., cookies are put on a baking tray, the oven is loaded, the cookies are baked for some time, and finally the oven is unloaded (the process may then start over again).
The parameters or inputs batchSize, maxLoadingTime, processingTime, and setupTime specify the behavior of the batch process. The oven is loaded by a flow connected to its inflow port (usually from a cloud or another stock representing a buffer stock) until either the batchSize is reached (the oven's capacity) or the time since the loading of the oven commenced has reached the maxLoadingTime. It will then close and prevent further inflow for the duration of the processingTime. The unloading of the finished "material" will take place in dt time - a global variable that indicates the shortest possible durationa of any process in a model. The reloading can commence after setupTime has passed since the process has ended. For setupTime = 0 simulatenous loading and unloading will take place.
To initialize the oven, an initialLoad and an initialLoadingTime (e.g., how much time has already passed loading the oven when the simulation starts) have to be given.
Notes
- Care has to be taking in the case of simultaneous loading and unloading as in the case of the loading rate being higher than the unloading rate the capacity could be reached before the unloading is done so that material would be processed twice.
batchSize,maxLoadingTime,processingTime, andsetupTimecan be time-varying continuous inputs, but are internally recalculated every time the process starts and then are held fixed.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| OutputType | initialLoad | 0 | Amount loaded at start time |
| Time | initialLoadingTime | 0 | Time that has already passed to load the initial load at start time |
| OutputType | batchSize | unspecified | Constant number of units processed in one batch (optional) |
| Time | maxLoadingTime | inf | Constant maximum allowed time for loading (optional) |
| Time | processingTime | unspecified | Constant processing time for the batch process or per unit loaded (optional) |
| Time | setupTime | unspecified | Time needed after processing is finished before loading can start (set to zero for simultaneous loading and unloading) |
| Time | unloadingTime | modelSettings.dt | Time needed to unload |
| Advanced | |||
| InitializationOptions | init (from GenericStock_Special) | InitializationOptions.FixedValue | Provide InitializationOptions (Free, FixedValue, SteadyState) |
| Structural Parameters | |||
| Boolean | hasStockInfoOutput (from GenericStock_Special) | false | = true, if a StockInfoOutput should be added to the stock |
| Boolean | hasFixedProcessingTime | false | = true, if the processing time is given for the process, otherwise it is the time per unit loaded |
| Boolean | hasConstantLoadingTime | false | = true, if the maximum allowed time for loading is to be given by the parameter |
| Boolean | hasConstantBatchSize | false | = true, if the batch size is to be given by the parameter |
| Boolean | hasConstantProcessingTime | false | = true, if the processing time is to be given by the parameter |
| Boolean | hasConstantSetupTime | false | = true, if the setup time is to be given by a parameter |
| Boolean | hasConstantUnloadingTime | false | = true, if the unloading time is to be given as a parameter |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| StockPort | inflow (from GenericStock_Special) | Inflow port of the stock | |
| StockPort_Special | outflow (from GenericStock_Special) | Special outflow port of the stock (stock sets rate) | |
| StockInfoOutput | y_stockInfo (from GenericStock_Special) | Optional StockInfoOutput | |
| InputConnector | dataIn | Expandable connector for inputs | |
| OutputConnector | dataOut | Expandable connector for outputs |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| RealOutput | y (from ThreeSO) | Level or rate information | |
| RealOutput | y1 (from ThreeSO) | Level or rate information | |
| RealOutput | y2 (from ThreeSO) | Level or rate information | |
| ModelSettings | modelSettings |
Contents
| Name | Description |
|---|---|
| Named inputs for the component | |
| TimeOutputprotected |
Revisions
- Fixed missing connect equations to establish potentially present variables in expandable connector for output in v2.1.0.
- Removed conditionality for expandable connector
dataInin v2.1.0. - Connectors
InputConnectorandOutputConnectorchanged toencapsulated expandable connectorclasses in v2.1.0. - Continuous inputs made default in v2.1.0 and changed default parameter values to
unspecifiedin v.2.1.0.