|
University
of Utah course schedules
Computer
Science
CS 1000 Engineering Computing (Credits: 3) Co-requisite: CS 1010, MATH
1210. Course taught: Fall, Spring, Every year.
Introduction
to programming principles and engineering problem solving via computational
means using MATLAB (during the first half of the semester) and C (during the
second half of the semester). Decomposition of programs into data
representation, functions, and control structures. Clean programming practices
are emphasized. The MATLAB portion of the course focuses on the implementation
of physically-based models, data visualization via plotting and selected
numerical techniques. The C portion of the course introduces basic syntax and
special features of the language for engineering implementations.
CS 1020
Introduction to Programming in C++ (Credits: 3)
An
introduction to essential programming concepts using C++. Laboratory practice
required.
CS 1021
Introduction to Programming in Java (Credits: 3) Course
taught: Fall. Every year.
An introduction to
essential programming concepts using Java. Laboratory practice emphasizes
object-oriented techniques and web-based application design.
CS 1410
Introduction to Computer Science I (Credits: 4) Co-requisite: CS 1010, MATH 1210.
Course taught: Fall semester, every year.
The first course required for students intending to
major in computer science. Introduction to the engineering and mathematical
skills required to effectively program computers, and to the range of issues
confronted by computer scientists. Roles of procedural and data abstraction in
decomposing programs into manageable pieces. Introduction to object-oriented
programming. Extensive programming
exercises that involve the application of elementary software engineering
techniques.
CS 2000
Introduction to Programming Design in C (Credits: 4) Co-requisite: CS 1010, MATH 1210.
Course taught: Fall, Spring, Every year.
Introduction
to essential programming concepts using C. Decomposition of programs into
functional units; control structures; fundamental data structures of C;
recursion; dynamic memory management; low-level programming. Some exposure to
C++. Laboratory practice. (Intended for non-CS/CE majors).
CS 3500/5010
Software Practice (Credits: 4) Prerequisites: CS 2420. Course taught: Fall, Every year. CS
5010 is for graduate students from departments other than Computer Science.
Practical
exposure to the process of creating large software systems, including
requirements specifications, design, implementation, testing, and maintenance.
Emphasis on software process, software tools (debuggers, profilers, source code
repositories, test harnesses), software engineering techniques (time
management, code, and documentation standards, source code management, object-oriented
analysis and design), and team development practice. Much of the work will be
in groups and will involve modifying preexisting software systems.
CS 4150 Algorithms (Credits: 3) Prerequisites: CS 2100, 2420.
Study
of algorithms, data structures,a nd complexity analysis beyond the introductory
treatment from CS 2420. Balanced trees, heaps, hash labels, string matching,
graph algorithms, external sorting and searching. Dynamic programming,
exhaustive search. Space and time complexity, derivation and solution of
recurrence relations, complexity hierarchies, reducibility, NP completeness.
Laboratory practice.
CS 5150/6150 Advanced
Algorithms (Credits:
3) Prerequisites: CS 4150. Course taught: Spring, Every year.
Design
and analysis of algorithms. Greedy algorithms, dynamic programming, divide and
conquer. Asymptotic analysis and recurrence relations. Graph algorithms and
network flows. Computational complexity and intractability. NP-hardness and
beyond. Approximation algorithms.
CS 5530/6530
Database Systems (Credits: 3) Prerequisites: CS 3500. Course taught: Fall, Every year.
Representing information about real world
enterprises using important data models including the entity-relationship,
relational and object-oriented approaches. Database design criteria, including
normalization and integrity constraints. Implementation techniques using
commercial database management system software. Selected advanced topics such
as distributed, temporal, active, and multi-media databases.
CS 5600
Introduction to Computer Graphics (Credits: 3)
Prerequisites: CS 3500, MATH 2250. Basic display techniques, display devices,
and graphics systems. Homogeneous coordinates, transformations, and clipping.
Introduction to lighting models. Introduction to raster graphics and hidden-surface
removal.
CS 5610/6610 Interactive
Computer Graphics (Credits: 3) Prerequisite: CS 5600.
Interactive 3D computer
graphics, polygonal representations of 3-D objects. Interactive lighting
models. Introduction to interactive texture mapping, shadow generation,
image-based techniques such as stencils, hidden-line removal, and silhouette
edges. Introduction to image-based rendering, global illumination, and volume
rendering.
CS 5630/6630
Scientific Visualization (Credits: 3) Prerequisites: CS 3505; CS 3200 or CS 6210 or MATH 5600.
Course taught: every third semester beginning in Fall 1999.
Introduction to the techniques and tools needed for
the visual display of data. Students will explore many aspects of
visualization, using a "from concepts to results" format. The course
begins with an overview of the important issues involved in visualization,
continues through an overview of graphics tools relating to visualization, and
ends with instruction in the utilization and customization of a variety of scientific
visualization software packages.
Geography
GEOG 3020 Geographical Analysis (Credits: 3) Prerequisite: MATH 1030, 1050 or
equivalent. Course taught: Spring, every year.
Emphasizes
the spatial point of view and presents techniques of spatial analysis
applicable to all fields of geography. Introduction to the use of multiple
correlation and regression techniques in geographic research with special
attention addressing problems in the use of these techniques with spatial data.
GEOG 3040
Principles of Cartography (Credits: 4). Prerequisite: MATH 1030, 1050 or equivalent. Course
taught: Fall, every year.
Fundamental
principles of cartography including perception, visualization, topographic and
thematic map interpretation, field mapping techniques (including GPS), and
creating computer-based maps in weekly labs. Principles include direction,
scale, grids, projections, and spatial transformations, spatial data analysis,
data manipulation decisions, color theory and application, and principles of cartographic
design and critical evaluation.
GEOG 3110 The
Earth from Space: Remote Sensing of the Environment (Credits: 3). Course
taught: Fall, every year.
Over
the past decade there has been an extraordinary increase in the availability of
remote sensing images of Earth. Many people are now familiar with programs like
Google Earth. The explosion in the availability of remote sensing data has
coincided with a growing number of remote sensing applications. Remote sensing
data are now used in anthropology, civil engineering, environmental sciences,
geography, geology, hydrology, natural resource assessment, meteorology, and
urban planning. This course adopts an interdisciplinary approach applicable to
those fields, examining remote sensing theory, techniques, and applications.
The course explores the physical basis for remote sensing and remote sending
technologies that use sunlight, infrared radiation, radar, and lasers. Five lab
exercises give "hands-on" experience with real remote sensing data.
GEOG 3140 Introduction
to GIS
(Credits: 3) Prerequisite: MATH 1030, 1050 or equivalent. Course taught: Fall,
every year.
A
recent increase in the use of digital geographic information in many fields has
created the need for experts with the knowledge to use this information to
society's benefit. Geographers, engineers, environmental scientists, planners,
social scientists, computer scientists and many other professionals will
encounter digital geographic information in some form in their future careers.
This course introduces students to issues that arise in using this information
in scientific and decision-making arenas. Topics include: applications of
geographic information; modeling geographic reality; spatial data collection;
geographic analysis; accuracy and uncertainty; visualization; and legal,
economic, and ethical issues associated with the use of geographic information.
GEOG 5110
Environmental Analysis Through Remote Sensing (Credits: 3) Prerequisite: GEOG 3110. Course taught: Spring, every year.
High-resolution
multispectral data, coupled with expanding computing power and increasingly
sophisticated image processing software, provides a large set of quantitative,
graphic and science visualization tools for solving science-based environmental
problems using remote sensing data. The theory and application of
image-processing techniques such as: data corrections, enhancements, transformations,
and classification are aimed at specific environmental problems in the natural
and human domains. Hands-on experience is gained through image processing
laboratory techniques, field-based measurements and real-world science
projects.
GEOG 5120
Environmental Optics (Credits: 3) Prerequisites: GEOG 3110; MATH 1060 or PHYS 1010 or
equivalencies; or instructor consent. Course
taught: Spring, every year.
The
physical principles that determine how light and matter interact are essential
to understanding remote sensing and Earth's energy budget. This course explores
the complex interactions of electromagnetic radiation with the Earth's surface
and atmosphere from a quantitative perspective. The physical foundations of
visible, infrared, and microwave remote sensing are addressed using both theory
and laboratory measurements. Theoretical explanations of reflection,
absorption, and transmission of electromagnetic radiation are used to explore
practical applications of environmental optics in remote sensing, climate
modeling, and everyday phenomena.
GEOG 5130
Advanced Remote Sensing Applications (Credits: 3) Prerequisite: GEOG 5110. Course taught: Fall, every year.
Project-based
science applications; project objectives, selection of alternative procedures,
planning, execution, evaluation, and publication.
GEOG 5140/6140
Methods in GIS (Credits: 4) Prerequisite: GEOG 3140 (except for graduate students).
Course taught: Spring, every year. Graduate students should enroll in GEOG 6140
and will be held to higher standards and/or more work.
This
course explores the practice of using a geographic information system (GIS) to
support geographic inquiry and decision making. Students will strengthen their
technical knowledge of the common tasks that a geographic analyst faces in
applying a GIS to a variety of spatial problems. The lab sections offer an
opportunity to gain hands-on experience using a leading commercial GIS to
complete a series of real-world projects.
GEOG 5150/6150
Spatial Database Design for GIS (Credits: 4) Prerequisite: GEOG 5140/6140. Course
taught: Fall, every year. Graduate
students should enroll in GEOG 6150 and will be held to higher standards and/or
more work.
Digital
spatial data is widespread due to the global positioning system (GPS),
satellite-based remote sensing, intelligent transportation systems and other
geographic information technologies. Spatial data is important and useful due
to geographic information systems (GIS) and other spatial applications such as
Internet map serving and location-based services. However, spatial data
involves complex objects and relationships that cannot be accommodated easily
by standard database management systems. This course reviews the fundamentals
of database design and data management to support GIS and other spatial
applications. Topics include modeling spatial data, spatial database design,
spatial query languages, spatial database storage and indexing, and spatial
query optimization.
GEOG 5160/6160
Spatial Modeling with GIS (Credits: 3) Prerequisite: GEOG 5140/6140. Course taught: Spring, every
year.
Graduate students should enroll in GEOG 6160 and will be held to higher
standards and/or more work.
The
power to model complex environmental systems in a geo-spatial framework is one
of the great assets of GIS. This course places the fundamental operations and
software of spatial analysis and GIS in a modeling framework. The course
addresses advanced concepts and techniques in map algebra, cartographic
modeling and descriptive and predictive spatial modeling. The course has both
lecture and required lab components.
|