We present an interior-point penalty method for nonlinear programming (NLP), where the merit function consists of a piecewise linear penalty function (PLPF) and an 2-penalty function. The PLPF is defined by a set of penalty parameters that correspond to break points of the PLPF and are updated at every iteration. The 2-penalty function, like traditional penalty functions for NLP, is defined by a single penalty parameter. At every iteration the step direction is computed from a regularized Newton system of the first-order equations of the barrier problem proposed in [4]. Iterates are updated using line search. In particular, a trial point is accepted if it provides a sufficient reduction in either the PLPF or the 2-penalty function. We show that the proposed method has the same strong global convergence properties as those established in [4]. Moreover, our method enjoys fast local convergence. Specifically, for each fixed small barrier parameter µ, iterates in a small neighborhood...