| CSCI-101 INTRODUCTION TO COMPUTER SCIENCE (I, II, S) |
| An introductory course to the building blocks of Computer Science. Topics include conventional computer hardware, data representation, the role of operating systems and networks in modern computing, algorithm design, large databases, SQL, and security. A popular procedural programming language will be learned by students and programming assignments will explore ideas in algorithm runtimes, computer simulation, computational techniques in optimization problems, client-server communications, encryption, and database queries. |
| Prerequisite: none. |
| 3 hours lecture; 3 semester hours. |
| CSCI-198 SPECIAL TOPICS (I, II, S) |
| Pilot course or special topics course. Topics chosen from special interests of instructor(s) and student(s). Usually the course is offered only once. |
| Prerequisite: Consent of Instructor. |
| Variable credit: 1 to 6 semester hours. Repeatable for credit under different titles. |
| CSCI-199 INDEPENDENT STUDY (I, II, S) |
| Individual research or special problem projects supervised by a faculty member; also, when a student and instructor agree on a subject matter, content, and credit hours. |
| Prerequisite: Independent Study form must be completed and submitted to the Registrar. |
| Variable Credit: 1 to 6 credit hours. Repeatable for credit. |
| CSCI-260 FORTRAN PROGRAMMING (I, II) |
| Computer programming in Fortran90/95 with applications to science and engineering. Program design and structure, problem analysis, debugging, program testing. Language skills: arithmetic, input/output, branching and looping, functions, arrays, data types. Introduction to operating systems. |
| Prerequisite: none. |
| 2 hours lecture; 2 semester hours. |
| CSCI-261 PROGRAMMING CONCEPTS (I, II, S) |
| Computer programming in a contemporary language such as C++ or Java, using software engineering techniques. Problem solving, program design, documentation, debugging practices. Language skills: input/output, control, repetition, functions, files, classes and abstract data types, arrays, and pointers. Introduction to operating systems and object-oriented programming. Application to problems in science and engineering. |
| Prerequisite: none. |
| 3 hours lecture; 3 semester hours. |
| CSCI-262 DATA STRUCTURES (I, II, S) |
| Defining and using data structures such as linked lists, stacks, queues, binary trees, binary heap, hash tables. Introduction to algorithm analysis, with emphasis on sorting and search routines. Language skills: abstract data types, templates and inheritance. |
| Prerequisite: CSCI261. |
| 3 hours lecture; 3 semester hours. |
| CSCI-298 SPECIAL TOPICS (I, II, S) |
| Selected topics chosen from special interests of instructor and students. |
| Prerequisite: Consent of Department Head. |
| 1 to 3 semester hours. Repeatable for credit under different titles. |
| CSCI-299 INDEPENDENT STUDY (I, II, S) |
| Individual research or special problem projects supervised by a faculty member; also, when a student and instructor agree on a subject matter, content, and credit hours. |
| Prerequisite: Independent Study form must be completed and submitted to the Registrar. |
| Variable Credit: 1 to 6 credit hours. Repeatable for credit. |
| CSCI-306 SOFTWARE ENGINEERING (I, II) |
| Introduction to the software life cycle, including planning, design, implementation and testing. Topics include top down program design, problem decomposition, iterative refinement, program modularity and abstract data types. Course work emphasizes good programming practices via models, metrics and documents created and used throughout the software engineering process. |
| Prerequisite: CSCI262. |
| 3 hours lecture; 3 semester hours. |
| CSCI-340 COOPERATIVE EDUCATION (I, II, S) |
| Supervised, full-time engineering-related employment for a continuous six-month period (or its equivalent) in which specific educational objectives are achieved. |
| Prerequisite: Second semester sophomore status and a cumulative grade point average of at least 2.00. |
| 0 to 3 semester hours. |
| Note: Cooperative Education credit does not count toward graduation except under special conditions. |
| CSCI-341 COMPUTER ORGANIZATION (I, II) |
| Covers the basic concepts of computer architecture and organization. Topics include machine level instructions and operating system calls used to write programs in assembly language. This course provides insight into the way computers operate at the machine level. |
| Prerequisite: CSCI261. |
| 3 hours lecture; 3 semester hours. |
| CSCI-358 DISCRETE MATHEMATICS (I, II) |
| This course is an introductory course in discrete mathematics and algebraic structures. Topics include: formal logic; proofs, recursion, analysis of algorithms; sets and combinatorics; relations, functions, and matrices; Boolean algebra and computer logic; trees, graphs, finite-state machines and regular languages. |
| Prerequisite: MATH213, MATH223 or MATH224. |
| 3 hours lecture; 3 semester hours. |
| CSCI-370 FIELD COURSE (S) |
| This is the capstone course in the Computer Science Option. Students apply their course work knowledge to a challenging applied problem in mathematics or computer science. In this course they analyze, modify and solve a significant applied problem. The students work in groups of three or four for a period of six forty-hour weeks. By the end of the field session they must have a finished product with appropriate supporting documents. At a minimum CS students should have completed coursework through CSCI306. |
| Prerequisite: Consent of Instructor. |
| 6-week summer session; 6 semester hours. |
| Note: At a minimum CS students should have completed coursework through CSCI-306. This is a writing intensive course (WI). |
| CSCI-398 SPECIAL TOPICS (I, II, S) |
| Selected topics chosen from special interests of instructor and students. |
| Prerequisite: Consent of Department Head. |
| 1 to 3 semester hours. Repeatable for credit under different titles. |
| CSCI-399 INDEPENDENT STUDY (I, II, S) |
| Individual research or special problem projects supervised by a faculty member given agreement on a subject matter, content, and credit hours. |
| Prerequisite: Independent Study form must be completed and submitted to the Registrar. |
| Variable Credit: 1 to 6 credit hours. Repeatable for credit. |
| CSCI-400 PRINCIPLES OF PROGRAMMING LANGUAGES (I, II) |
| Study of the principles relating to design, evaluation and implementation of programming languages of historical and technical interest, considered as individual entities and with respect to their relationships to other languages. Topics discussed for each language include: history, design, structural organization, data structures, name structures, control structures, syntactic structures, and implementation of issues. The primary languages discussed are FORTRAN, PASCAL, LISP, ADA, C/C++, JAVA, PROLOG, PERL. |
| Prerequisite: CSCI262 and CSCI306 or knowledge of JAVA. |
| 3 hours lecture; 3 semester hours. |
| CSCI-403 DATA BASE MANAGEMENT (I) |
| Design and evaluation of information storage and retrieval systems, including defining and building a data base and producing the necessary queries for access to the stored information. Generalized data base management systems, query languages, and data storage facilities. General organization of files including lists, inverted lists and trees. System security and system recovery, and system definition. Interfacing host language to data base systems. |
| Prerequisite: CSCI262. |
| 3 hours lecture; 3 semester hours. |
| CSCI-404 ARTIFICIAL INTELLIGENCE (I) |
| General investigation of the Artificial Intelligence field. During the first part of the course a working knowledge of the LISP programming language is developed. Several methods used in artificial intelligence such as search strategies, knowledge representation, logic and probabilistic reasoning are developed and applied to problems. Learning is discussed and selected applications presented. |
| Prerequisite: CSCI262, MATH358. |
| 3 hours lecture; 3 semester hours. |
| CSCI-406 ALGORITHMS (I, II) |
| Divide-and-conquer: splitting problems into subproblems of a finite number. Greedy: considering each problem piece one at a time for optimality. Dynamic programming: considering a sequence of decisions in problem solution. Searches and traversals: determination of the vertex in the given data set that satisfies a given property. Techniques of backtracking, branch-and-bound techniques, techniques in lower bound theory. |
| Prerequisite: CSCI262, MATH213, MATH223 or MATH224, MATH/CSCI358. |
| 3 hours lecture; 3 semester hours. |
| CSCI-407 INTRODUCTION TO SCIENTIFIC COMPUTING (I, II) |
| Round-off error in floating point arithmetic, conditioning and stability, solution techniques (Gaussian elimination, LU factorization, iterative methods) of linear algebraic systems, curve and surface fitting by the method of least-squares, zeros of nonlinear equations and systems by iterative methods, polynomial interpolation and cubic splines, numerical integration by adaptive quadrature and multivariate quadrature, numerical methods for initial value problems in ordinary differential equations. Emphasis is on problem solving using efficient numerical methods in scientific computing. |
| Prerequisite: MATH225 or MATH235 and knowledge of computer programming. |
| 3 hours lecture; 3 semester hours. |
| Note: Though cross-listed, it is important that math majors take MATH-407 and computer science majors take CSCI-407. |
| CSCI-410 ELEMENTS OF COMPUTING SYSTEMS (II) |
| This comprehensive course will help students consolidate their understanding of all fundamental computer science concepts. Topics include symbolic communication, Boolean logic, binary systems, logic gates, computer architecture, assembly language, assembler construction, virtual machines, object-oriented programming languages, software engineering, compilers, language design, and operating systems. Using a hardware simulator and a programming language of their choice, students construct an entire modern computer from the ground up, resulting in an intimate understanding of how each component works. |
| Prerequisite: CSCI261, CSCI341. |
| 3 hours lecture; 3 semester hours. |
| CSCI-422 USER INTERFACES (I) |
| User Interface Design is a course for programmers who want to learn how to create more effective software. This objective will be achieved by studying principles and patterns of interaction design, critiquing existing software using criteria presented in the textbook, and researching and analyzing the capabilities of various software development tools. Students will also learn a variety of techniques to guide the software design process, including Goal-Directed Design, Cognitive Walkthrough, Talk-aloud and others. |
| Prerequisite: CSCI262. |
| 3 hours lecture; 3 semester hours. |
| CSCI-440 PARALLEL COMPUTING FOR SCIENTISTS AND ENGINEERS (II) |
| This course is designed to introduce the field of parallel computing to all scientists and engineers. The students will be taught how to solve scientific problems. They will be introduced to various software and hardware issues related to high performance computing. |
| Prerequisite: Programming experience in C++, consent of instructor. |
| 3 hours lecture; 3 semester hours. |
| CSCI-441 COMPUTER GRAPHICS (I) |
| Data structures suitable for the representation of structures, maps, three-dimensional plots. Algorithms required for windowing, color plots, hidden surface and line, perspective drawings. Survey of graphics software and hardware systems. |
| Prerequisite: CSCI262. |
| 3 hours lecture, 3 semester hours. |
| CSCI-442 OPERATING SYSTEMS (I, II) |
| Covers the basic concepts and functionality of batch, timesharing and single-user operating system components, file systems, processes, protection and scheduling. Representative operating systems are studied in detail. Actual operating system components are programmed on a representative processor. This course provides insight into the internal structure of operating systems; emphasis is on concepts and techniques which are valid for all computers. |
| Prerequisite: CSCI262, CSCI341. |
| 3 hours lecture; 3 semester hours. |
| CSCI-443 ADVANCED PROGRAMMING CONCEPTS USING JAVA. (I, II) |
| This course will quickly review programming constructs using the syntax and semantics of the Java programming language. It will compare the constructs of Java with other languages and discuss program design and implementation. Object oriented programming concepts will be reviewed and applications, applets, servlets, graphical user interfaces, threading, exception handling, JDBC, and networking as implemented in Java will be discussed. The basics of the Java Virtual Machine will be presented. |
| Prerequisite: CSCI261, CSCI262. |
| 3 hours lecture, 3 semester hours. |
| CSCI-444 ADVANCED COMPUTER GRAPHICS (II) |
| This is an advanced computer graphics course, focusing on modern rendering and geometric modeling techniques. Students will learn a variety of mathematical and algorithmic techniques that can be used to develop high-quality computer graphics software. In particular, the course will cover global illumination, GPU programming, geometry acquisition and processing, point based graphics and non-photorealistic rendering. |
| Prerequisite: Basic understanding of computer graphics and graphics-related programming, for example CSCI441. |
| 3 hours lecture, 3 semester hours. |
| CSCI-445 WEB PROGRAMMING (I) |
| Web Programming is a course for programmers who want to develop Web-based applications. It covers basic web site design extended by client-side and server-side programming. Students should know the elements of HTML and Web architecture and be able to program in a high level language such as C++ or Java. The course builds on this knowledge by presenting topics such as Cascading Style Sheets, JavaScript, PERL and database connectivity that will allow the students to develop dynamic Web applications. |
| Prerequisite: Fluency in a high level computer language/consent of instructor. |
| 3 hours lecture, 3 semester hours. |
| CSCI-446 WEB APPLICATIONS (II) |
| Web Applications is a course for programmers who want to learn how to create effective, dynamic web pages. At the completion of this course, students should know Hypertext Markup Language (HTML), Cascading Style Sheets (CSS), JavaScript and JavaScript Object Notation (JSON), Ajax, Ruby and Flash. Additionally students should have considered a variety of issues related to web site design, including but not limited to web security, web server performance and content management. |
| Prerequisite: CSCI262, CSCI445. |
| 3 hours lecture, 3 semester hours. |
| CSCI-447 SCIENTIFIC VISUALIZATION (I) |
| Scientific visualization uses computer graphics to create visual images which aid in understanding of complex, often massive numerical representation of scientific concepts or results. The main focus of this course is on modern visualization techniques applicable to spatial data such as scalar, vector and tensor fields. In particular, the course will cover volume rendering, texture based methods for vector and tensor field visualization, and scalar and vector field topology. |
| Prerequisite: Basic understanding of computer graphics and algorithms. |
| 3 hours lecture, 3 semester hours. |
| CSCI-471 COMPUTER NETWORKS I (I) |
| This introduction to computer networks covers the fundamentals of computer communications, using TCP/IP standardized protocols as the main case study. The application layer and transport layer of communication protocols will be covered in depth. Detailed topics include application layer protocols (HTTP, FTP, SMTP, and DNS), reliable data transfer, connection management, and congestion control. In addition, students will build a computer network from scratch and program client/server network applications. |
| Prerequisite: CSCI442 or consent of instructor. |
| 3 hours lecture, 3 semester hours. |
| CSCI-474 INTRODUCTION TO CRYPTOGRAPHY (II) |
| This course is primarily oriented towards the mathematical aspects of cryptography, but is also closely related to practical and theoretical issues of computer security. The course provides mathematical background required for cryptography including relevant aspects of number theory and mathematical statistics. The following aspects of cryptography will be covered: symmetric and asymmetric encryption, computational number theory, quantum encryption, RSA and discrete log systems, SHA, steganography, chaotic and pseudo-random sequences, message authentication, digital signatures, key distribution and key management, and block ciphers. Many practical approaches and most commonly used techniques will be considered and illustrated with real-life examples. |
| Prerequisite: CSCI 262, MATH 334/335, MATH 358. |
| 3 credit hours |
| CSCI-475 INFORMATION SECURITY AND PRIVACY (I) |
| Information Security and Privacy provides a hands-on introduction to the principles and best practices in information and computer security. Lecture topics will include basic components of information security including threat assessment and mitigation, policy development, and the legal and political dimensions of information security. |
| Prerequisite: CSCI 442 or consent of instructor. |
| 3 hours lecture; 3 semester hours. |
| CSCI-491 UNDERGRADUATE RESEARCH (I) |
| Individual investigation under the direction of a department faculty member. Written report required for credit. |
| Prerequisite: Consent of Department Head. |
| Variable - 1 to 3 semester hours. Repeatable for credit to a maximum of 12 hours. |
| CSCI-492 UNDERGRADUATE RESEARCH (II) |
| Individual investigation under the direction of a department faculty member. Written report required for credit. |
| Prerequisite: Consent of Department Head. |
| Variable - 1 to 3 semester hours. Repeatable for credit to a maximum of 12 hours. |
| CSCI-101 INTRODUCTION TO COMPUTER SCIENCE (I, II, S) |
| An introductory course to the building blocks of Computer Science. Topics include conventional computer hardware, data representation, the role of operating systems and networks in modern computing, algorithm design, large databases, SQL, and security. A popular procedural programming language will be learned by students and programming assignments will explore ideas in algorithm runtimes, computer simulation, computational techniques in optimization problems, client-server communications, encryption, and database queries. |
| Prerequisite: none. |
| 3 hours lecture; 3 semester hours. |
| CSCI-198 SPECIAL TOPICS (I, II, S) |
| Pilot course or special topics course. Topics chosen from special interests of instructor(s) and student(s). Usually the course is offered only once. |
| Prerequisite: Consent of Instructor. |
| Variable credit: 1 to 6 semester hours. Repeatable for credit under different titles. |
| CSCI-199 INDEPENDENT STUDY (I, II, S) |
| Individual research or special problem projects supervised by a faculty member; also, when a student and instructor agree on a subject matter, content, and credit hours. |
| Prerequisite: Independent Study form must be completed and submitted to the Registrar. |
| Variable Credit: 1 to 6 credit hours. Repeatable for credit. |
| CSCI-260 FORTRAN PROGRAMMING (I, II) |
| Computer programming in Fortran90/95 with applications to science and engineering. Program design and structure, problem analysis, debugging, program testing. Language skills: arithmetic, input/output, branching and looping, functions, arrays, data types. Introduction to operating systems. |
| Prerequisite: none. |
| 2 hours lecture; 2 semester hours. |
| CSCI-261 PROGRAMMING CONCEPTS (I, II, S) |
| Computer programming in a contemporary language such as C++ or Java, using software engineering techniques. Problem solving, program design, documentation, debugging practices. Language skills: input/output, control, repetition, functions, files, classes and abstract data types, arrays, and pointers. Introduction to operating systems and object-oriented programming. Application to problems in science and engineering. |
| Prerequisite: none. |
| 3 hours lecture; 3 semester hours. |
| CSCI-262 DATA STRUCTURES (I, II, S) |
| Defining and using data structures such as linked lists, stacks, queues, binary trees, binary heap, hash tables. Introduction to algorithm analysis, with emphasis on sorting and search routines. Language skills: abstract data types, templates and inheritance. |
| Prerequisite: CSCI261 with a grade of C- or higher |
| 3 hours lecture; 3 semester hours. |
| CSCI-274 INDTRODUCTION TO THE LINUX OPERATING SYSTEM (I, II) |
| Introduction to the Linux Operating System will teach students how to become proficient with using a Linux operating system from the command line. Topics will include: remote login (ssh), file system navigation, file commands, editors, compilation, execution, redirection, output, searching, processes, usage, permissions, compression, parsing, networking, and bash scripting. |
| Prerequisite: CSCI 261 or instructor approval. |
| 1 hour lecture; 1 semester hour. |
| CSCI-298 SPECIAL TOPICS (I, II, S) |
| Selected topics chosen from special interests of instructor and students. |
| Prerequisite: Consent of Department Head. |
| 1 to 3 semester hours. Repeatable for credit under different titles. |
| CSCI-299 INDEPENDENT STUDY (I, II, S) |
| Individual research or special problem projects supervised by a faculty member; also, when a student and instructor agree on a subject matter, content, and credit hours. |
| Prerequisite: Independent Study form must be completed and submitted to the Registrar. |
| Variable Credit: 1 to 6 credit hours. Repeatable for credit. |
| CSCI-306 SOFTWARE ENGINEERING (I, II) |
| Introduction to software engineering processes and object-oriented design principles. Topics include the Agile development methodology, test-driven development, UML diagrams, use cases and several object-oriented design patterns. Course work emphasizes good programming practices via version control and code reviews. |
| Prerequisite: CSCI262. |
| 3 hours lecture; 3 semester hours. |
| CSCI-340 COOPERATIVE EDUCATION (I, II, S) |
| Supervised, full-time engineering-related employment for a continuous six-month period (or its equivalent) in which specific educational objectives are achieved. |
| Prerequisite: Second semester sophomore status and a cumulative grade point average of at least 2.00. |
| 0 to 3 semester hours. |
| Note: Cooperative Education credit does not count toward graduation except under special conditions. |
| CSCI-341 COMPUTER ORGANIZATION (I, II) |
| Covers the basic concepts of computer architecture and organization. Topics include machine level instructions and operating system calls used to write programs in assembly language, computer arithmetics, performance, processor design, and pipelining techniques. This course provides insight into the way computers operate at the machine level. |
| Prerequisite: CSCI261 and CSCI101 or permission of instructor |
| 3 hours lecture; 3 semester hours. |
| CSCI-358 DISCRETE MATHEMATICS (I, II) |
| This course is an introductory course in discrete mathematics and algebraic structures. Topics include: formal logic; proofs, recursion, analysis of algorithms; sets and combinatorics; relations, functions, and matrices; Boolean algebra and computer logic; trees, graphs, finite-state machines and regular languages. |
| Prerequisite: MATH213, MATH223 or MATH224. |
| 3 hours lecture; 3 semester hours. |
| CSCI-370 FIELD COURSE (S) |
| This is the capstone course in which students apply their course work knowledge to a challenging applied problem for a real client. The students work in groups of three or four for a period of six forty-hour weeks. Communication skills are emphasized. By the end of the field session they must have a finished product with appropriate supporting documents. |
| Prerequisite: CSCI306 |
| 6-week summer session; 6 semester hours. |
| Note: At a minimum CS students should have completed coursework through CSCI-306. This is a writing intensive course (WI). |
| CSCI-398 SPECIAL TOPICS (I, II, S) |
| Selected topics chosen from special interests of instructor and students. |
| Prerequisite: Consent of Department Head. |
| 1 to 3 semester hours. Repeatable for credit under different titles. |
| CSCI-399 INDEPENDENT STUDY (I, II, S) |
| Individual research or special problem projects supervised by a faculty member given agreement on a subject matter, content, and credit hours. |
| Prerequisite: Independent Study form must be completed and submitted to the Registrar. |
| Variable Credit: 1 to 6 credit hours. Repeatable for credit. |
| CSCI-400 PRINCIPLES OF PROGRAMMING LANGUAGES (I, II) |
| Study of the principles relating to design, evaluation and implementation of programming languages, including basic compiler techniques and context-free grammars. Students will be exposed to different categories of programming languages, such as functional, imperative, object-oriented and scripting. Best practices for programming will be explored, including effective use of exceptions and threads. The primary languages discussed are: Java, C++, Scheme, and Perl |
| Prerequisite: CSCI306 |
| 3 hours lecture; 3 semester hours. |
| CSCI-403 DATA BASE MANAGEMENT (I) |
| Design and evaluation of information storage and retrieval systems, including defining and building a database and producing the necessary queries for access to the stored information. Relational database management systems, structured query language, and data storage facilities. Applications of data structures such as lists, inverted lists and trees. System security, maintenance, recovery and definition. Interfacing host languages to database systems and object-relational mapping tools. NoSQL databases and distributed databases. |
| Prerequisite: CSCI262 with a grade of C- or higher |
| 3 hours lecture; 3 semester hours. |
| CSCI-404 ARTIFICIAL INTELLIGENCE (I) |
| General investigation of the Artificial Intelligence field. Several methods used in artificial intelligence such as search strategies, knowledge representation, logic and probabilistic reasoning are developed and applied to practical problems. Fundamental artificial intelligence techniques are presented, including neural networks, genetic algorithms, and fuzzy sets. Selected application areas, such as robotics, natural language processing and games, are discussed. |
| Prerequisite: CSCI262 with a grade of C- or higher and MATH323 or consent of instructor |
| 3 hours lecture; 3 semester hours. |
| CSCI-406 ALGORITHMS (I, II) |
| Reasoning about algorithm correctness (proofs, counterexamples). Analysis of algorithms: asymptotic and practical complexity. Review of dictionary data structures (including balanced search trees). Priority queues. Advanced sorting algorithms (heapsort, radix sort). Advanced algorithmic concepts illustrated through sorting (randomized algorithms, lower bounds, divide and conquer). Dynamic programming. Backtracking. Algorithms on unweighted graphs (traversals) and weighted graphs (minimum spanning trees, shortest paths, network flows and bipartite matching); NP-completeness and its consequences. |
| Prerequisite: CSCI262 with a grade of C- or higher, MATH213, MATH223 or MATH224, MATH/CSCI358 |
| 3 hours lecture; 3 semester hours. |
| CSCI-407 INTRODUCTION TO SCIENTIFIC COMPUTING (I, II) |
| Course goals are to introduce basic concepts of scientific computing, explain how, why, and when numerical methods can be expected to work, and provide a basis for future study in scientific computing. Topics include number representation and errors in a computer, locating roots of equations, interpolation and numerical differentiation, numerical integration, systems of linear equations (Gauss elimination with pivoting, LU factorization), approximation by spline functions, the method of least squares, ordinary differential equations. |
| Prerequisite: MATH225 or MATH235 and knowledge of computer programming. |
| 3 hours lecture; 3 semester hours. |
| Note: Though cross-listed, it is important that math majors take MATH-407 and computer science majors take CSCI-407. |
| CSCI-410 ELEMENTS OF COMPUTING SYSTEMS (II) |
| This comprehensive course will help students consolidate their understanding of all fundamental computer science concepts. Topics include symbolic communication, Boolean logic, binary systems, logic gates, computer architecture, assembly language, assembler construction, virtual machines, object-oriented programming languages, software engineering, compilers, language design, and operating systems. Using a hardware simulator and a programming language of their choice, students construct an entire modern computer from the ground up, resulting in an intimate understanding of how each component works. |
| Prerequisite: CSCI261, CSCI341. |
| 3 hours lecture; 3 semester hours. |
| CSCI-422 USER INTERFACES (I) |
| User Interface Design is a course for programmers who want to learn how to create more effective software. This objective will be achieved by studying principles and patterns of interaction design, critiquing existing software using criteria presented in the textbooks, and applying criteria to the design and implementation of one larger product. Students will also learn a variety of techniques to guide the software design process, including Cognitive Walkthrough, Talk-aloud and others. |
| Prerequisite: CSCI262. |
| 3 hours lecture; 3 semester hours. |
| CSCI-440 PARALLEL COMPUTING FOR SCIENTISTS AND ENGINEERS (II) |
| This course is designed to introduce the field of parallel computing to all scientists and engineers. The students will be taught how to solve scientific problems using parallel computing technologies. They will be introduced to basic terminologies and concepts of parallel computing, learn how to use MPI to develop parallel programs, and study how to design and analyze parallel algorithms. |
| Prerequisite: CSCI262 with a grade of C- or higher |
| 3 hours lecture; 3 semester hours. |
| CSCI-441 COMPUTER GRAPHICS (I) |
| This class focuses on the basic 3D rendering and modeling techniques. In particular, it covers ray tracing, graphics pipeline, modeling techniques based on polynomial curves and patches, subdivision for curves and surfaces, scene graphs, BSP trees and their applications, and elements of global illumination. |
| Prerequisite: CSCI262 with a grade of C- or higher |
| 3 hours lecture, 3 semester hours. |
| CSCI-442 OPERATING SYSTEMS (I, II) |
| Introduces the essential concepts in the design and implementation of operating systems: what they can do, what they contain, and how they are implemented. Despite rapid OS growth and development, the fundamental concepts learned in this course will endure. We will cover the following high-level OS topics, roughly in this order: computer systems, processes, processor scheduling, memory management, virtual memory, threads, and process/thread synchronization. This course provides insight into the internal structure of operating systems; emphasis is on concepts and techniques that are valid for all computers. We suggest the student takes "Introduction to the Linux Operating System" before this course (if the student is new to the Unix/Linux environment). |
| Prerequisite: CSCI262 with a grade of C- or higher, CSCI341 |
| 3 hours lecture; 3 semester hours. |
| CSCI-443 ADVANCED PROGRAMMING CONCEPTS USING JAVA. (I, II) |
| This course will quickly review programming constructs using the syntax and semantics of the Java programming language. It will compare the constructs of Java with other languages and discuss program design and implementation. Object oriented programming concepts will be reviewed and applications, applets, servlets, graphical user interfaces, threading, exception handling, JDBC, and networking as implemented in Java will be discussed. The basics of the Java Virtual Machine will be presented. |
| Prerequisite: CSCI261, CSCI262. |
| 3 hours lecture, 3 semester hours. |
| CSCI-444 ADVANCED COMPUTER GRAPHICS (II) |
| This is an advanced computer graphics course, focusing on modern rendering and geometric modeling techniques. Students will learn a variety of mathematical and algorithmic techniques that can be used to develop high-quality computer graphics software. In particular, the course will cover global illumination, GPU programming, geometry acquisition and processing, point based graphics and non-photorealistic rendering. |
| Prerequisite: Basic understanding of computer graphics and graphics-related programming, for example CSCI441. |
| 3 hours lecture, 3 semester hours. |
| CSCI-445 WEB PROGRAMMING (I) |
| Web Programming is a course for programmers who want to develop web-based applications. It covers basic website design extended by client-side and server-side programming. Students should acquire an understanding of the role and application of web standards to website development. Topics include Cascading Style Sheets (CSS), JavaScript, PHP and database connectivity. At the conclusion of the course students should feel confident that they can design and develop dynamic Web applications on their own. |
| Prerequisite: CSCI262 or consent of instructor |
| 3 hours lecture, 3 semester hours. |
| CSCI-446 WEB APPLICATIONS (II) |
| Web Applications is a course for programmers who want to learn how to move beyond creating dynamic web pages and build effective web-based applications. At the completion of this course, students should know HTTP, Hypertext Markup Language (HTML), Cascading Style Sheets (CSS), JavaScript, Ajax, Ruby, RESTful architectures and Web services. Additionally students should have considered a variety of issues related to web application architecture, including but not limited to security, performance and cloud-based deployment environments |
| Prerequisite: CSCI445 |
| 3 hours lecture, 3 semester hours. |
| CSCI-447 SCIENTIFIC VISUALIZATION (I) |
| Scientific visualization uses computer graphics to create visual images which aid in understanding of complex, often massive numerical representation of scientific concepts or results. The main focus of this course is on modern visualization techniques applicable to spatial data such as scalar, vector and tensor fields. In particular, the course will cover volume rendering, texture based methods for vector and tensor field visualization, and scalar and vector field topology. |
| Prerequisite: Basic understanding of computer graphics and algorithms. |
| 3 hours lecture, 3 semester hours. |
| CSCI-471 COMPUTER NETWORKS I (I) |
| This introduction to computer networks covers the fundamentals of computer communications, using TCP/IP standardized protocols as the main case study. The application layer and transport layer of communication protocols will be covered in depth. Detailed topics include application layer protocols (HTTP, FTP, SMTP, and DNS), transport layer protocols (reliable data transfer, connection management, and congestion control), network layer protocols, and link layer protocols. In addition, students will program client/server network applications. |
| Prerequisite: CSCI442 or consent of instructor. |
| 3 hours lecture, 3 semester hours. |
| CSCI-474 INTRODUCTION TO CRYPTOGRAPHY (II) |
| This course is primarily oriented towards the mathematical aspects of cryptography, but is also closely related to practical and theoretical issues of computer security. The course provides mathematical background required for cryptography including relevant aspects of number theory and mathematical statistics. The following aspects of cryptography will be covered: symmetric and asymmetric encryption, computational number theory, quantum encryption, RSA and discrete log systems, SHA, steganography, chaotic and pseudo-random sequences, message authentication, digital signatures, key distribution and key management, and block ciphers. Many practical approaches and most commonly used techniques will be considered and illustrated with real-life examples. |
| Prerequisite: CSCI 262, MATH 334/335, MATH 358. |
| 3 credit hours |
| CSCI-475 INFORMATION SECURITY AND PRIVACY (I) |
| Information Security and Privacy provides a hands-on introduction to the principles and best practices in information and computer security. Lecture topics will include basic components of information security including threat assessment and mitigation, policy development, forensics investigation, and the legal and political dimensions of information security. |
| Prerequisite: CSCI 442 or consent of instructor. |
| 3 hours lecture; 3 semester hours. |
| CSCI-491 UNDERGRADUATE RESEARCH (I) |
| Individual investigation under the direction of a department faculty member. Written report required for credit. |
| Prerequisite: Consent of Department Head. |
| Variable - 1 to 3 semester hours. Repeatable for credit to a maximum of 12 hours. |
| CSCI-492 UNDERGRADUATE RESEARCH (II) |
| Individual investigation under the direction of a department faculty member. Written report required for credit. |
| Prerequisite: Consent of Department Head. |
| Variable - 1 to 3 semester hours. Repeatable for credit to a maximum of 12 hours. |
| CSCI-498 SPECIAL TOPICS (I, II, S) |
| Selected topics chosen from special interests of instructor and students. |
| Prerequisite: Consent of Department Head. |
| Variable - 1 to 3 semester hours. Repeatable for credit under different titles. |
| CSCI-499 INDEPENDENT STUDY (I, II, S) |
| Individual research or special problem projects supervised by a faculty member; also, given agreement on a subject matter, content, and credit hours. |
| Prerequisite: Independent Study form must be completed and submitted to the Registrar. |
| Variable Credit: 1 to 6 semester hours. Repeatable for credit. |
| EGGN-298 SPECIAL TOPICS (I, II, S) |
| Selected topics chosen from special interests of instructor and students. |
| Prerequisite: Consent of Department Head. |
| 1 to 3 semester hours. Repeatable for credit under different titles. |
| EGGN-398 SPECIAL TOPICS (I, II, S) |
| Selected topics chosen from special interests of instructor and students. |
| Prerequisite: Consent of Department Head. |
| 1 to 3 semester hours. Repeatable for credit under different titles. |
| EGGN-399 INDEPENDENT STUDY (I, II, S) |
| Individual research or special problem projects supervised by a faculty member given agreement on a subject matter, content, and credit hours. |
| Prerequisite: Independent Study form must be completed and submitted to the Registrar. |
| Variable Credit: 1 to 6 credit hours. Repeatable for credit. |
| EGGN-205 PROGRAMMING CONCEPTS (I, II) |
| This course provides an introduction to techniques of scientific computation that are utilized for engineering analysis, with the software package MATLAB as the primary computational platform. The course focuses on methods data analysis and programming, along with numerical solutions to algebraic and differential equations. Engineering applications are used as examples throughout the course. |
| Prerequisite: MATH112 or MATH113 or MATH122 or consent of instructor. |
| 3 hours lecture, 3 semester hours. |
| EGGN-250 MULTIDISCIPLINARY ENGINEERING LABORATORY I (I, II) |
| Laboratory experiments integrating instrumentation, circuits and power with computer data acquisitions and sensors. Sensor data is used to transition between science and engineering science. Engineering Science issues like stress, strains, thermal conductivity, pressure and flow are investigated using fundamentals of equilibrium, continuity, and conservation. |
| Prerequisite: DCGN381 or concurrent enrollment. |
| 4.5 hours lab; 1.5 semester hour |
| EGGN-307 INTRODUCTION TO FEEDBACK CONTROL SYSTEMS (I, II) |
| System modeling through an energy flow approach is presented, with examples from linear electrical, mechanical, fluid and/or thermal systems. Analysis of system response in both the time domain and frequency domain is discussed in detail. Feedback control design techniques, including PID, are analyzed using both analytical and computational methods. |
| Prerequisite: (DCGN381 or PHGN215) and MATH225. |
| 3 hours lecture; 3 semester hours. |
| EGGN-334 ENGINEERING FIELD SESSION, ELECTRICAL SPECIALTY (S) |
| Experience in the engineering design process involving analysis, design, and simulation. Students use engineering, mathematics and computers to model, analyze, design and evaluate system performance. Teamwork emphasized. |
| Prerequisite: EGGN382, EGGN388, and two of the following: EGGN384, EGGN385, EGGN389, and EPIC251. |
| Three weeks in summer session; 3 semester hours. |
| EGGN-340 COOPERATIVE EDUCATION (I,II,S) |
| Supervised, full-time engineering-related employment for a continuous six-month period in which specific educational objectives are achieved. Students must meet with the Engineering Division Faculty Co-op Advisor prior to enrolling to clarify the educational objectives for their individual Co-op program. |
| Prerequisite: Second semester sophomore status and a cumulative grade-point average of at least 2.00. |
| 3 semester hours credit will be granted once toward degree requirements. Credit earned in EGGN340, Cooperative Education, may be used as free elective credit hours. |
| Note: Requires the student to submit a "Declaration of Intent to Request Approval to Apply Co-op Credit toward Graduation Requirements" form obtained from the Career Center to the Engineering Division Faculty Co-op Advisor. |
| EGGN-350 MULTIDISCIPLINARY ENGINEERING LABORATORY II (I,II) |
| Laboratory experiments integrating electrical circuits, fluid mechanics, stress analysis, and other engineering fundamentals using computer data acquisition and transducers. Fluid mechanics issues like compressible and incompressible fluid flow (mass and volumetric), pressure losses, pump characteristics, pipe networks, turbulent and laminar flow, cavitation, drag, and others are covered. Experimental stress analysis issues like compression and tensile testing, strain gage installation, Young's Modulus, stress vs. strain diagrams, and others are covered. Experimental stress analysis and fluid mechanics are integrated in experiments which merge fluid power of the testing machine with applied stress and displacement of material specimen. |
| Prerequisite: EGGN250. |
| EGGN-381 INTRODUCTION TO ELECTRICAL CIRCUITS (I,II) |
| This course provides an engineering science analysis of electrical circuits. DC and single-phase AC networks are presented. Transient analysis of RC, RL and RLC circuits is studied as is the analysis of circuits in sinusoidal steady-state using phasor concepts. The following topics are included: DC and single-phase AC circuit analysis, current and charge relationships, Ohm's Law, resistors, inductors, capacitors, equivalent resistance and impedance, Kirchhoff's Laws, Thevenin and Norton equivalent circuits, superposition and source transformation, power and energy, maximum power transfer, first order transient response, algebra of complex numbers, phasor representation, time domain and frequency domain concepts, and ideal transformers. The course features PSPICE, a commercial circuit analysis software package. |
| Prerequisite: PHGN200. |
| 3 lecture hours, 3 semester hours. |
| EGGN-382 ENGINEERING CIRCUIT ANALYSIS (I,II) |
| This course provides for the continuation of basic circuit analysis techniques developed in EGGN381, by providing the theoretical and mathematical fundamentals to understand and analyze complex electric circuits. The key topics covered include: (i) Steady-state analysis of single-phase and three-phase AC power circuits, (ii) Laplace transform techniques, (iii) transfer functions, (iv) frequency response, (v) Bode diagrams, (vi) Fourier series expansions, and (vii) two-port networks. The course features PSPICE, a commercial circuit analysis software package. |
| Prerequisite: : EGGN381 or consent of instructor. |
| 3 hours lecture; 3 semester hours. |
| EGGN-384 DIGITAL LOGIC (I,II) |
| Fundamentals of digital logic design. Covers combinational and sequential logic circuits, programmable logic devices, hardware description languages, and computer-aided design (CAD) tools. Laboratory component introduces simulation and synthesis software and hands-on hardware design. |
| Prerequisite: DCGN381 or PHGN215. |
| 3 hours lecture; 3 hours lab; 4 semester hours. |
| EGGN-385 ELECTRONIC DEVICES AND CIRCUITS (I,II) |
| Semiconductor materials and characteristics, junction diode operation, bipolar junction transistors, field effect transistors, biasing techniques, four layer devices, amplifier and power supply design, laboratory study of semiconductor circuit characteristics. |
| Prerequisite: EGGN 382 or PHGN215. |
| 3 hours lecture; 3 hours lab; 4 semester hours. |
| EGGN-386 FUNDAMENTALS OF ENGINEERING ELECTROMAGNETICS (II) |
| This course provides an introduction to electromagnetic theory as applied to electrical engineering problems in wireless communications, transmission lines, and high-frequency circuit design. The theory and applications are based on Maxwell's equations, which describe the electric and magnetic force-fields, the interplay between them, and how they transport energy. Matlab and PSPICE will be used in homework assignments, to perform simulations of electromagnetic interference, electromagnetic energy propagation along transmission lines on printed circuit boards, and antenna radiation patterns. |
| Prerequisite: EGGN382, MATH348 and/or consent of instructor. |
| 3 hours lecture; 3 semester hours. |
| EGGN-388 INFORMATION SYSTEMS SCIENCE (I,II) |
| The interpretation, representation and analysis of time-varying phenomena as signals which convey information and noise; applications are drawn from filtering, audio and image processing, and communications. Topics include convolution, Fourier series and transforms, sampling and discrete-time processing of continuous-time signals, modulation, and z-transforms. |
| Prerequisite: (DCGN381 or PHGN215) and MATH225. |
| 3 hours lecture; 3 semester hours. |
| EGGN-389 FUNDAMENTALS OF ELECTRIC MACHINERY I (I,II) |
| This course provides an engineering science analysis of electrical machines. The following topics are included: DC, single-phase and three-phase AC?circuit analysis, magnetic circuit concepts and materials, transformer analysis and operation, steady-state and dynamic analysis of rotating machines, synchronous and poly-phase induction motors, and laboratory study of external characteristics of machines and transformers. |
| Prerequisite: EGGN382 or PHGN215. |
| 3 hours lecture; 3 hours lab; 4 semester hours. |
| EGGN-417 MODERN CONTROL DESIGN (I) |
| Control system design with an emphasis on observer-based methods, from initial open-loop experiments to final implementation. The course begins with an overview of feedback control design technique from the frequency domain perspective, including sensitivity and fundamental limitations. State space realization theory is introduced, and system identification methods for parameter estimation are introduced. Computer-based methods for control system design are presented. |
| Prerequisite: EGGN307. |
| 3 lecture hours, 3 semester hours. |
| EGGN-481 DIGITAL SIGNAL PROCESSING (I) |
| This course introduces the mathematical and engineering aspects of digital signal processing (DSP). An emphasis is placed on the various possible representations for discrete-time signals and systems (in the time, z-, and frequency domains) and how those representations can facilitate the identification of signal properties, the design of digital filters, and the sampling of continuous-time signals. Advanced topics include sigma-delta conversion techniques, multi-rate signal processing, and spectral analysis. The course will be useful to all students who are concerned with information bearing signals and signal processing in a wide variety of application settings, including sensing, instrumentation, control, communications, signal interpretation and diagnostics, and imaging. |
| Prerequisite: EGGN388 or consent of instructor. |
| . 3 hours lecture, 3 semester hours. |
| EGGN-482 MICROCOMPUTER ARCHITECTURE AND INTERFACING (I) |
| Microprocessor and microcontroller architecture focusing on hardware structures and elementary machine and assembly language programming skills essential for use of microprocessors in data acquisition, control, and instrumentation systems. Analog and digital signal conditioning, communication, and processing. A/D and D/A converters for microprocessors. RS232 and other communication standards. Laboratory study and evaluation of microcomputer system; design and implementation of interfacing projects. |
| Prerequisite: EGGN384 or consent of instructor. |
| 3 hours lecture; 3 hours lab; 4 semester hours. |
| EGGN-483 ANALOG & DIGITAL COMMUNICATION SYSTEMS (II) |
| Signal classification; Fourier transform; filtering; sampling; signal representation; modulation; demodulation; applications to broadcast, data transmission, and instrumentation. |
| Prerequisite: EGGN388 or consent of instructor. |
| 3 hours lecture; 3 hours lab; 4 semester hours. |
| EGGN-484 POWER SYSTEMS ANALYSIS (I) |
| 3-phase power systems, per-unit calculations, modeling and equivalent circuits of major components, voltage drop, fault calculations, symmetrical components and unsymmetrical faults, system grounding, power-flow, selection of major equipment, design of electric power distribution systems. |
| Prerequisite: EGGN389. |
| 3 hours lecture; 3 semester hours. |
| EGGN-485 INTRODUCTION TO HIGH POWER ELECTRONICS (II) |
| Power electronics are used in a broad range of applications from control of power flow on major transmission lines to control of motor speeds in industrial facilities and electric vehicles, to computer power supplies. This course introduces the basic principles of analysis and design of circuits utilizing power electronics, including AC/DC, AC/AC, DC/DC, and DC/AC conversions in their many configurations. |
| Prerequisite: EGGN385, EGGN389. |
| 3 hours lecture; 3 semester hours. |
| EGGN-486 PRACTICAL DESIGN OF SMALL RENEWABLE ENERGY SYSTEMS () |
| This course provides the fundamentals to understand and analyze renewable energy powered electric circuits. It covers practical topics related to the design of alternative energy based systems. It is assumed the students will have some basic and broad knowledge of the principles of electrical machines, thermodynamics, electronics, and fundamentals of electric power systems. One of the main objectives of this course is to focus on the interdisciplinary aspects of integration of the alternative sources of energy, including hydropower, wind power, photovoltaic, and energy storage for those systems. Power electronic systems will be discussed and how those electronic systems can be used for stand-alone and grid-connected electrical energy applications. |
| Prerequisite: EGGN382 or consent of instructor. |
| 3 hours lecture; 3 semester hours. |
| EGGN-487 ANALYSIS AND DESIGN OF ADVANCED ENERGY SYSTEMS (II) |
| The course investigates the design, operation and analysis of complex interconnected electric power grids, the basis of our electric power infrastructure. Evaluating the system operation, planning for the future expansion under deregulation and restructuring, ensuring system reliability, maintaining security, and developing systems that are safe to operate has become increasingly more difficult. Because of the complexity of the problems encountered, analysis and design procedures rely on the use of sophisticated power system simulation computer programs. The course features some commonly used commercial software packages. |
| Prerequisite: EGGN 484 or consent of instructor. |
| 2 hours lecture, 3 hours laboratory; |
| EGGN-498 SPECIAL TOPICS IN ENGINEERING (I,II) |
| Pilot course or special topics course. Topics chosen from special interests of instructor(s) and student(s). Usually the course is offered only once. |
| Prerequisite: Instructor consent. |
| Variable credit; 1 to 6 credit hours. Repeatable for credit under different titles. |
| EGGN-499 INDEPENDENT STUDY (I,II) |
| Individual research or special problem projects supervised by a faculty member, also, when a student and instructor agree on a subject matter, content, and credit hours. |
| Prerequisite: "Independent Study" form must be completed and submitted to the Registrar. |
| Variable credit; 1 to 6 credit hours. Repeatable for credit under different topic/experience. |
| EGGN-298 SPECIAL TOPICS (I, II, S) |
| Selected topics chosen from special interests of instructor and students. |
| Prerequisite: Consent of Department Head. |
| 1 to 3 semester hours. Repeatable for credit under different titles. |
| EGGN-398 SPECIAL TOPICS (I, II, S) |
| Selected topics chosen from special interests of instructor and students. |
| Prerequisite: Consent of Department Head. |
| 1 to 3 semester hours. Repeatable for credit under different titles. |
| EGGN-399 INDEPENDENT STUDY (I, II, S) |
| Individual research or special problem projects supervised by a faculty member given agreement on a subject matter, content, and credit hours. |
| Prerequisite: Independent Study form must be completed and submitted to the Registrar. |
| Variable Credit: 1 to 6 credit hours. Repeatable for credit. |
| EGGN-498 SPECIAL TOPICS (I, II, S) |
| Selected topics chosen from special interests of instructor and students. |
| Prerequisite: Consent of Department Head. |
| Variable - 1 to 3 semester hours. Repeatable for credit under different titles. |
| EGGN-499 INDEPENDENT STUDY (I, II, S) |
| Individual research or special problem projects supervised by a faculty member; also, given agreement on a subject matter, content, and credit hours. |
| Prerequisite: Independent Study form must be completed and submitted to the Registrar. |
| Variable Credit: 1 to 6 semester hours. Repeatable for credit. |
| EGGN-205 PROGRAMMING CONCEPTS (I, II) |
| This course provides an introduction to techniques of scientific computation that are utilized for engineering analysis, with the software package MATLAB as the primary computational platform. The course focuses on methods data analysis and programming, along with numerical solutions to algebraic and differential equations. Engineering applications are used as examples throughout the course. |
| Prerequisite: MATH112 or MATH113 or MATH122 or consent of instructor. |
| 3 hours lecture, 3 semester hours. |
| EGGN-250 MULTIDISCIPLINARY ENGINEERING LABORATORY I (I, II) |
| Laboratory experiments integrating instrumentation, circuits and power with computer data acquisitions and sensors. Sensor data is used to transition between science and engineering science. Engineering Science issues like stress, strains, thermal conductivity, pressure and flow are investigated using fundamentals of equilibrium, continuity, and conservation. |
| Prerequisite: DCGN381 or concurrent enrollment. |
| 4.5 hours lab; 1.5 semester hour |
| EGGN-307 INTRODUCTION TO FEEDBACK CONTROL SYSTEMS (I, II) |
| System modeling through an energy flow approach is presented, with examples from linear electrical, mechanical, fluid and/or thermal systems. Analysis of system response in both the time domain and frequency domain is discussed in detail. Feedback control design techniques, including PID, are analyzed using both analytical and computational methods. |
| Prerequisite: (DCGN381 or PHGN215) and MATH225. |
| 3 hours lecture; 3 semester hours. |
| EGGN-334 ENGINEERING FIELD SESSION, ELECTRICAL SPECIALTY (S) |
| Experience in the engineering design process involving analysis, design, and simulation. Students use engineering, mathematics and computers to model, analyze, design and evaluate system performance. Teamwork emphasized. |
| Prerequisite: EGGN382, EGGN388, and two of the following: EGGN384, EGGN385, EGGN389, and EPIC251. |
| Three weeks in summer session; 3 semester hours. |
| EGGN-340 COOPERATIVE EDUCATION (I,II,S) |
| Supervised, full-time engineering-related employment for a continuous six-month period in which specific educational objectives are achieved. Students must meet with the Engineering Division Faculty Co-op Advisor prior to enrolling to clarify the educational objectives for their individual Co-op program. |
| Prerequisite: Second semester sophomore status and a cumulative grade-point average of at least 2.00. |
| 3 semester hours credit will be granted once toward degree requirements. Credit earned in EGGN340, Cooperative Education, may be used as free elective credit hours. |
| Note: Requires the student to submit a "Declaration of Intent to Request Approval to Apply Co-op Credit toward Graduation Requirements" form obtained from the Career Center to the Engineering Division Faculty Co-op Advisor. |
| EGGN-350 MULTIDISCIPLINARY ENGINEERING LABORATORY II (I,II) |
| Laboratory experiments integrating electrical circuits, fluid mechanics, stress analysis, and other engineering fundamentals using computer data acquisition and transducers. Fluid mechanics issues like compressible and incompressible fluid flow (mass and volumetric), pressure losses, pump characteristics, pipe networks, turbulent and laminar flow, cavitation, drag, and others are covered. Experimental stress analysis issues like compression and tensile testing, strain gage installation, Young's Modulus, stress vs. strain diagrams, and others are covered. Experimental stress analysis and fluid mechanics are integrated in experiments which merge fluid power of the testing machine with applied stress and displacement of material specimen. |
| Prerequisite: EGGN250. |
| EGGN-381 INTRODUCTION TO ELECTRICAL CIRCUITS (I,II) |
| This course provides an engineering science analysis of electrical circuits. DC and single-phase AC networks are presented. Transient analysis of RC, RL and RLC circuits is studied as is the analysis of circuits in sinusoidal steady-state using phasor concepts. The following topics are included: DC and single-phase AC circuit analysis, current and charge relationships, Ohm's Law, resistors, inductors, capacitors, equivalent resistance and impedance, Kirchhoff's Laws, Thevenin and Norton equivalent circuits, superposition and source transformation, power and energy, maximum power transfer, first order transient response, algebra of complex numbers, phasor representation, time domain and frequency domain concepts, and ideal transformers. The course features PSPICE, a commercial circuit analysis software package. |
| Prerequisite: PHGN200. |
| 3 lecture hours, 3 semester hours. |
| EGGN-382 ENGINEERING CIRCUIT ANALYSIS (I,II) |
| This course provides for the continuation of basic circuit analysis techniques developed in EGGN381, by providing the theoretical and mathematical fundamentals to understand and analyze complex electric circuits. The key topics covered include: (i) Steady-state analysis of single-phase and three-phase AC power circuits, (ii) Laplace transform techniques, (iii) transfer functions, (iv) frequency response, (v) Bode diagrams, (vi) Fourier series expansions, and (vii) two-port networks. The course features PSPICE, a commercial circuit analysis software package. |
| Prerequisite: : EGGN381 or consent of instructor. |
| 3 hours lecture; 3 semester hours. |
| EGGN-384 DIGITAL LOGIC (I,II) |
| Fundamentals of digital logic design. Covers combinational and sequential logic circuits, programmable logic devices, hardware description languages, and computer-aided design (CAD) tools. Laboratory component introduces simulation and synthesis software and hands-on hardware design. |
| Prerequisite: DCGN381 or PHGN215. |
| 3 hours lecture; 3 hours lab; 4 semester hours. |
| EGGN-385 ELECTRONIC DEVICES AND CIRCUITS (I,II) |
| Semiconductor materials and characteristics, junction diode operation, bipolar junction transistors, field effect transistors, biasing techniques, four layer devices, amplifier and power supply design, laboratory study of semiconductor circuit characteristics. |
| Prerequisite: EGGN 382 or PHGN215. |
| 3 hours lecture; 3 hours lab; 4 semester hours. |
| EGGN-386 FUNDAMENTALS OF ENGINEERING ELECTROMAGNETICS (II) |
| This course provides an introduction to electromagnetic theory as applied to electrical engineering problems in wireless communications, transmission lines, and high-frequency circuit design. The theory and applications are based on Maxwell's equations, which describe the electric and magnetic force-fields, the interplay between them, and how they transport energy. Matlab and PSPICE will be used in homework assignments, to perform simulations of electromagnetic interference, electromagnetic energy propagation along transmission lines on printed circuit boards, and antenna radiation patterns. |
| Prerequisite: EGGN382, MATH348 and/or consent of instructor. |
| 3 hours lecture; 3 semester hours. |
| EGGN-388 INFORMATION SYSTEMS SCIENCE (I,II) |
| The interpretation, representation and analysis of time-varying phenomena as signals which convey information and noise; applications are drawn from filtering, audio and image processing, and communications. Topics include convolution, Fourier series and transforms, sampling and discrete-time processing of continuous-time signals, modulation, and z-transforms. |
| Prerequisite: (DCGN381 or PHGN215) and MATH225. |
| 3 hours lecture; 3 semester hours. |
| EGGN-389 FUNDAMENTALS OF ELECTRIC MACHINERY I (I,II) |
| This course provides an engineering science analysis of electrical machines. The following topics are included: DC, single-phase and three-phase AC?circuit analysis, magnetic circuit concepts and materials, transformer analysis and operation, steady-state and dynamic analysis of rotating machines, synchronous and poly-phase induction motors, and laboratory study of external characteristics of machines and transformers. |
| Prerequisite: EGGN382 or PHGN215. |
| 3 hours lecture; 3 hours lab; 4 semester hours. |
| EGGN-417 MODERN CONTROL DESIGN (I) |
| Control system design with an emphasis on observer-based methods, from initial open-loop experiments to final implementation. The course begins with an overview of feedback control design technique from the frequency domain perspective, including sensitivity and fundamental limitations. State space realization theory is introduced, and system identification methods for parameter estimation are introduced. Computer-based methods for control system design are presented. |
| Prerequisite: EGGN307. |
| 3 lecture hours, 3 semester hours. |
| EGGN-481 DIGITAL SIGNAL PROCESSING (I) |
| This course introduces the mathematical and engineering aspects of digital signal processing (DSP). An emphasis is placed on the various possible representations for discrete-time signals and systems (in the time, z-, and frequency domains) and how those representations can facilitate the identification of signal properties, the design of digital filters, and the sampling of continuous-time signals. Advanced topics include sigma-delta conversion techniques, multi-rate signal processing, and spectral analysis. The course will be useful to all students who are concerned with information bearing signals and signal processing in a wide variety of application settings, including sensing, instrumentation, control, communications, signal interpretation and diagnostics, and imaging. |
| Prerequisite: EGGN388 or consent of instructor. |
| . 3 hours lecture, 3 semester hours. |
| EGGN-482 MICROCOMPUTER ARCHITECTURE AND INTERFACING (I) |
| Microprocessor and microcontroller architecture focusing on hardware structures and elementary machine and assembly language programming skills essential for use of microprocessors in data acquisition, control, and instrumentation systems. Analog and digital signal conditioning, communication, and processing. A/D and D/A converters for microprocessors. RS232 and other communication standards. Laboratory study and evaluation of microcomputer system; design and implementation of interfacing projects. |
| Prerequisite: EGGN384 or consent of instructor. |
| 3 hours lecture; 3 hours lab; 4 semester hours. |
| EGGN-483 ANALOG & DIGITAL COMMUNICATION SYSTEMS (II) |
| Signal classification; Fourier transform; filtering; sampling; signal representation; modulation; demodulation; applications to broadcast, data transmission, and instrumentation. |
| Prerequisite: EGGN388 or consent of instructor. |
| 3 hours lecture; 3 hours lab; 4 semester hours. |
| EGGN-484 POWER SYSTEMS ANALYSIS (I) |
| 3-phase power systems, per-unit calculations, modeling and equivalent circuits of major components, voltage drop, fault calculations, symmetrical components and unsymmetrical faults, system grounding, power-flow, selection of major equipment, design of electric power distribution systems. |
| Prerequisite: EGGN389. |
| 3 hours lecture; 3 semester hours. |
| EGGN-485 INTRODUCTION TO HIGH POWER ELECTRONICS (II) |
| Power electronics are used in a broad range of applications from control of power flow on major transmission lines to control of motor speeds in industrial facilities and electric vehicles, to computer power supplies. This course introduces the basic principles of analysis and design of circuits utilizing power electronics, including AC/DC, AC/AC, DC/DC, and DC/AC conversions in their many configurations. |
| Prerequisite: EGGN385, EGGN389. |
| 3 hours lecture; 3 semester hours. |
| EGGN-486 PRACTICAL DESIGN OF SMALL RENEWABLE ENERGY SYSTEMS () |
| This course provides the fundamentals to understand and analyze renewable energy powered electric circuits. It covers practical topics related to the design of alternative energy based systems. It is assumed the students will have some basic and broad knowledge of the principles of electrical machines, thermodynamics, electronics, and fundamentals of electric power systems. One of the main objectives of this course is to focus on the interdisciplinary aspects of integration of the alternative sources of energy, including hydropower, wind power, photovoltaic, and energy storage for those systems. Power electronic systems will be discussed and how those electronic systems can be used for stand-alone and grid-connected electrical energy applications. |
| Prerequisite: EGGN382 or consent of instructor. |
| 3 hours lecture; 3 semester hours. |
| EGGN-487 ANALYSIS AND DESIGN OF ADVANCED ENERGY SYSTEMS (II) |
| The course investigates the design, operation and analysis of complex interconnected electric power grids, the basis of our electric power infrastructure. Evaluating the system operation, planning for the future expansion under deregulation and restructuring, ensuring system reliability, maintaining security, and developing systems that are safe to operate has become increasingly more difficult. Because of the complexity of the problems encountered, analysis and design procedures rely on the use of sophisticated power system simulation computer programs. The course features some commonly used commercial software packages. |
| Prerequisite: EGGN 484 or consent of instructor. |
| 2 hours lecture, 3 hours laboratory; |
| EGGN-498 SPECIAL TOPICS IN ENGINEERING (I,II) |
| Pilot course or special topics course. Topics chosen from special interests of instructor(s) and student(s). Usually the course is offered only once. |
| Prerequisite: Instructor consent. |
| Variable credit; 1 to 6 credit hours. Repeatable for credit under different titles. |
| EGGN-499 INDEPENDENT STUDY (I,II) |
| Individual research or special problem projects supervised by a faculty member, also, when a student and instructor agree on a subject matter, content, and credit hours. |
| Prerequisite: "Independent Study" form must be completed and submitted to the Registrar. |
| Variable credit; 1 to 6 credit hours. Repeatable for credit under different topic/experience. |