Converting from BlockSim 6 or 7 Files
IMPORTANT: This information is applicable only in Version 21.0.1 and earlier.
When you import from a BlockSim 6 (*.rb6) or BlockSim 7 (*.rbp) file, the Conversion Settings window allows you to specify:
- Whether you want the diagrams to be converted to analytical diagrams, simulation diagrams, or both.
- Whether the application will attempt to merge identical records when certain block properties are converted to resources. For example, if the old diagram has two blocks with the same failure distribution, this can be imported as two separate but identical failure models, or as a single failure model that's linked from both blocks.
Tip: The default preferences for merging identical resources upon conversion are set on the Conversion page of BlockSim's Application Setup (File > Application Setup). Note that any changes you make in the Conversion Settings window will update your preferences in the Application Setup. In other words, the same options will be selected by default the next time you attempt to convert a BlockSim 6 or 7 file on this computer.
Conversion Constraints and Differences
Numerous improvements have been made to the modeling capabilities and underlying analysis and simulation algorithms used in BlockSim. As a result, analysis or simulation of diagrams imported from previous versions of BlockSim may yield results that differ from the results originally obtained. In particular, results may differ in the following cases and/or for the following reasons:
- Simulation diagrams:
- When multiple blocks are used in conjunction with subdiagrams, the underlying order of block expansion differs between versions, so results may differ. Starting in Version 8, containers are treated as subdiagrams. The underlying order of block expansion differs between versions, so results may differ. However, some special cases will produce identical results. These include cases where:
- The container is the only block in the diagram.
- The container is at the end of the list in the original diagram (i.e., it was created last and has the highest block ID, which is automatically assigned by the software upon block creation).
- The load on contained load sharing blocks is calculated differently. Version 7 required a life-stress relationship for such configurations and based the re-calculation of load after block failure on that relationship; subsequent versions calculates load using the weight proportionality factor as a multiplier.
- Normal/lognormal distributions have increased precision starting in Version 8.
- Maintenance tasks that are performed at specified intervals (based on item age or calendar time) for multiple blocks are performed in a different order, producing results that are not identical, although the difference will not be statistically significant.
- Indirect cost is calculated differently. In Version 7, the following was calculated at the end of the simulation:
Indirect cost = Average stock level * Holding cost per item * Simulation end time
In subsequent versions, the indirect cost is calculated for each simulation and then averaged at the end to yield the indirect cost that is shown. This is because holding cost per item may be a distribution. - The order in which random numbers are assigned in general is by block ID. This means that if diagrams have the same blocks with the same IDs in both the previous version and the current version, the results will be identical. Standby containers represent an exception to this. In Version 7, the order of blocks is overwritten by the standby priority. Therefore, results may not be identical with standby containers if the block IDs do not match the block standby priorities. The difference should not be statistically significant.
- For mirrored blocks, in Version 7, the block that fails is the source and all the other mirrors are assigned these failures. In subsequent versions, the failures are assigned to the mirrored block with the lowest block ID. If the failure source is not the block with the lowest ID, then the results will be different between versions.
- Mirrored blocks inside subdiagrams are handled differently. In Version 7, they were treated as different groups of mirrors; subsequent versions treat them as the same group. This may produce results that are statistically different.
- Throughput is not available in fault trees starting in Version 8.
- The throughput property Send units to failed blocks works differently for subdiagrams in versions after Version 7, in that it applies to the whole diagram. That is, if the current block is set to not send units to failed blocks and the next block is a subdiagram that is not operating, then the throughput will be re-routed if possible or the current block will accumulate backlog.
- Phases have different rules on how interrupted events are handled and may give different results when re-simulating.
- Starting in Version 8, containers do not exist in maintenance phases. Thus, the availability results for containers in phase simulation may be different than in previous versions.
- When multiple blocks are used in conjunction with subdiagrams, the underlying order of block expansion differs between versions, so results may differ. Starting in Version 8, containers are treated as subdiagrams. The underlying order of block expansion differs between versions, so results may differ. However, some special cases will produce identical results. These include cases where:
- Analytical diagrams:
- The load on contained load sharing blocks is calculated differently. Version 7 required a life-stress relationship for such configurations and based the re-calculation of load after block failure on that relationship; subsequent versions calculate load using the weight proportionality factor as a multiplier.
- Mirrored blocks inside subdiagrams are handled differently. In Version 7, they were treated as different groups of mirrors; subsequent versions treat them as the same group. This may produce results that are statistically different.
- Other issues of interest when opening BlockSim 7 files:
- Nodes do not have failure/maintenance properties starting in Version 8. Therefore, if a node has failure properties in BlockSim 7, it will be imported in the current version as two blocks: a node with the k-out-of-n and the throughput properties (if applicable) and a block with the failure properties positioned immediately after the node. If the node does not have failure properties, a second block will not be imported.
- The load on contained load sharing blocks is calculated differently. Version 7 required a life-stress relationship for such configurations and based the re-calculation of load after block failure on that relationship; subsequent versions calculate load using the weight proportionality factor as a multiplier. Because of this, if you convert a diagram that uses load sharing containers, you will need to manually configure the contained load sharing blocks after conversion.
- Simulation FRED reports will be imported, but cannot be restarted or have levels appended/removed until the diagram is resimulated.
In addition, certain rules apply when importing maintenance properties from BlockSim 7:
- Preventive maintenance:
- For each preventive maintenance setting, a new task will be created. For example, if the preventive maintenance policy is set to be performed upon system down and upon system age, two tasks will be created.
- For each task created, the duration, crews, restoration factor, etc. will be identical.
- Inspections:
- For each inspection setting, a new task will be created. For example, if the inspection policy is set to be performed upon system down and upon system age, two tasks will be created.
- For each task created, the duration, crews, restoration factor, etc. will be identical. Note that inspections do not use pools.
- If a detection threshold is defined in Version 7, an on condition task will be created instead of an inspection task in subsequent versions. A threshold is defined in Version 7 if a Failure Detection Threshold greater than 0 and less than 1 is specified or if a P-F Interval greater than 0 is specified.
- The inspection properties from Version 7 will be transferred to the inspection properties of the on condition task in subsequent versions.
- The threshold (i.e., detection) information from Version 7 will be transferred to the failure detection properties of the on condition task in subsequent versions.
- The preventive maintenance properties from Version 7 will be transferred to the on condition task (upon detection) properties of the on condition task in subsequent versions.
- If a detection threshold is defined in Version 7 but no preventive maintenance properties are defined, then only an inspection task will be created (i.e., the threshold is ignored).
- PM/Inspection based on group:
- A task will be added and assigned to the maintenance group that the block belongs to. For example, if Block 1 belongs to Item Group 1 and has an inspection policy based on group maintenance in Version 7, then in subsequent versions an inspection task will be created and will be set to be performed upon group maintenance. Maintenance Group 1 will be checked in the list of groups that will trigger a maintenance, and Block 1 will be assigned to Maintenance Group 1.
- If the block does not belong to a group, a task will not be added.
- The corrective maintenance properties will be imported as corrective tasks.
- A preventive maintenance action or an inspection based on maintenance phase and associated with a block in a standard phase will not be imported.