Dear Prof. Taylor, thanks for the reply.
The reason that I am interested in this explicit time integrator is that this method has been proven to be unconditional stable for linear and geometrically softening nonlinear problems. When this explicit time integrator is applied to a geometrically nonlinear system, it doesn't need to inverse the stiffness matrix and do iterations for solving the displacement within a time step.
For geometrically nonlinear problems, the mass matrix of such system doesn't change as the time varies. Therefore, I think I only need to inverse the mass matrix once at the beginning of the simulation and store the factorized mass matrix for the following simulation. I want this method is also applicable for systems with consistent mass matrix and damping (Although strictly speaking, the method is not explicit in this case).
I just read the pmacr1.f, do you mean that if I want to include the damping force in the residual for a user explicit time integrator, I just need to form the residual in the way that implicit time integrators use ("call formfe(np(40),np(26),na,nal,tr,tr,fa,fa,3,1,numel,1)")? In addition, would you please let me know how to write a user solve command to solve for acceleration of the explicit time integrator with consistent mass matrix? I know that for the implicit time integrator the "solve" command solves displacement increment in this way: du=tang^-1 * R, where tang=c1*K+c2*C+c3*M.
Thanks for providing the rewritten form of the parameter A=(M+K)-1 *M. I forgot to mention that the parameter A needs to multiply the displacement, velocity or the acceleration in the time integration. The algorithmic parameter A here is a matrix rather than a scalar for multiple-degree-of-freedom systems. Moreover, when calculating the parameter A, the K is the initial stiffness matrix of the system. It is therefore only needed to calculate A once at the beginning of the simulation.
Thank you very much again and I really appreciate your help.