ICCAP: a linear time sparse transformation and reordering algorithm for 3D BEM capacitance extraction