The Principles of Petrology