Programs have been used to simulate the interactions of energetic particles with matter for over 60 years, and their capabilities and accuracy have evolved greatly over this time. In the past three decades general purposes packages have been created to simulate High Energy Physics detectors. The capabilities of these programs has evolved with the complexity of the detectors, culminating in the Geant4 toolkit which is used to simulate the detectors of the LHC experiments.
I will explain the concept of Monte Carlo simulation as it applies to simulating the interactions of the particles produced in a HEP accelerator. To do this I will introduce you to the complexity of the particle showers that are created from a few initial interactions. I will explain how we emulate the essential features of these physical processes in a general purpose toolkit. Finally I will give you an overview of how the experiments use it to design their detectors, prepare their reconstruction programs before the detector is finished and then utilise simulated collisions to understand whether they are seeing novel physics or just well established interactions or particles.