Preview Workflow

Viewing: PY 251 : Introduction to Scientific Computing

Last approved: Fri, 28 Apr 2017 08:03:03 GMT

Last edit: Fri, 28 Apr 2017 08:03:03 GMT

Catalog Pages referencing this course
Change Type
Minor
PY (Physics)
251
031994
Dual-Level Course
Cross-listed Course
No
Introduction to Scientific Computing
Intro Sci Comp
College of Sciences
Physics (17PY)
Term Offering
Fall, Spring and Summer
Offered Every Year
Previously taught as Special Topics?
No
 
Course Delivery
Face-to-Face (On Campus)

Grading Method
Graded with S/U option
3
16
Contact Hours
(Per Week)
Component TypeContact Hours
Lecture3.0
Course Attribute(s)


If your course includes any of the following competencies, check all that apply.
University Competencies

Course Is Repeatable for Credit
No
 
 
John M. Blondin, J. David Brown
Professors

Open when course_delivery = campus OR course_delivery = blended OR course_delivery = flip
Enrollment ComponentPer SemesterPer SectionMultiple Sections?Comments
Lecture2020Non/a
Open when course_delivery = distance OR course_delivery = online OR course_delivery = remote
Prerequisite: MA 241; Corequisite: PY 202 or PY 208
Is the course required or an elective for a Curriculum?
Yes
SIS Program CodeProgram TitleRequired or Elective?
17PHYSBSPhysics-BSElective
17PHYSBAPhysics-BAElective
17MATHBSMathematics-BSElective
17AMATHBSApplied Mathematics-BSElective
An introductory course in scientific computing for the physical and mathematical sciences using python and other open-source tools. Using a problem-oriented approach, students will learn the basic computing skills needed to conduct scientific research and to prepare for upper-level courses in science and engineering. Topics will include algorithm development, numerical methods, elements of programming, data analysis, and data visualization.

Previously, PY251 carried a prerequisite of PY202 or PY208. With this revision, the requisites are changed to: Prerequisite: MA241; Corequisite: PY202 or PY208. Experience in teaching this course has shown that the students' success depends strongly on their level of experience in mathematics. The level of physics experience is less important, as the lessons generally do not require any physics knowledge beyond PY201 or PY205. The change in requisites will allow students to enroll if they are sufficiently advanced in mathematics, having completed MA241, and currently enrolled in PY202 or PY208 (having completed PY201 or PY205). 


No

Is this a GEP Course?
No
GEP Categories

Humanities Open when gep_category = HUM
Each course in the Humanities category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

 
 

 
 

Mathematical Sciences Open when gep_category = MATH
Each course in the Mathematial Sciences category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

Natural Sciences Open when gep_category = NATSCI
Each course in the Natural Sciences category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

Social Sciences Open when gep_category = SOCSCI
Each course in the Social Sciences category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

 
 

 
 

Interdisciplinary Perspectives Open when gep_category = INTERDISC
Each course in the Interdisciplinary Perspectives category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

 
 

 
 

 
 

 
 

Visual & Performing Arts Open when gep_category = VPA
Each course in the Visual and Performing Arts category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

 
 

 
 

Health and Exercise Studies Open when gep_category = HES
Each course in the Health and Exercise Studies category of the General Education Program will provide instruction and guidance that help students to:
 
 

 
 

 
 

 
 

 
&
 

 
 

 
 

 
 

Global Knowledge Open when gep_category = GLOBAL
Each course in the Global Knowledge category of the General Education Program will provide instruction and guidance that help students to achieve objective #1 plus at least one of objectives 2, 3, and 4:
 
 

 
 

 
Please complete at least 1 of the following student objectives.
 

 
 

 
 

 
 

 
 

 
 

US Diversity Open when gep_category = USDIV
Each course in the US Diversity category of the General Education Program will provide instruction and guidance that help students to achieve at least 2 of the following objectives:
Please complete at least 2 of the following student objectives.
 
 

 
 

 
 

 
 

 
 

 
 

 
 

 
 

Requisites and Scheduling
 
a. If seats are restricted, describe the restrictions being applied.
 

 
b. Is this restriction listed in the course catalog description for the course?
 

 
List all course pre-requisites, co-requisites, and restrictive statements (ex: Jr standing; Chemistry majors only). If none, state none.
 

 
List any discipline specific background or skills that a student is expected to have prior to taking this course. If none, state none. (ex: ability to analyze historical text; prepare a lesson plan)
 

Additional Information
Complete the following 3 questions or attach a syllabus that includes this information. If a 400-level or dual level course, a syllabus is required.
 
Title and author of any required text or publications.
 

 
Major topics to be covered and required readings including laboratory and studio topics.
 

 
List any required field trips, out of class activities, and/or guest speakers.
 

n/a

Students will learn to (i) solve and analyze scientific problems using numerical methods on the computer; and (ii) write reports in the style of a scientific journal article. 


Student Learning Outcomes

Students should be able to demonstrate the following:


(1) Write a python code to solve an ordinary differential equation using a second order Runge Kutta method.


(2) Calculate the value of a definite, one dimensional integral using Simpson's rule.


(3) Use linear algebra functions in scientific python to find the fundamental modes of a coupled oscillator.


(4) Use an error plot to estimate the role of truncation error on a numerical solution.


(5) Compute a solution of Laplace's question in two dimensions using a relaxation method.


(6) Generate a power spectrum using a fast fourier transform and interpret the features of the spectrum.


(7) Use a random number generator to model a random walk in tow dimensions.


(8) Write a paper in latex format in the style of a scientific journal, describing a numerical model of a physical problem and interpreting the results.


Evaluation MethodWeighting/Points for EachDetails
Written Assignment25Each paper is prepared in latex and includes a description of the physics being studied, the equations used to model the physics, and the numerical algorithm employed to solve the equations. Each paper must include at least one figure generated by the student.
Midterm15The midterm exam will consist of two problems to be solved by writing a python code during the exam time.
Homework40Each lesson ends with a problem to be solved with python code. The working code must be well-documented and any graphical output must include appropriate notation (labels, titles, etc.).
Final Exam20The final exam will include three problems to be solved with numerical techniques during the exam time.
TopicTime Devoted to Each TopicActivity
Introduction1 classIntroduction
Python basics3 classesNumerics, arrays, plotting, control structures, etc.
Ordinary Differential Equations1 classNumerical solution of an ordinary differential equation using forward Euler method
Validation and Verification1 classTesting code and determining accuracy
Applications1 classEx, solving for supersonic free-fall
Latex1 classWriting a paper using Latex
Root Finding1 classBisection and Newton's method
Linear Algebra2 classesUsing python to solve linear algebra problems.
Numerical Integration2 classesNumerical integration using left and right endpoint rules, midpoint rule, trapezoid rule, and Simpson's rule.
Data Fitting1 classLeast squares fit of data to linear and nonlinear functions.
Ordinary Differential Equations1 classRunge-Kutta methods.
Chaotic Pendulum2 classNumerical investigation of period doubling, phase space methods and chaotic motion.
Fourier Transforms1 classNumerical calculation of the fast Fourier transform and power spectra
Monte Carlo1 classIntegration using Monte Carlo methods.
Random Walks1 classNumerical investigation of random walks and diffusion.
Entropy1 classNumerical investigation of entropy.
Ising Model1 classThe Ising model and phase transitions.
Boundary Value Problems2 classesNumerical solution of Poisson's equation and other boundary value problems using relaxation methods.
Wave Equation2 classesNumerical techniques for solving partial differential equations in one dimension.
Reflection and dispersion1 classNumerical investigation of reflection and dispersion of waves.

Key: 7003