LU decomposition using the crout algorithm