In this paper, we have proposed a highly effective and efficient method to perform source optimization in lithography. Two typical mask patterns, common in the logic and SRAM layout, are adopted in the numerical verifications. Results show that our method can achieve greater image fidelity and over 10X running speed enhancement comparing to Granik’s and Ma&Arce’s methods. Our method is quite robust verified by four different initial source patterns.