A general and precise method to model rotary machines based on transient magnetic field computation using finite-element method (FEM) is presented. The merits of the proposed method are that the nonlinear iteration on the rotor position can be avoided. Formulas to predict the rotor position and speed of the machine are deduced based on Taylor's expansion. A curvilinear element is used on the two sides of the sliding surface to reduce the numerical noises arising from mesh rotation. The proposed methods for dealing with matching boundary conditions and periodic boundary conditions are very general, accurate and flexible. Typical numerical experiment shows that the numerical error of the local magnetic potentials on the motion sliding surface is only one twentieth of that of traditional interpolation method.