Terahertz Technology:Fundamentals and Applications