SLU logo

CSCI 1060 - Scientific Programming

Spring 2018

Instructor David Ferry, Homepage
Course Web Site http://cs.slu.edu/~dferry/courses/csci1060/
Course meeting times Monday, Wednesday, & Friday from 9:00 - 9:50, McDonnell Douglas Hall Rm. 1066
Midterm exams
Friday Feb. 23rd, Wednesday Mar. 28th
Final exam
May 9th, 8:00AM - 9:50AM
Office hours See my schedule

Contents
  1. Course Description
  2. Acknowledgements
  3. Prerequisites
  4. Assignments
  5. Course Schedule
  6. Textbooks and Other Resources
  7. Grading
  8. Links
  9. Academic Honesty
  10. Academic Support
  11. Disability Services
  12. Title IX Statement

Course Description

Computing allows scientists and engineers to quantify and analyze problems to a terrific degree. The particulars of how computers are used will vary from field to field and problem to problem, but the process of computer programming (or more generally- computer-aided problem solving) is similar for everybody. Computers are machines that are incapable of original thought or imagination. Using one effectively requires a solid understanding of what a computer is and is not capable of, and then the mental plasticity to transform the real-world problem into a computer model that (hopefully) bears some significance to the original problem that must be solved. The goal of this course is to teach students this process of solving real-world scientific and engineering problems via computer programming.

Learning Outcomes- At the end of this course, students should be able to:

Catalog Description: Elementary computer programming concepts with an emphasis on problem solving and applications to scientific and engineering applications. Topics include data acquisition and analysis, simulation and scientific visualization.


Acknowledgements

This course owes a debt of gratitude to Prof. Michael Goldwasser, from whom I took the original course material and format.


Prerequisites


Textbook

Recommended course textbook: MATLAB An Introduction with Applications by Amos Gilat, Published by Wiley

Note: The textbook is recommended for your benefit as a supplementary resource but is not required. Any recent edition of the book is suitable.

(book's website - supplementary videos, example problems, and errata)


Assignments

There will be approximately 10 assignments for this course and a course project. These are a mix of written and programming assignments whose purpose is to apply course concepts.

Assignments submitted on time will be given full credit. Assignments submitted up to 24 hours late will be given a ten percent penalty. Assignments submitted between 24 hours and 48 hours late will be given a twenty percent penalty. Assignments submitted after 48 hours late will not be given credit, except in the case of extenuating circumstances pre-approved by the instructor.


Course Schedule

A tentative course schedule is below. Note that this schedule may change over the course of the semester. When changes occur, students will be given enough advance notice so that readings and other preparation may be accommodated.

Week Day Topic Reading Notes
Jan 15-Jan 19 Mon No Class: Martin Luther King Day
Wed Introduction, Course Overview
Intro Program
Syllabus (this website)
Fri Overview of MATLAB
Scalars, operators, and precedence
Gilat Ch. 1 Homework #1 Assigned
Jan 22-Jan 26 Mon Vectors in MATLAB Gilat Ch. 2
Wed Two-Dimensional Arrays in MATLAB Homework #1 Due
Fri Vectorized Operations Gilat Ch. 3.1 - 3.6 Homework #2 Assigned
Jan 29-Feb 2 Mon Plotting Data Gilat Ch. 5.1 - 5.4
Wed Case Study: Rolling Pairs of Dice Gilat Ch. 5.8
Fri Control Structures Gilat Ch. 6.1 - 6.6 Homework #2 Due
Feb 5-Feb 9 Mon Animations
Case Study: The Motion of a Ball
Homework #3 Assigned
Wed Discrete Simulation
Case Study: Approximate Motion of a Ball
Fri Control Structures: Stock Market Analysis Homework #3 Due
Feb 12-Feb 16 Mon Basic Input and Output Commands Gilat Ch. 4 Homework #3 Due
Homework #4 Assigned
Wed More Stock Market Analysis
Fri Functions Gilat Ch. 7
Feb 19-Feb 23 Mon Case Study: Record Rainfall
Wed Homework #4 Due
Fri First Exam (includes material through Feb 14)
Feb 26-Mar 2 Mon Use of subfunctions
Case Study: Stock Market Analysis solution set
Wed Random Processes
Case Study: the gambler
Homework #5 Assigned
Fri The gambler simulation and random walks
(additional notes)
Mar 5-Mar 9 Mon Iterative Solvers
Wed More on Iterative Solvers Assignment #5 Due
Fri Random Solver Assignment #5 Due
Mar 12-Mar 16 Mon No Class: Spring Break
Wed
Fri
Mar 19-Mar 23 Mon File I/O Gilat Ch. 4.3-4.4
Wed Case Study: DNA to RNA Transcription (code) Homework #6 Assigned
Fri Case Study: Encryption
Mar 26-Mar 30 Mon Exam 2 Review Exam review programs: argDemo.m, myAverage.m, convertASCII.m, approxPi.m Homework #6 Due
Wed Second Exam (take home - no class) (download result.txt and warpeace.txt) Homework #6 Due
Fri No Class: Good Friday
Apr 2-Apr 6 Mon No Class: Easter Monday
Wed Cell Arrays, Structures Project Proposal Assigned

Homework #8 Assigned
Fri Basic sound processing in MATLAB
Apr 9-Apr 13 Mon Synthesized sounds
Wed Project Proposal Due
Fri Traversing Mazes
Apr 16-Apr 20 Mon
Wed Image Data Homework #8 Due

Homework #9 Assigned
Fri
Apr 23-Apr 27 Mon
Wed Digital Watermarking
Fri Finding components of an image Homework #9 Due
Apr 30-May 4 Mon An Introduction to C++ Programming
Wed
Fri
May 7th Mon Project Presentations (Presentation and Project Submission Guidelines)
May 9th Fri Project Presentations (8:00AM-9:50AM)

Grading

Your grade will be determined as follows:

Activity Grade Percentage
Assignments 40%
Project 20%
Midterm Exams 20% each

Grading is done on a straight scale (uncurved). The following scores are guaranteed. The grading scale may be curved upwards (in your favor) at the discretion of the instructor.


Links / Resources

MATLAB

The majority of this course is centered around using MATLAB, an industry standard software for scientific and engineering computing. You can access this software in at least the following ways:

Great reads that deal with computing in an engineering context:


Academic Honesty

Academic integrity is honest, truthful and responsible conduct in all academic endeavors. The mission of Saint Louis University is "the pursuit of truth for the greater glory of God and for the service of humanity." Accordingly, all acts of falsehood demean and compromise the corporate endeavors of teaching, research, health care, and community service via which SLU embodies its mission. The University strives to prepare students for lives of personal and professional integrity, and therefore regards all breaches of academic integrity as matters of serious concern.

The governing University-level Academic Integrity Policy was adopted in Spring 2015, and can be accessed on the Provost's Office website here. The College of Arts and Sciences policies on academic honesty can be found here.

If you are ever in doubt whether a particular action is a violation of academic honesty, please ask first!


Academic Support

In recognition that people learn in a variety of ways and that learning is influenced by multiple factors (e.g., prior experience, study skills, learning disability), resources to support student success are available on campus. The Student Success Center assists students with academic and career related services, is located in the Busch Student Center (Suite, 331) and the School of Nursing (Suite, 114). Students can visit www.slu.edu/success to learn more about:


Disability Services

Students with a documented disability who wish to request academic accommodations must contact Disability Services to discuss accommodation requests and eligibility requirements. Once successfully registered, the student also must notify the course instructor that they wish to access accommodations in the course.

Please contact Disability Services, located within the Student Success Center, at Disability_services@slu.edu or 314.977.3484 to schedule an appointment. Confidentiality will be observed in all inquiries. Once approved, information about the student’s eligibility for academic accommodations will be shared with course instructors via email from Disability Services and viewed within Banner via the instructor’s course roster.

Note: Students who do not have a documented disability but who think they may have one are encouraged to contact to Disability Services.


Title IX Statement

Saint Louis University and its faculty are committed to supporting our students and seeking an environment that is free of bias, discrimination, and harassment. If you have encountered any form of sexual misconduct (e.g. sexual assault, sexual harassment, stalking, domestic or dating violence), we encourage you to report this to the University. If you speak with a faculty member about an incident of misconduct, that faculty member must notify SLU’s Title IX coordinator, Anna R. Kratky (DuBourg Hall, room 36; akratky@slu.edu; 314-977-3886) and share the basic facts of your experience with her. The Title IX coordinator will then be available to assist you in understanding all of your options and in connecting you with all possible resources on and off campus.

If you wish to speak with a confidential source, you may contact the counselors at the University Counseling Center at 314-977-TALK. To view SLU’s sexual misconduct policy and for resources, please visit the following web addresses: http://www.slu.edu/general-counsel-home/office-of-institutional-equity-and-diversity/sexual-misconduct-policy www.slu.edu/here4you