Course Descriptions

For program contact
information, click here.

The courses that form our computer engineering program are offered via the Electrical Engineering Department and the The Department of Computer Science.

Computer Science

CSc 10200: Introduction to Computing
The structure and operation of a computer; concepts and properties of an algorithm and a programming language. Introduction to procedural programming in a modern programming language, such as C++. The main theme is that programs can be reliably designed, proven, and refined if one pays careful attention to their underlying logic, and the emphasis of the course is on the logical evolution of working programs from specifications. Students are introduced to logic-based programming methodologies which are at once powerful and practical. Prereq.: Math 20100 (or 20102) .
2 class, 2 rec. hr./wk.; 3 cr.

CSc 10400: Discrete Mathematical Structures
Introduction to the mathematics fundamental to all phases of computer science, from the formulation of problems to the understanding of their underlying structure, to the comparative analysis of the complexity of algorithms that can be used to solve these problems. The course introduces combinatorics, first-order logic, induction, set theory, relations and functions, graphs, trees, and number theory. Prereq: Math 20100 (min. C grade).
3 hr./wk.; 3 cr.

CSc 21000: Computers and Assembly Language Programming
Computer structure, machine representation of data, addressing and indexing, computation and control instructions, assembly language and assemblers; procedures (subroutines) and data segments, linkages and subroutine calling conventions, loaders; practical use of an assembly language for computer implementation of illustrative examples. Prereq.: CSc 10200 .
3 hr/wk.; 3 cr.

CSc 21200: Data Structures
Extension of the knowledge of algorithm design and programming gained in CSc 10200 with continued emphasis on the logic underlying the transition from specification to program. Particular attention is paid to issues arising in the implementation of larger programs: introduction of data structures and data abstraction; the basics of object-oriented programming. Introduction of recursion as a design tool. Introduction of complexity analysis. Stacks, queues, linked lists, trees, and graphs. Prereq.: CSc 10200  and 10400 .
2 class, 2 rec. hr./wk.; 3 cr.

CSc 22000: Algorithms
Measuring algorithmic complexity (O-Notation); searching and sorting algorithms and their complexity; tree and graph algorithms and their complexity; classes of algorithms, such as divide-and-conquer, backtracking, greedy, probabilistic, etc. Computational complexity; the classes P and NP. Prereq.: CSc 21200 and [CSc 21700  or EE 31100].
3 hr./wk.; 3 cr.

CSc 22100: Software Design Laboratory
Object-oriented programming and design. Encapsulation, inheritance, and polymorphism are stressed. Event-driven programming. Significant programming projects, including team projects. Programs are written in Java. Prereq.: CSc 21200.
3 hr./wk.; 3 cr.

CSc 30100: Numerical Issues in Scientific Programming
Numerical issues: roundoff error, truncation error, overflow and underflow errors. Numerical integration; solution of simultaneous equations; curve fitting. A thorough introduction to scientific programming, using a modern version of the Fortran or Matlab language. Written reports and oral presentation of projects. Prereq.: CSc 21700,  CSc 22000, Math 34600 .
3 hr./wk.; 3 cr.

CSc 30400:Introduction to Theoretical Computer Science
Finite state automata, pushdown automata, Turing Machines, and the languages they can recognize. Church's Thesis. Computability. The classes P and NP; NP-complete problems and intractable problems. Prereq: CSc 10400
3 hr./wk/; 3cr.

CSc 31100: XML Technologies
XML in industry. HTML and XML; XML publishing and document management; creating and editing XML documents; XML content models. Data Type Definition (DTD) and validation of XML documents. XML schemas, XML schema modeling, namespaces, and object oriented schemas. XML schemas and relational databases. XSLT (Extensible Stylesheet Language Transformation) and XPATH. SOAP and WSDL. XSL:OF, for creating pdf and other common document formats from XML content. Prereq.: CSc 22100.
3 hr./wk.;3 cr.

CSc 31800: Internet Programming
This course provides advanced CSc/Engineering majors with an understanding of Web-based application development. Prereq.: CSc 22100 or EE25900.
3 hr./wk.; 3 cr.

CSc 32200: Software Engineering
The software development life cycle from feasibility study to turnover to client. Documentation of design, program, and training materials. Rapid prototyping languages. Software development management: team roles and organization, the version control problem, maintenance issues. Use of CASE tools emphasized and illustrated in projects. Written reports and oral presentation of projects. Prereq.: Eng 21007, CSc 22000, CSc 22100.
3 class, 2 lab hr./wk.; 4 cr.

CSc 33200: Operating Systems
Overview of computer organization. Interrupts. Operating systems objectives and functions. Hardware protection mechanisms, dual mode operation. System calls. The evolution of operating systems. Process representation and control. Uniprocessor scheduling. Process synchronization: critical section problem, synchronization mechanisms, algorithms, language constructs, classical synchronization problems: issues of safety, liveness, and fairness. Deadlocks. Memory management and virtual memory. File management. I/O management and disk scheduling. Prereq.: CSc 22000.
3 hr./wk.; 3 cr.

CSc 33500: Programming Language Paradigms
Aspects of the design and implementation of functional, imperative, logic and object-oriented programming languages, presented via a sequence of interpreters. Topics include abstraction, parameter passing, type checking, inheritance, and continuations. Substantial programming assignments. Prereq.: CSc 22000, CSc 22100.
3 hr./wk.; 3 cr.

CSc 33600: Introduction to Database Systems
An introduction to database architecture. Levels of abstraction in a database system; physical database organization: abstract data models; relational databases and their query languages. Database design assignments. Prereq.:  CSc 22100.
3 hr./wk.; 3 cr.

CSc 34200: Computer Organization
This course provides computer science and computer engineering students with an in-depth look at computer architecture and the hardware/software interface.The major topics are: computer abstractions and technology; the role of performance and measuring performance; SPEC. computer arithmetic; machine language: a comparative analysis of instruction sets of current processors using the debuggers, simulators and by the partial reverse engineering of executables. The processor: datapath and control; RISC versus CISC; design, implementation (using VHDL), and verification (in simulation) of a simplified RISC processor using CAD tools. Enhancing performance with pipelining. Memory hierarchy, cache, virtual memory, performance issues. Interfacing processors and peripherals; PCI chipset. Overview of multiprocessors, grid computing. Prereq.: CSc 21000; coreq.: CSc 34300.
3 hr./wk.; 3 cr.

CSc 34300: Computer Organization Laboratory Introduction to FPLD technology, logic synthesis, and rapid prototyping of digital systems using commericial CAD tools. Topics:Programmable Logic Technology. Sequential Design and Hierarchy. Synthesis of Digital Hardware using VHDL. State Machine Design, CPU Controller. A Simple Processor Design. Video Graphics Adapter (VGA) video display generation. Design PS/2 Keyboard interface. Design of PS/2 Mouse interface. Synthesis of a RISC processor as covered in CSc 34200. Students are required to prepare written reports and demonstrate their design. Coreq.: CSc 34200.
3 hr./wk.; 1 cr.

CSc 37500: Social Issues in Computing
A systematic and comprehensive overview of the social implications of computers. Public policy questions and the responsibility of computer professionals will be stressed. Topics include computers in the economy, in politics and government, in social institutions and in contemporary culture. Prereq.: at least sophomore standing.
3 hr./wk.; 3 cr.

CSc 41200: Computer Networks
Layer approach to understanding networks using the ISO model: physical layer, data link layer, network layer, and, as time permits, the transport, session, presentation, and application layers. Prereq.: CSc 33200.
3 hr./wk.; 3 cr.

CSc 42000: Compiler Construction
Formal description of programming languages and techniques used in their compilation. Study of syntax, semantics, ambiguities, procedures replication, iteration, and recursion in these languages. Syntactic decomposition and the theory of compilers that are syntax-directed or recursively controlled. Prereq.: CSc 30400.
3 hr./wk.; 3 cr.

CSc 42200: Computability
Sheperdson-Sturgis machines. Elements of recursive function theory. The equivalence of the class of computable and recursive functions. Church’s thesis; other models of computation: Post machines, Turing machines, semi-Thue systems, etc. Unsolvable problems and introduction to their classification. Subrecursive formalism. Prereq.: CSc 22000, 30400.
3 hr./wk.; 3 cr.

CSc 42800: Formal Languages and Automata
Classes of languages; their description in terms of grammars and their recognition by automata. The Chomsky hierarchy; regular, context-free, context-sensitive and recursively enumerable languages. Application to parsing and compiler construction. Prereq.: CSc 30400.
3 hr./wk.; 3 cr.

CSc 43000: Distributed Computing
Basic model of distributed computing. Asynchronous and synchronous message passing. Algorithms for distributed termination detection and their correctness proofs. The correctness requirements of safety, liveness, and fairness in distributed computations. Synchronization algorithms. Communicating Sequential Processes. Higher level language constructs for synchronization algorithms. Verification methods. Several seemingly correct but actually incorrect algorithms will be shown for the above problems to appreciate the subtle correctness problems in distributed algorithms. Prereq.: CSc 33200.
3 hr./wk.; 3 cr.

CSc 43200: Parallel Processing
Models of computation, such as SISD, MISD, MIMD and SIMD. Algorithmic complexity. Parallel approaches to sorting, searching, and related problems. Combinatorial and numerical problems. Applications to graph theory, decision theory, and optimization. Prereq.:CSc 33200.
3 hr./wk.; 3 cr.

CSc 43500: Concurrency in Operating Systems
Mutual exclusion-software and hardware approaches. The correctness requirements of safety, liveness, and fairness. Semaphores, monitors and other concurrent programming constructs. Classical synchronization problems. Axiomatic verification of concurrent algorithms. Models of distributed computation. Distributed termination detection. Time clocks, and ordering of events. Distributed Mutual Exclusion. Deadlocks in distributed systems. Prereq.: CSc 33200.
3 hr./wk.; 3 cr.

CSc 43800: Real-Time Computing Systems
Operating systems and architectural concepts of real-time systems. Review of I/O programming and basic machine language programming. Interrupt processes. Coding of specific device drivers using absolute addressing status registers, command signals, buffering. Timing considerations and applications. Concurrent processes, wait-send phenomena, and the use of semaphores. Pre- or coreq.: CSc 34200.
3 hr./wk.; 3 cr.

CSc 44000: Computational Methods in Numerical Analysis
Introduction to numerical algorithms for scientific computation. Basic concepts of numerical error. Interpolation, quadrature, solution of linear systems of equations, non-linear equations, ordinary differential equations. Some discussion of partial differential equations and numerical methods of solving them. Computer implementation aspects. Prereq.: CSc 30100.
3 hr./wk.; 3 cr.

CSc 44200: Systems Simulation
Simulation of dynamic stochastic systems using models involving numerical and logical processes. Modeling concepts, description in terms of entities, attributes, and activities, time flow mechanisms, queues, event-oriented vs. particle-oriented models. Generation of stochastic variates, collection and evaluation of statistics. Simulation languages. Computer projects using a general purpose language (e.g. Fortran or Matlab) and at least one simulation language (e.g. GPSS) will be assigned. Prereq.:  CSc 30100.
3 hr./wk.; 3 cr.

CSc 44600: Mathematical Optimization Techniques
Maximization and minimization of functions of several variables, with and without constraints. Convex sets and functions, linear and dynamic programming, network flows. Prereq.:  CSc 30100.
3 hr./wk.; 3 cr.

CSc 44800: Artificial Intelligence
State-space and problem-induction representations of problems. Heuristic methods. Mechanical theorem proving. Application of these techniques to artificial intelligence problems. Prereq.: CSc 30400.
3 hr./wk.; 3 cr.

CSc 45000: Combinatorics and Graph Theory
An introduction to combinatorial analysis and graph theory. Sample topics: principle of inclusion and exclusion, recurrence relations, zero-one matrices, partitions, Polya’s Theorem, directed graphs, Prereq.: CSc 22000.
3 hr./wk.; 3 cr.

CSc 45400: Topics in Computer Architecture
Current developments in computer architecture chosen from: superscalar parallel/pipelined architectures: speculative execution; branch prediction; register renaming techniques. Students develop software for superscalar processors, both real and simulated. Prereq.: CSc 34200, 34300.
3 hr./wk.; 3 cr.

CSc 47000: Image Processing
An intensive introduction to digital image processing. Image enhancement, digital filtering theory. Fourier transforms, image reconstruction, resampling, antialiasing, geometric transformations, scanline algorithms, warping, and morphing. Emphasis is on computational techniques. Substantial programming assignments. Prereq.: CSc 30100 and CSc 32200.
3 hr./wk.; 3 cr.

CSc 47100: Computer Vision
An intensive introduction to algorithms that recover information from images, motion sequences, multiple views, and 3D volumes. Topics include edge and region recovery, perspective, texture, object recognition, and 3D shape from shading stereo motion. Substantial programming assignments. Prereq.: CSc 30100, CSc 32200.
3 hr./wk.; 3 cr.

CSc 47200: Computer Graphics
An intensive study of computer graphics. Graphics hardware, OpenGL API, raster scan conversion, clipping, geometric transformations, 3D viewing, visible surface determination, illumination, shading, splines, ray tracing, and animation. Substantial programming assignments. Prereq.: CSc 30100, CSc 32200.
3 hr./wk.; 3 cr.

CSc 47300: Web Site Design
The design and implementation of Web sites from a Human-Computer Interaction viewpoint, with emphasis on user testing. Navigation design. Accessibility by persons with limitations in vision or motor ability is stressed and must be addressed in the final project. Prereq.: CSc 22100.
4 hr./wk.; 3 cr.

CSc 47500: Windows Programming
Study of the Windows system. Architecture and the windows programming API. Covered topics include the OS kernel, Windows internals, evolution of Windows, Windows graphics model, Windows and ATM font systems, Unicode, messaging system, and the user application interface, e.g., menu dialogs, icons, child controls and custom controls. Substantial programming assignments. Strong knowledge of C required. Prereq.: CSc 22100.
3 hr./wk.; 3 cr.

CSc 47800: Topics in Multimedia and Image Processing
Topics of current interest in image processing, computer vision, computer graphics, and multimedia. Prereq.: CSc 47000..
3 hr./wk.; 3 cr.

CSc 47900: Digital Libraries
An introduction to the principles and practice of digital libraries. Algorithms are drawn from computer vision, pattern recognition, image processing, and document processing. Topics include low-level image processing, texture, color constancy, shape from X, supervised and unsupervised training, and implementation issues regarding content based multimedia database. Programming assignments will be implemented in C++ or Java. Prereq.: Math 34600 .
3 hr./wk.; 3 cr.

CSc 48000: Computer Security
An introduction to the principles and practices of computer security in various computing environments. Conventional encryption systems and classical cryptography. Confidentiality using conventional encryption. Public key cryptography and protocols for authentication and digital signatures. Recent cryptanalytic attacks on conventional and public key systems. Intruders, worms, viruses and trusted systems. Firewalls and internetwork security. A survey of applications and problems arising in contemporary computer security. Prereq.: CSc 22000, CSc 30400.
3 hr./wk.; 3 cr.

CSc 48600: Computational Complexity
An introduction to the performance and limitations of computer algorithms through a study of selected algorithms. Topics include primality testing and integer factorization, algorithms for integer programming and knapsack problems, reductions and NP-completeness, randomized algorithms, and experimental algorithms arising from new technologies such as molecular, neural, and quantum computing. Prereq.:CSc 21700 , CSc 30400.
3 hr./wk.; 3 cr.

CSc 51001-51004: Independent Study
Independent study and research under the supervision of a mentor. Prereq.: departmental approval.
Hours vary; 1-4 cr.

CSc 59866 andCSc 59867: Senior Project I & II
This is a two-semester capstone course. The student is required to complete a significant project in computer science or engineering under the mentorship of a faculty member. In addition to technical material required for successful completion of a specific project, topics include identification of a problem, background research, social, ethical and economic considerations, intellectual property and patents, and proposal writing, including methods of analysis and theoretical modeling . A detailed project proposal is formulated during the first semester, and the project is completed in the second semester. Each student is required to write an in-depth report, and to make an oral presentation to the faculty. Senior year students only, or permission of the department.
3 hr./wk.; and 3 design hr./wk.; 3 CR each semester for two consecutive semesters.

Electrical Engineering

EE 20500: Linear Systems Analysis I
First and second order circuits, Laplace Transform, s-domain circuit analysis, network functions. Fourier series and Fourier Transform. Parceval Theorem. Prereq.: Engr 10300, Engr 20400; pre- or coreq.: Math 39100 (min. C grade). 3 HR./WK.; 3 CR.

EE 21000: Switching Systems
Analysis and synthesis of combinatorial circuits. Karnaugh maps. Analysis and design of sequential circuits. Digital computer and industrial applications. Prereq.: Math 20200 (or Math 20202) (min. C grade). 3 HR./WK.; 3 CR.

EE 21200: Circuits and Systems
Analysis (for Computer Science students) Introduction to basic circuit analysis. Signal waveforms, capacitance and inductance, Laplace Transform, A-domain circuit analysis, network functions, frequency response, resonant circuits, Fourier series and transforms. Prereq.: Math 20300 (min. C grade), Phys 20700 (min. C grade). 3 HR./WK.; 4 CR.

EE 22100, EE 32200, EE 32300, EE 42400: Electrical Engineering Laboratory I, II, III
Experiments and design problems on material drawn from the electrical engineering curriculum. (ENGR 20400, EE 2100, EE 24100, EE34200). Test and measurement instruments, Virtual instruments and computer instrumentation, Electric and electronic circuits. Transient and frequency response, Logic circuits, Discrete circuits, Operational amplifiers. Prereq.: Engr 20400, EE 21000; 32200: prereq EE 22100, EE 24100; 32300: prereq EE 32200, EE 34200. 3 LAB HR./WK.; 1 CR.

EE 24100: Electronics I
Electronic devices and their use in analog circuits. Prereq.: Phys 20800 (min. C grade); pre- or coreq.: EE 20500 and EE 21000. 3 HR./WK.; 3 CR.

EE 25900: Programming for Electrical Engineering
Part I. UNIX and C: UNIX preliminaries, C program format, data types, conditional statements, formatted I/O, functions, arrays, structures and pointers.
Part II. Electrical Engineering Applications: Projects on numerical solutions of linear systems, numerical differentiation/integration, least square approximations, etc. Prereq.: CSc 10200, Engr 10300; pre- or coreq.: Math 39100 (min. C grade), Math 39200 (min. C grade). 4 HR./WK., 4 CR.

EE 30600: Linear Systems Analysis II
Discrete-time signals. Discrete-time systems. Linear, shift-invariant discrete-time systems. Convolution. The Z-transform. Transfer functions. The Fourier transform. Fourier analysis of discrete-time systems. Sampling in the time and frequency domains. Prereq.: Engr 20400; pre- or coreq.: EE 20500. 3 HR./WK.; 3 CR.

EE 31100: Probability and Statistics
Sample space and probability theory. Density and distribution functions of single and multiple discrete and continuous random variables. Functions of random variables. Expectation, variance and transforms. Independence, covariance and correlation. Central limit theorem, weak/strong law of large numbers. Introduction to Random Processes. Confidence intervals, hypothesis testing, simple linear regression techniques, chi-square minimization methods. Prereq.: Math 20300. 3 HR./WK.; 3 CR.

EE 31200: Communication Theory
Noise in amplitude and frequency modulation systems. Digital modulation techniques, baseband signal receiver, matched filter, probability of error. Prereq.: EE 31100. 3 HR./WK.; 3 CR.

EE 33000: Electromagnetics
Complex vectors. Maxwell’s Equations. Boundary conditions. Wave equation. Uniform plane waves. Polarization. Propagation in lossless and lossy media. Poyting Vector. Reflection and transmission of waves at normal and oblique incidence. Transmission lines (propagation, Smith Chart, transients). Topics in waves. Prereq.: Phys 20800, Math 39100 and 39200 (min. C grade). 3 HR./WK.; 3 CR.

EE 33300: Introduction to Antennas, Microwaves and Fiber Optics
Antennas, antenna arrays, and applications. Propagation in free space, Microwave waveguides and resonators. Fiber-optic wave guides. Wave optics. Light sources and detectors. Prereq.: EE 33000 (or 33100). 3 HR./WK.; 3 CR.

EE 33900: Semiconductor Materials and Devices
The crystal structure of solids. Introduction to quantum mechanics and quantum theory of solids. Charge carriers in semiconductors. Carrier transport phenomena. Carrier generation and recombination. Mathematical analysis of diffusion phenomena. Ambipolar transport. Surface effects. Basic structure of the pn junction. Prereq.: EE 33000 (or 33100). 3 HR./WK.; 3 CR.

EE 34200: Electronics II
Electronic devices and circuits. Feedback amplifiers, regulated power supplies, oscillators. Comparators and Schmitt triggers. Logic gates and logic families. Flip-flops. Semiconductor memories. A/D and D/A conversion. Timing circuits. Prereq.: EE 24100. 3 HR./WK.; 3 CR.

EE 35700: Electric Power Engineering
Analysis of magnetic circuits. Equivalent circuits and operations of power transformers, autotransformers, three-phase transformers. Basic principles of electromechanical energy conversion, single and double excitation. Elementary power systems and per-unit calculations. Power transmission, distribution, three-phase induction machines. Prereq.: EE 20500, EE 33000 (or 33100). 3 HR./WK.; 3 CR.

EE 37100: Linear Feedback Systems
Analysis of feedback systems including block diagrams, signal flow graphs, time domain specifications, Routh’s stability criterion, root locus, Bode and Nyquist diagrams, and state feedback. Prereq.: EE 20500. 3 HR./WK.; 3 CR.

EE 42100: Local Area Network Laboratory
Introduction to computer networks: local area network, wide-area network and interconnected network; packet switching and circuit switching. Design and simulation of various networks. Measurements and control of performance parameters such as throughput, delay and call blocking rate. Networks and services for simulations include datagram and virtual circuit (WAN), Ethernet and Token Bus (LAN). Protocol Analyzer for protocol simulation and monitoring. Pre- or coreq.: EE 46000. 3 LAB HR./WK.; 1 CR.

EE 42200: Analog Communication Laboratory
Analog communication systems, including frequency translation, AM signal generation and reaction, double and single sideband modulation, FM signal bandwidth, narrow and wide angle modulation, FM signal generation and reception, frequency division multiplexing, and noise in FM. Prereq.: EE 31200. 3 LAB HR./WK.; 1 CR.

EE 42500: Computer Engineering Laboratory
Introduction to the operation and applications of microcomputers and design experiments in computer interface engineering utilizing a microprocessor-based computer. Design projects include computer inputoutput device selection, program interrupt, on-line control, direct memory access, and circular input-output buffer. Prereq.: EE 44400 (or CSc 21000 and 34200). 3 LAB HR./WK.; 1 CR.

EE 42600: Control Laboratory
Control of an analog servomechanism including velocity feedback, system following error, speed control, 3-term control, and frequency response. Prereq.: EE 37100. 3 LAB HR./WK.; 1 CR.

EE 42700: Digital Systems Laboratory
Design of digital systems using integrated circuit modules. Combinational and sequential systems, arithmetic systems. Registers, counters, word generator, sequence detector, parity bit generator. Prereq.: EE 44400 (or CSc 21000 and 34200). 3 LAB HR./WK.; 1 CR.

EE 42800: Photonics Engineering Laboratory
Interferometers. Characteristics of CW laser. Diffraction through slits, gratings, pinholes, and sharp edges. Spatial filtering and holography. Radiometry and photometry. Polarization and wave plates. Pre- or coreq: EE 33000 (or 33100). 3 LAB HR./WK.; 1 CR.

EE 42900: Solid State Devices Laboratory
Designed to complement the lectures presented in EE 44100 through device testing and measurement. Observations of semiconductor materials properties through experiments involving the Hall effect, photo generation/recombination, and anisotropic etching. Semiconductor PN junctions, uni- and bipolar device characterization through C-V plotting, DC and AC measurements of devices in packages and on wafers and subsequent development of device model parameters. Optional special project opportunity. Laboratory notebook required. Pre- or coreq.: EE 44100. 3 LAB HR./WK.; 1 CR.

EE 43800: Management Concepts for Engineers
The principles and techniques of team management in a high-technology environment. Concepts in developing leadership and entrepreneurial skills as well as communication skills in a business context. A term paper will be required. Prereq.: at least upper junior status. 3 HR./WK.; 3 CR.

EE 44100: Electronic Devices and Semiconductor Materials
Fundamental properties of semiconductors. Device fabrication, the PN junction, metalsemiconductor junction, the bipolar transistor, the field effect transistor, the MOS transistor. Prereq.: EE 33900. 3 HR./WK.; 3 CR.

EE 44400: Digital Computer Systems
Digital system description. Algorithmic processor design. Organization of a simple digital computer. Control unit design, microprogramming. Elements of programming. General CPU, memory, and input/output organization. Microcomputer organization. Prereq: EE 21000, pre or coreq.: EE25900. 3 HR./WK.; 3 CR.

EE 45000: Microwave Networks
Waveguides and resonators; losses and mode analysis. Transmission line equivalent networks. Scattering matrix. Reactive waveguide elements. Techniques for dielectric and boundary perturbations. Strip line. Microwave filters and couplers. Periodic circuits and slow waveguides. Prereq.: EE 33200 (or 33300). 3 HR./WK.; 3 CR.

EE 45100: Communication Electronics
Components of end-to-end communications systems. Noise in circuits and systems. Behavior of wideband and tuned amplifiers; limits on small signal operation. Gain controlled amplifiers, limiters, frequency multipliers, oscillators, coupling networks. Nonlinear elements, distortion, amplitude, frequency, and phase modulators, transmitters and low-noise receivers. Prereq.: EE 31200. 3 HR./WK.; 3 CR.

EE 45200: Fiber Optic Communications
This course is intended to provide the basic materials for an introductory senior or first-year graduate course in the theory and application of optical fiber communication technology with emphasis on both digital and analog point-to-point veryhigh-bit-rate long haul optical transmission systems. Topics covered include: an overview of the fundamental components of advantages of optical fibers relative to other transmission media; basic laws and definitions of optics that are relevant to optical fibers; degradation of light signals arising from attenuation and distortion mechanisms; main devices encountered in a fiber optic system, light sources, light detectors. Analog and digital modulation formats at the transmitter: theory and design of receivers, noise and detection for optical fiber links; performance analysis and design of both digital and analog point-to-point very high bit-rate long-haul optical transmission systems. Prereq.: EE 31200, EE 33200 (or 33300), EE 44100. 3 HR./WK.; 3 CR.

EE 45300: Digital Signal Processing
Introduction to basic digital signal processing concepts; the finite Fourier transform, cyclic convolution, digital filters, Z-transform. Design of algorithms computing the finite Fourier transform and cyclic convulsion. Cooley-Tukey and Winograd algorithms. Prereq.: EE 30600. 3 HR./WK.; 3 CR.

EE 45400: Physical Electronics
Statistical distributions in physics. Metals. Band theory. Semiconductors. Phonons. Transport coefficients. Prereq.: EE 33900. 3 HR./WK.; 3 CR.

EE 45500: Elements of Power Systems
Analysis of transmission lines, transformers, and electric machines as the elements of power systems. Prereq.: EE 35700. 3 HR./WK.; 3 CR.

EE 45600: Elements of Control Theory
Design of classical and state space controllers for continuous time and sampled data systems. Lead, log, and lag-lead compensation. State feedback, separation theorem, reduced order estimators. Lead compensation using w-plane. Discrete equivalent state space models. Deadbeat response. Prereq.: EE 37100. 3 HR./WK.; 3 CR.

EE 45700: Digital Integrated Circuits
Design of logic circuits; TTL, MOS, ECL. Design of flip-flops and memories at the transistor level. Design of analog-to-digital and digital-to-analog converters, sample and hold circuits, and timing circuits. Interconnecting logic gates using transmission lines. Prereq.: EE 24100. 3 HR./WK.; 3 CR.

EE 45800: Introduction to Lasers
Resonant optical cavities. Interaction of radiation with matter. Gas, solid-state, and injection lasers. Light modulation (internal and external). Prereq.: EE 33200 (or 33300), EE 33900. 3 HR./WK.; 3 CR.

EE 45900: Microprocessors
Introduction to stored program computers and microcomputers. Review of number systems, binary arithmetic, register transfer language, and micro-operations. Digital computer and microcomputer functional elements, input-output devices, system organization and control. Accumulatorbased processors, general register processors. Micro-processor case study. LSI peripheral support chips. Prereq.: EE 44400. 3 HR./WK.; 3 CR.

EE 46000: Computer Communication Systems
Queuing theory, Markovian networks, packet, message and circuit switching networks, assignment of link capacities and flows, routing algorithms, stability, flow control and error control, packet radio networks, multiple access schemes and network protocols. Prereq.: EE 31200. 3 HR./WK.; 3 CR.

EE 46200: Photonic Engineering
Study of basic optics and computer-aided design for optics. Application of study to solve engineering problems and design photonic devices. Topics will be selected from: ray tracing; lens design; interferometry; analysis of optical systems; spectroscopic techniques; Fourier optics; fibers, Electrical Engineering 236 waveguides, integrated optics; video disk; optical detectors. Prereq.: EE 33200 (or 33300).3 HR./WK.; 3 CR.

EE 46300: Wireless Communications
Introduction to wireless/mobile communications systems. Cellular systems concept: frequency reuse, co-channel and adjacent channel interference, capacity improvement. Wireless channel characteristics: long-term fading, short-term fading. Diversity techniques: DPSK, QPSK, 4QPOSK, QAM, GMSK. Multiple access techniques for wireless communications: FDMA, TDMA, CDMA. Personal communications services. Current standards of PCS and cellular systems. Prereq.: EE 31200. 3 HR./WK.; 3 CR.

EE 51000: Independent Study
The student pursues a program of independent study under the direction of a faculty mentor. Open only to students who have shown exceptional ability (minimum GPA 3.5). Students desiring to register in this course should apply by Dec. 1 for the spring term and by May 1 for the fall term. A final report is required. Prereq.: departmental approval. 3 HR./WK.; 3 CR.

EE 59868, 59869: Capstone Design for Computer Engineering
This is a two-semester capstone design course. The student is required to design and implement a solution to an engineering problem. Topics include introduction to engineering design, identification of a problem, background research, social, environmental, ethical and economic considerations, intellectual property and patents and proposal writing, including methods of engineering analysis and theoretical modeling. A detailed concept and design proposal is completed during the first semester and the implementation phase may also begin. A functional physical prototype or computer model is completed and tested in the second semester. Each student is required to write an in depth engineering report and to make an oral presentation to the faculty. Prereq.: Senior year students status, EE 32300. 3 HR./WK. AND 3 DESIGN HR./WK; 3 CR. EACH SEMESTER.

Engineering Courses

ENGR 10100: Engineering Design I
An introduction to engineering practice through hands-on investigations, computer applications, design projects and student presentations in the fields of structures and robotics. In the first segment of the course, the behavior of materials and structural members is explored. Concepts of structural safety and equilibrium are developed and students are introduced to structural analysis of a steel truss bridge and building a model bridge. The second portion of the course focuses on basic mechanisms, kinematics, feedback, and computer control by considering the operation of several robotic devices. Students then engage in a robotic design which may include software or hardware or both. All investigations and design projects are performed in groups and presented in oral and/or written form. Computers are used for documentation, data analysis and robot control. Pre- or coreq.: Math 19500 (min. C grade). Open only to transfer students who have not completed Math 20200 (or 20202). 3 HR./WK.; 1 CR.

ENGR 10200: Engineering Design II
This course uses the same approach as Engineering Design I and provides elementary analysis design experiences in the areas of thermodynamics and electronics. Students explore the concepts of energy and information through experiments with modern engineering test equipment. Based on these concepts, they are then encouraged to create and evaluate their own designs in a group setting. Computer skills and analytical tools are introduced as needed. Course requirements include oral and written presentations of original engineering design. Project topics include digital logic circuits, analog information processing, calorimetry and distillation. Pre- or coreq.: Math 19500 (min. C grade). Open only to transfer students who have not completed Math 20200 (or 20202). 3 HR./WK.; 2 CR.. Prereq.: Math 20100 (or 20102) (min. C grade), Engr 10100. 3 HR./WK.; 2 CR.

ENGR 10300: Computer-Aided Analysis Tools for Engineers
An introduction to computer aided analysis techniques necessary for the study of electrical engineering and the design of electrical systems. Concepts introduced through short lectures are examined thoroughly during computer workstation-based workshops. Among the topics studied are: functions of real variables and their graphs, complex numbers and phasors, linear algebra, difference equations with applications to signal processing, and an introduction to system analysis. Prereq.: Math 20100 (or 20102) (min. C grade), Engr 10100. 3 HR./WK.; 2 CR.

ENGR 20400: Electrical Circuits
Basic circuit laws. Methods of circuit analysis. Circuit theorems. Operational amplifiers. Capacitatiors and inductors. Sinusoids and phasors. Sinusoidal steady state analysis. Frequency response. Prereq.: Phys 20700 (min. C grade); pre- or coreq.: Math 20300 (min. C grade). 3 HR./WK.; 3 CR.

ENGR 23000: Thermodynamics
Introductory concepts and definitions. Zeroth Law and absolute temperature. Work and Heat. First Law and applications. Second Law, Carnot theorem, entropy, thermodynamic state variables and functions and reversibility. Power and refrigeration cycles. Prereq.: Chem 10300 (or 10301) (min. C grade). Pre- or coreq.: Phys 20800 (min. C grade), Math 20300 (min. C grade). 3 HR./WK.; 3 CR.

ENGR 27600: Engineering Economics
History of economic thought from the engineering point of view of modeling and control: Adam Smith to Keynes to Krugman and Thurow. Nature of the corporation. Balance sheet analysis. Time value of money: simple and compounded interest, annuities and loans, cash flow, profitability analysis and DCF rate of return. Cost estimation, cost benefit analysis. Risk analysis: forecasting, cash flow, simple probability theory, decision trees. Prereq.: Math 20102 (20100). (min. C grade). 3 HR./WK.; 3 CR.

ENGR 30000: Social, Economic and Cultural Impact of Biomedical Technology
This course emphasizes community health care concerns in an urban environment. It has two central themes: (a) assessment of biomedical technology in the context of urban health needs, and (b) social and cultural impact of biomedical technology. Prereq.: Soc 10500 or Anth 10100 or Eco 10000 or Phil 34903. 3 HR./WK.; 3 CR.

ENGR 30100: Introduction to Satellite Remote Sensing and Imaging
This introductory remote sensing course covers different environments where remote sensing can be applied, including discussion about a variety of space platforms and selected sensors that orbit the Earth. Emphasis is placed on the application of remote sensing on the interactions between the hydrosphere, biosphere, geosphere and atmosphere as well as bioproductivity and geophysical/geochemical processes in the oceans. 3HR./WK.; 3 CR.