ISC 1057
Computational Thinking
Young Hwan Kim
This introductory course considers the question of how computers have come to imitate many kinds of human intelligence. The answer seems to involve our detecting patterns in nature, but also in being able to detect patterns in the very way we think. We will look at some popular computational methods that shape our lives, and try to explain the ideas that make them work. This course has been approved to satisfy the Liberal Studies Quantitative/Logical Thinking requirement.
ISC 2310
Data Science with Python
Pankaj Chouhan
This course investigates strategies behind popular computational methods used in data science. In addition, many of the algorithms are implemented using the programming language Python. No prior programming experience is required so the course presents the basics of the Python language as well as how to leverage Python’s libraries to solve real-world problems in data science. Prerequisite: MAC 1105 or equivalent.
ISC 3222
Symbolic and Numerical Computations (4206)
M W F 8:00-8:50, 152 DSL
Alan Lemmon
Introduces state-of-the-art software environments for solving scientific and engineering problems. Topics include solving simple problems in algebra and calculus; 2-D and 3-D graphics; non-linear function fitting and root finding; basic procedural programming; methods for finding numerical solutions to DE's with applications to chemistry, biology, physics, and engineering. Prerequisite: MAC 2311.
ISC 3313
Introduction to Scientific Computing (C++) (4217)
M W F 12:00-12:50, 152 DSL
This course introduces the student to the science of computations. Topics cover algorithms for standard problems in computational science, as well as the basics of an object-oriented programming language, to facilitate the student’s implementation of algorithms. The computer language will be C++. Prerequisite: MAC 2311.
ISC 4221C
Discrete Algorithms for Science Applications (4208)
T R 9:45-11:00, 152 DSL - T 3:05-5:35 (Lab), 152 DSL
Olmo Zavala-Romero
This course offers stochastic algorithms, linear programming, optimization techniques, clustering and feature extraction presented in the context of science problems. The laboratory component includes algorithm implementation for simple problems in the sciences and applying visualization software for interpretation of results. Prerequisite: MAC 2311.
ISC 4223C
Computational Methods for Discrete Problems
T R 1:20-2:35, 152 DSL - F 3:05-5:35 (Lab), 152 DSL
Anke Meyer-Baese
This course describes several discrete problems arising in science applications, a survey of methods and tools for solving the problems on computers, and detailed studies of methods and their use in science and engineering. The laboratory component illustrates the concepts learned in the context of science problems. Prerequisites: MAS 3105, ISC 4304C.
ISC 4232C
Computational Methods for Continuous Problems (4210)
M W F 9:20-10:10, 152 DSL - M 3:05-5:35 (Lab), 152 DSL
Bryan Quaife
This course provides numerical discretization of differential equations and implementation for case studies drawn from several science areas. Finite difference, finite element, and spectral methods are introduced and standard software packages used. The lab component illustrates the concepts learned on a variety of application problems. Prerequisites: MAS 3105, ISC 4220, ISC 4304C.
ISC 5305
Scientific Programming (4203)
T R 1:20-2:35, 499 DSL
Gordon Erlebacher
This course uses the C language to present object-oriented coding, data structures, and parallel computing for scientific programming. Discussion of class hierarchies, pointers, function and operator overloading, and portability. Examples include computational grids and multidimensional arrays.
ISC 5315
Applied Computational Science I
T R 11:35-12:50, 152 DSL - R 3:05-5:35 (Lab), 152 DSL
Chen Huang
Course provides students with high-performance computational tools necessary to investigate problems arising in science and engineering, with an emphasis on combining them to accomplish more complex tasks. A combination of course work and lab work provides the proper blend of theory and practice with problems culled from the applied sciences. Topics include numerical solutions to ODEs and PDEs, data handling, interpolation and approximation and visualization. Prerequisites: ISC 5305, MAP 2302.
ISC 5228 / ISC 4933
Monte Carlo Method (4234)
T R 9:45-11:00, 422 DSL
Sachin Shanbhag
Covered are statistical foundations of Monte Carlo (MC) and Markov Chain Monte Carlo (MCMC) simulations, applications of MC and MCMC simulations, which may range from social sciences to statistical physics models, statistical analysis of autocorrelated MCMC data, and parallel computing for MCMC simulations.
ISC 4933 Science Professional Development
ISC 5935 Science Professional Development
M W F 9:00-9:50, DSL 499
Alan Lemmon
The course would cover topics such as improving communication in science (posters, talks, manuscripts, grants, etc), as well as some work on primary literature, and the publication process. Finally there would be a component on applying for grad school or jobs.
ISC 4933 AI Methods and Applications
ISC 5935 AI Methods and Applications
T R 9:45-11:00, DSL 499
Anke Meyer-Baese
AI is a fast-moving discipline which is impacting many areas of our daily life. In this course, students will get an introduction into deep learning and reinforcement learning and will also learn novel concepts such as graph neural networks, encoders and attention networks. Applications from several areas such as medical imaging, weather forecast and finance are introduced.

ISC 4931
Junior Seminar
F 1:20 - 2:20, 422 DSL
Alan Lemmon
Junior Seminar in Computational Science.
ISC 4932
Senior Seminar
W 4:50 - 5:50, 416 DSL
Tomasz Plewa
Senior Seminar in Computational Science.
ISC 5934
Graduate Seminar
F 3:05-3:55, 499 DSL
Xiaoqiang Wang
A series of lectures given by faculty on the research being conducted.
W 3:30 - 4:30, 499 DSL
Olmo Zavala-Romero
Weekly colloquium given by invited speakers to showcase research.