Determistic Simulations

Determinism means that you get the same result each time you run the simulation with the same initial conditions. ProtoTwin simulations are deterministic even across different supported browsers and operating systems. Simulations are usually deterministic across different hardware, although this cannot be guaranteed.

Determinism in the context of physics-based simulations is important because it enables reproducibility. Non-deterministic simulation makes the development and testing of control logic more difficult and erodes trust in the reliability of the results obtained. Since ProtoTwin simulations are deterministic across different browsers and operating systems, you can share your simulation with a colleague and be confident that they will see the same results.

PLC Connectivity

Simulations in ProtoTwin Connect, when controlled by a PLC, are non-determistic. This is because the PLC has its own clock, which is entirely separate from ProtoTwin’s clock. However, the SoftPLC integrated into ProtoTwin is completely deterministic.

Hardware Determinism

ProtoTwin uses Single Instruction/Multiple Data (SIMD) instructions internally for improved performance. These instructions allow your processor to perform the same instruction on multiple pieces of data simultaneously. This provides a significant improvement in single-core and multi-core performance. However, not all SIMD instructions are available on every processor.

SIMD instructions are emulated when they are not available on a particular processor. The emulated instructions may produce slightly different results, which can result in different behaviour across different processors. Fortunately, ProtoTwin is deterministic across most hardware. This is because almost all modern consumer Intel and AMD processors support all the SIMD instructions that are used. We’ve tested ProtoTwin for determinism on processors that are over a decade apart in terms of age.