Using Chawla's identity (BIT 29 (1989) 566) a finite difference method based on uniform mesh is described for a class of singular boundary value problems (p(x)y')' = p(x)f(x,y), 0<x≤1, y(0)=A, αy(1) + βy'(1)=γ, or<LF>y'(0)=0, alphay(1)+betay'(1)=gamma with p(x)=x(b 0)g(x), b(0)greater than or equal to0, and it is shown that the method is of second-order accuracy under quite general conditions on p(x) and f (x, y). This work also extends the method developed by Chawla et al. (BIT 26 (1986) 326) for p(x)=x(b 0), b(0)greater than or equal to1, to a general class of function p(x)=x(b 0) g(x), b(0)greater than or equal to0. Numerical examples for general function p(x) verify the order of the convergence of the method and two physiological problems have also been solved. (C) 2003 Published by Elsevier B.V.