I would like to compute the analytic determinant of the following sparse matrix
mat={
{f[1, 6], 0, 0, 0, 0, 0, 0, 0, 0, 0, f[1, 2] + f[1, 6] + f[2, 6], 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, f[1, 6], 0, 0, 0, 0, 0, 0, 0, 0, f[1, 3] + f[1, 6] + f[3, 6], f[1, 2] + f[1, 6] + f[2, 6], 0, 0, 0, 0, f[4, 5], 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, f[1, 6], 0, 0, 0, 0, 0, 0, 0, f[1, 4] + f[1, 6] + f[4, 6], 0, f[1, 2] + f[1, 6] + f[2, 6], 0, 0, 0, f[3, 5], 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, f[1, 6], 0, 0, 0, 0, 0, 0, 0, f[1, 3] + f[1, 6] + f[3, 6], 0, f[1, 2] + f[1, 6] + f[2, 6], 0, 0, 0, q[1], 0, 0, f[4, 5], 0, 0, 0, 0},
{0, 0, 0, 0, f[1, 6], 0, 0, 0, 0, 0, 0, f[1, 4] + f[1, 6] + f[4, 6], f[1, 3] + f[1, 6] + f[3, 6], 0, f[1, 2] + f[1, 6] + f[2, 6], 0, f[2, 5], 0, q[1], 0, f[3, 5], f[4, 5], 0, 0, 0},
{0, 0, 0, 0, 0, f[1, 6], 0, 0, 0, 0, 0, 0, f[1, 4] + f[1, 6] + f[4, 6], 0, 0, f[1, 2] + f[1, 6] + f[2, 6], 0, 0, 0, q[1], 0, f[3, 5], 0, 0, 0},
{0, 0, 0, 0, 0, 0, f[1, 6], 0, 0, 0, 0, 0, 0, f[1, 3] + f[1, 6] + f[3, 6], 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, f[1, 6], 0, 0, 0, 0, 0, f[1, 4] + f[1, 6] + f[4, 6], f[1, 3] + f[1, 6] + f[3, 6], 0, 0, 0, 0, 0, f[2, 5], 0, q[1], 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, f[1, 6], 0, 0, 0, 0, 0, f[1, 4] + f[1, 6] + f[4, 6], f[1, 3] + f[1, 6] + f[3, 6], 0, 0, 0, 0, 0, f[2, 5], 0, q[1], 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, f[1, 6], 0, 0, 0, 0, 0, f[1, 4] + f[1, 6] + f[4, 6], 0, 0, 0, 0, 0, 0, 0, 0, q[1]},
{f[2, 6], 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{f[3, 6], f[2, 6], 0, 0, 0, 0, 0, 0, 0, 0, f[2, 3] + f[2, 6] + f[3, 6], 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{f[4, 6], 0, f[2, 6], 0, 0, 0, 0, 0, 0, 0, f[2, 4] + f[2, 6] + f[4, 6], 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, f[3, 6], 0, f[2, 6], 0, 0, 0, 0, 0, 0, 0, f[2, 3] + f[2, 6] + f[3, 6], 0, 0, 0, 0, 0, q[2], 0, 0, 0, 0, 0, 0, 0},
{0, f[4, 6], f[3, 6], 0, f[2, 6], 0, 0, 0, 0, 0, f[3, 4] + f[3, 6] + f[4, 6], f[2, 4] + f[2, 6] + f[4, 6], f[2, 3] + f[2, 6] + f[3, 6], 0, 0, 0, f[1, 5], 0, q[2], 0, 0, 0, 0, 0, 0},
{0, 0, f[4, 6], 0, 0, f[2, 6], 0, 0, 0, 0, 0, 0, f[2, 4] + f[2, 6] + f[4, 6], 0, 0, 0, 0, 0, 0, q[2], 0, 0, 0, 0, 0},
{0, 0, 0, f[3, 6], 0, 0, f[2, 6], 0, 0, 0, 0, 0, 0, f[2, 3] + f[2, 6] + f[3, 6], 0, 0, 0, q[3], 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, f[4, 6], f[3, 6], 0, 0, f[2, 6], 0, 0, 0, f[3, 4] + f[3, 6] + f[4, 6], 0, f[2, 4] + f[2, 6] + f[4, 6], f[2, 3] + f[2, 6] + f[3, 6], 0, 0, q[4], q[3], 0, f[1, 5], 0, q[2], 0, 0},
{0, 0, 0, 0, f[4, 6], f[3, 6], 0, 0, f[2, 6], 0, 0, 0, f[3, 4] + f[3, 6] + f[4, 6], 0, f[2, 4] + f[2, 6] + f[4, 6], f[2, 3] + f[2, 6] + f[3, 6], 0, 0, q[4], q[3], 0, f[1, 5], 0, q[2], 0},
{0, 0, 0, 0, 0, f[4, 6], 0, 0, 0, f[2, 6], 0, 0, 0, 0, 0, f[2, 4] + f[2, 6] + f[4, 6], 0, 0, 0, q[4], 0, 0, 0, 0, q[2]},
{0, 0, 0, 0, 0, 0, f[3, 6], 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, f[4, 6], f[3, 6], 0, 0, 0, 0, 0, f[3, 4] + f[3, 6] + f[4, 6], 0, 0, 0, 0, 0, 0, 0, 0, q[3], 0, 0},
{0, 0, 0, 0, 0, 0, 0, f[4, 6], f[3, 6], 0, 0, 0, 0, 0, f[3, 4] + f[3, 6] + f[4, 6], 0, 0, 0, 0, 0, 0, 0, q[4], q[3], 0},
{0, 0, 0, 0, 0, 0, 0, 0, f[4, 6], f[3, 6], 0, 0, 0, 0, 0, f[3, 4] + f[3, 6] + f[4, 6], 0, 0, 0, 0, 0, 0, 0, q[4], q[3]},
{0, 0, 0, 0, 0, 0, 0, 0, 0, f[4, 6], 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, q[4]}
};
The built in Mathematica routine takes too long. The trivial Laplace expansion as given for instance in the answer to this question also takes too long. What should I do?

q[x_]terms. – Kagaratsch Aug 18 '15 at 23:12lu = LUDecomposition[mat]; detfax = Apply[Times,Diagonal[lu[[1]]]];Might be very slow to factor however. – Daniel Lichtblau Aug 19 '15 at 15:41