Discontinuous deformation analysis (DDA) is a numerical method for analyzing dynamic behaviors of an assemblage of distinct blocks, with the block displacements as the basic variables. The contact conditions are approximately satisfied by the open–close iteration, which needs to fix or remove repeatedly the virtual springs between blocks in contact. The results from DDA are strongly dependent upon stiffness of these virtual springs. Excessively hard or soft springs all incur numerical problems. This is believed to be the biggest obstacle to more extensive application of DDA. To avoid the introduction of virtual springs, huge efforts have been made with little progress related to low efficiency in solution. In this study, the contact forces, instead of the block displacements, are taken as the basic variables. Stemming from the equations of momentum conservation of each block, the block displacements can be expressed in terms of the contact forces acting on the block. From the contact conditions a finite-dimensional quasi-variational inequality is derived with the contact forces as the independent variables. On the basis of the projection–contraction algorithm for the standard finite-dimensional variational inequalities, an iteration algorithm, called the compatibility iteration, is designed for the quasi-variational inequality. The main processes can be highly parallelized with no need to assemble the global stiffness matrix. A number of numerical tests, including those very challenging, suggest that the proposed procedure has reached practical level in accuracy, robustness and efficiency, and the goal to abandon completely virtual springs has been reached. 6-dimensional generalized force vector, in Eq. (4) 6 × 2 n i matrix formed by all the local frames at block Ω i , Eq. (8) 6 × 2 matrix of the j th contact local frame at block Ω i , Eq. (9) cohesion at the k th contact, Eq. (33) incremental displacement vector of block Ω i , Eq. (1) time interval of a time step, Eq. (10) Young’s modulus, in all the examples 6 × 6 stiffness matrix of block Ω i , Eq. (7) tolerance of contact force vector p in the compatibility iteration x direction normal strain of block Ω i , Eq. (7) y direction normal strain of block Ω i , Eq. (1) 6 × 2 n i flexibility matrix, Eq. (15) 6-dimensional flexibility vector, Eq. (16) vector-valued gap function, in Eq. (38) acceleration of gravity, in all the examples a part of normal gap of the contact-pair formed by an edge of Ω i and a vertex of Ω j , in Eq. (24) a part of tangential slide of the contact-pair formed by an edge of Ω i and a vertex of Ω j , in Eq. (31) normal gap of the k th contact, Eq. (18) tangential slide of the k th contact, Eq. (27) shear strain component of block Ω i , Eq. (1) 6 × 6 equivalent stiffness matrix of block Ω i , Eq. (12) allowable maximum displacement within a time step, in all the example density of block, Eq. (6) 6 × 6 mass matrix of block Ω i , Eq. (6) friction coefficient at the k th contact, Eq. (33) the number of contact-pairs within a time step, in Section 4 unit normal vector of local frame [ n , τ ] of a contact-pair 2 n i - and 2 n j - and dimensional vectors in calculating normal gap g k n of the k th contact-pair, in Eq. (23) the number of contact-pairs at block Ω i , Eq. (5) Poisson’s ratio, in all the examples region occupied by the i th block contact force vector, Eq. (35) normal contact force of the k th contact, Eq. (25) tangential contact force of the k th contact, Eq. (32) 6-dimensional equivalent block force vector of block Ω i , Eq. (13) rotation angle of block Ω i around point ( x 0 , y 0 ) , Eq. (1) 2 × 6 shape function matrix of block Ω i , Eq. (3) unit normal vector of local frame [ n , τ ] of a contact-pair 2 n i - and 2 n j - and dimensional vectors in calculating tangential slide g k τ of the k th contact-pair, in Eq. (30) shear strength corresponding to normal contact force p k n , in Eq. (33) velocity vector of block Ω i at the end of a time step, Eq. (17) velocity vector of block Ω i at the beginning of a time step, Eq. (17) coordinates of an arbitrary point in block Ω i , Eq. (2) coordinates of a reference point in block Ω i , Eq. (1) constraint for the contact forces, in Eq. (36) 
Dual form of discontinuous deformation analysis