Computational Methods for Nanoscale Applications: