Hide Advanced Options
Courses - Fall 2019
ENPM
Engineering, Professional Masters Department Site
ENPM600
Probability and Stochastic Processes for Engineers
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Undergraduate introduction to discrete and continuous probability.
Axioms of probability; conditional probability and Bayes' rule; random variables, probability distributions and densities; functions of random variables; definition of stochastic process; stationary processes, correlation functions, and power spectral densities; stochastic processes and linear systems; estimation and optimum filtering. Applications in communication and control systems, signal processing, and detection and estimation.
ENPM603
Theory and Applications of Digital Signal Processing
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Undergraduate introduction to discrete-time systems.
Uniform sampling and the sampling theorem; the Z-transform and discrete-time system analysis; multi-rate systems; discrete-time random processes; methods for designing FIR and IIR digital filters; effects of quantization and finite work-length; the DFT and FFT; power spectrum estimation.
ENPM609
Microprocessor-Based Design
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Must have completed undergraduate courses in logic design, computer architecture, and programming.
Introduction to microprocessor components, software, and tools. Architectures, instruction sets, and assembly language programming for a commercial microprocessor family. Real-time programming techniques. Peripheral chips such as, parallel ports, counter-timers, DMA controllers, interrupt controllers, and serial communication units. Design projects emphasizing intergrated hardware and software solutions to engineering problems.
ENPM611
(Perm Req)
Software Engineering
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Competency in one programming language; and must have completed an undergraduate software engineering course.
Software engineering concepts, methods, and practices important to both the theorist and the practitioner will be covered. The entire range of responsibilities expected of a software engineer are presented. The fundamental areas of requirements development, software design, programming languages, and testing are covered extensively. Sessions on supporting areas such as systems engineering, project management, and software estimation are also included.
ENPM613
(Perm Req)
Software Design & Implementation
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: ENPM611.
Restriction: Permission of ENGR-CDL-Office of Advanced Engineering Education.
Software design concepts and practices within the field important to both the practitioner and the theorist will be covered. Architectural and detailed designs are included for batch, client/server, and real-time systems. Design considerations for structured, object-oriented, and Web-based systems are covered. Design of databases, user interfaces, forms, and reports are also included. Implementation issues that affect the design, including error handling, performance, and inter-process communication, are presented.
ENPM617
Credits: 3
Grad Meth: Reg, Aud
Credit only granted for: ENPM808T, ENEE645, or ENPM617.
Formerly: ENPM808T.
Covers the underlying techniques of Compiler Construction and introduces the theory and tools that can be employed in order to perform syntax-directed translation of a high-level programming language into an executable code.
ENPM620
(Perm Req)
Computer Aided Engineering Analysis
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Permission of ENGR-Office of Advanced Engineering Education.
Credit only granted for: ENPM620 or ENRE620/ENNU620.
Computer assisted approach to the solution of engineering problems. Review and extension of undergraduate material in applied mathematics including linear algebra, vector calculus, differential equations, and probability and statistics.
A laptop or Tablet PC is required for in-class use.
ENPM622
Energy Conversion I - Stationary Power
Credits: 3
Grad Meth: Reg, Aud
Thermal engineering of modern power generation systems. Cycle analysis of various modern power generation technologies including gas turbine, combined cycle, waste burning and cogeneration. Energy storage and energy transport.
ENPM623
Engineering Combustion Emissions for Air Pollution Control
Credits: 3
Grad Meth: Reg, Aud
Analysis of the sources and mechanisms of combustion generated air pollution. Air pollution due to internal combustion engines, power generation and industrial emissions. Techniques to minimize and control emission.
ENPM624
(Perm Req)
Renewable Energy Applications
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Knowledge of thermodynamics, fluid mechanics, and heat transfer; and permission of ENGR-Office of Advanced Engineering Education.
Credit only granted for: ENPM624 or ENME701.
Thermodynamics and heat transfer of renewable energy sources for heating, power generation and transportation. Wind energy, solar thermal, photovoltaic, biomass, waste burning, and hydropower. Broad overview of the growing use of renewable energy sources in the world economy with detailed analysis of specific applications.
ENPM635
Thermal Systems Design Analysis
Credits: 3
Grad Meth: Reg, Aud
Credit only granted for: ENPM635 or ENME635.
Evaluates the trade-offs associted with thermal systems. Use of software for system simulation, evaluation and optimization. Applications include power and refrigeration systems, electronics cooling, distillation columns, dehumidifying coils, and co-generation systems.
ENPM640
Rehabilitation Robotics
Credits: 3
Grad Meth: Reg, Aud
Recommended: Basic understanding of linear time-invariant control systems (e.g. ENPM667) is preferred but not required. No background or previous experience in assistive robotics, human biomechanics, and/or neuroscience is required.
Credit only granted for: ENPM808J, ENPM640, or ENME444.
Formerly: ENPM808J.
An introduction to a field of robotics dedicated to improving the lives of people with disabilities. The course is designed for students wishing to learn more about rehabilitation robotics, one of the fasting growing fields of robotics. Rehabilitation robotics is the application of robots to overcome disabilities resulting from neurologic injuries and physical trauma, and improve quality of life. This course considers not only engineering design and development, but also the human factors that make some innovative technologies successful and others commercial failures. Engineering innovation by itself, without considering other factors such as evidence-based R&D and product acceptance, may mean that some technologies don't become or remain available or are inefficacious to aid their intended beneficiaries. This course differs from medical robotics in its focus on improving the quality of life through robot-mediated rehabilitation treatments, rather than improving or enhancing applications such as surgical interventions.
ENPM645
Human-Robot Interaction
Credits: 3
Grad Meth: Reg, Aud
Recommended: Some knowledge of A.I. fundamentals and data analytics recommended, but not required.
Credit only granted for: ENPM808K or ENPM645.
Formerly: ENPM808K.
To define the intersection of human-robot interactions to include human-computer interfaces, as well as robotic emotions and facial expressions emulations. The result will provide a basis for students to assess the best approaches for interacting effectively with robots. Areas to be covered include biologically-inspired robotics, cognitive robotics, cultural and social aspects of robotics, data mining, examples of human systems interfaces, and machine learning with respect to A.I. principles and limitations.
ENPM662
Introduction to Robot Modeling
Credits: 3
Grad Meth: Reg, Aud
Credit only granted for: ENPM662 or ENPM808M.
Formerly: ENPM808M.
This course introduces basic principles for modeling a robot. Most of the course is focused on modeling manipulators based on serial mechanisms. The course begins with a description of the homogenous transformation and rigid motions. It then introduces concepts related to kinematics, inverse kinematics, and Jacobians. This course then introduces Eulerian and Lagrangian Dynamics. Finally, the course concludes by introducing basic principles for modeling manipulators based on parallel mechanisms. The concepts introduced in this course are subsequently utilized in control and planning courses.
ENPM667
Control of Robotic Systems
Credits: 3
Grad Meth: Reg, Aud
Credit only granted for: ENPM667 or ENPM808Q.
Formerly: ENPM808Q.
This is a basic course on the design of controllers for robotic systems. The course starts with mainstay principles of linear control, including a review of elementary concepts of systems, and discusses applications to independent joint control. The second part of the course introduces a physics-based approach to control design that uses energy and optimization principles to tackle the design of controllers that exploit the underlying dynamics of robotic systems. The course ends with an introduction to force control and basic principles of geometric control if time allows.
ENPM674
Design and Synthesis of Digital Systems
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: ENEE140, ENEE150, and ENEE350; or students who have taken courses with comparable content may contact the department.
Recommended: ENEE446.
Students will be introduced to HDL-based design of modern digital systems, and will cover in depth the design and implementation of digital systems using the Verilog HDL. Students will learn fundamental concepts of the Verilog language; modeling of complex digital systems; simulation and verification; and Verilog coding styles for synthesis. Hands-on experience will be developed through practical designs, exercises, and projects. Students will use state-of-the-art EDA tools to design, simulate, and test digital systems. The latter part of the course will focus on customized programmable platforms such as graphics processors (GPUs) multicore platforms and FPGAs as well as coding, building, and debugging for such platforms.
ENPM677
Wireless Sensor Networks
Credits: 3
Grad Meth: Reg, Aud
Focuses on networking aspects, protocols and architectures for Wireless Sensor Networks. Provides a thorough description of the most important issues and questions that have to be addressed in a wireless sensor neto work.
ENPM687
Digital Forensics and Incidence Responses
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Experience with both Windows and Unix-based operating systems, including using the command line.
Credit only granted for: ENPM808P or ENPM687.
Formerly: ENPM808P.
Students will implement a robust incident response methodology, including proper forensic handling of evidence, and cover legal aspects of national and international law regarding forensics. The bulk of the course covers evidence acquisition, preservation, analysis and reporting on multiple platforms.
ENPM691
(Perm Req)
Hacking of C programs and Unix Binaries
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: ENEE150; or students who have taken courses with comparable content may contact the department.
Teaches the fundamentals of secure programming in C. An in depth discussion on various security vulnerabilities (e.g., buffer overflows) in C applications will be taught with hands-on demo of concepts during the class. Students will learn how a C program runs "under-the-hood". The course will teach nitty-gritty of C programs by analyzing at the assembly level. The course discusses best practices (e.g., coding standards) and design principles for secure programming so that security can be built-in during design time. In addition to assignments, students are required to present papers related to this course.
ENPM694
Networks and Protocols
Credits: 3
Grad Meth: Reg, Aud
Credit only granted for: ENPM694 or ENPM808A.
Formerly: ENPM808A.
Provides a deep understanding of TCP/IP protocol suit and routing in the internet. The course topics are: overview of TCP/IP, basics of IP protocol, basics of TCP protocol, Network Address Translation (NAT), Dynamic Host Configuration Protocol (DHCP), Internet Protocol Security (IPsec), Internet Control Message Protocol (ICMP), Simple Mail Transfer Protocol (SMTP), Domain Name Service (DNS), IPv6, Concepts of routing (Bellman-Ford and Dijkstra algorithms), Routing Information Protocol (RIP), Open Shortest Path First (OSPF), Interior Gateway Routing Protocol (IGRP), Enhance Gateway Routing Protocol (EIGRP), and Border Gateway Protocol (BGP).
ENPM696
(Perm Req)
Reverse Software Engineering
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: ENPM691 and CMSC106; or permission of instructor. And permission of ENGR-CDL-Office of Advanced Engineering Education.
Credit only granted for: ENPM808F or ENPM696.
Formerly: ENPM808F.
An in-depth understanding of software reverse engineering concepts and hands-on training with reverse engineering tools, including disassemblers, decompilers, and code analyzers. Students will become familiar with both low-level software and the x86 instruction set through binary reversing sessions. This course also provides insights into many subjects such as system security, source code analysis, software design, and program understanding that will be beneficial in a variety of fields.
ENPM808
(Perm Req)
Advanced Topics in Engineering
Credits: 1 - 3
Grad Meth: Reg, Aud
ENPM808W
Advanced Topics in Engineering; Data Science
Credits: 3
Grad Meth: Reg, Aud
ENPM808X
(Perm Req)
Advanced Topics in Engineering; Software Development for Robotics
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: ENPM809Y or equivalent
ENPM809A
Special Topics in Engineering; Applied Cryptography
Credits: 3
Grad Meth: Reg, Aud
ENPM809F
Special Topics in Engineering; Internet of Things
Credits: 3
Grad Meth: Reg, Aud
ENPM809N
Special Topics in Engineering; Data Mining
Credits: 3
Grad Meth: Reg, Aud
ENPM809Q
Special Topics in Engineering; Penetration Testing
Credits: 3
Grad Meth: Reg, Aud
ENPM809V
Special Topics in Engineering; Bitcoin and Cryptocurrency Technologies
Credits: 3
Grad Meth: Reg, Aud
ENPM809Y
Special Topics in Engineering; Introductory Robot Programming
Credits: 3
Grad Meth: Reg, Aud