Fundamentals of Matrix Analysis with Applications