1. A computer-implemented method of simulating an impact event in a finite element analysis used for assisting users to design or improve one or more structures, the method comprising: receiving a finite element analysis model of one or more structures subject to an impact event in a computer system with a plurality of processing units coupled thereon, wherein the finite element analysis model contains a plurality of contact interfaces; dividing a finite element analysis model into a plurality of domains containing at least a first domain and a second domain in the computer system, the first domain is associated with a first processing unit while the second domain is associated with a second processing unit of the processing units; determining, in the computer system, a group-able correlation table that correlates each of the contact interfaces, with one or more of the domains, wherein said group-able correlation table is used for determining which ones of said contact interfaces are allowed to be processed in parallel; performing, in the computer system, a time-marching simulation of the impact event having a plurality of solution cycles; at each of the solution cycles, creating and sending a first data communication message from the first processing unit to the second processing unit, wherein the first data communication message contains data that are allowed to be grouped together to be processed in parallel according to the group-able correlation table; performing a plurality of computations for the respective contact interfaces of the finite element analysis at each of the first and second processing units with data received in the first data communication message; creating and sending a second data communication message in a reverse direction of the first data communication message, the second message is configured to transmit data resulted from the computations; and displaying results of the simulation on a monitor coupled to the computer system after all of the solution cycles have been computed.