CSCE 206: SCIENTIFIC APPLICATIONS PROGRAMMING

 

Catalog Description:

206—Scientific Applications Programming. (3) (Prereq: MATH 122 or MATH 141) Introduction to computer applications in science and engineering.  Programming exercises in a high level language.  Open to all majors.

 

Prerequisite(s) By Topic:

One semester of calculus

 

Textbook(s) and Other Required Material:

J. R. Hanly and E. B. Koffman, C Program Design for Engineers, 2d edition, Addison-Wesley.

 

Computing Platform: Unix or Windows.

 

Course Objectives: {Assessment Methods Shown in Braces}

1.    Solve numerical problems using a computer. {tests}

2.    Read and design numerical algorithms {tests}

3.    Design data structures {tests}

4.    Program a computer in a high-level language {assignments, tests}

 

Topics Covered:

1.    Introduction to programming tools (4 hours)

2.    Basic data types for numerical computing (4 hours)

3.    Issues of numerical accuracy (2 hours)

4.    Flow of control (6 hours)

5.    Arrays (6 hours)

6.    Subprograms (8 hours)

7.    I/O (3 hours)

8.    Numerical algorithms (root finding, matrix inversion, interpolation, etc.)  (8 hours)

9.    Reviews, examinations, etc. (4 hours)

 

Course Work:

            Written assignments, examinations, programming assignments

 

Syllabus Flexibility:

Low. The Undergraduate Committee approves the choice of textbook and syllabus. 

 

Estimated CSAB Category Content:

Algorithms:                                                    1

Data Structures:                                             0

Software Design:                                            0

Concepts of Programming Languages              1

Organization and Architecture                         1

 

Oral and Written Communication:

Development of readable and well-documented programs.

Social and Ethical Issues:

The importance of correct programs in critical science and engineering applications.

Theoretical Content:

none

Analysis and Design:

Numerical accuracy and algorithm performance.

Class/Laboratory Schedule:

Lecture: 3 periods of 50 minutes or 2 periods of 75 minutes per week

Assessment Activities

Student course evaluations (each semester)

Course Coordinator: Duncan Buell

Modification and Approval History

Prepared based upon previous description for CSCI 411 (April 1998, June 2001)

Modified February 2002 to include an oral and written communication component

Modified December 2003 to modify the content and format and include the curriculum mapping

Revised October 2004 to reflect prerequisite changes and change away from specification of the programming language.


Mapping to Computing Curricula 2001:

 

CE-OPS0: History and Overview of Operating Systems [core] (1 hour)

CS-OS1: Overview of Operating Systems [core] (2 hours)

CE-OPS1: Operating System Function and Design [core] (2 hours)

 

CE-OPS2: Operating System Principles [core] (3 hours)

CS-OS2: Operating System Principles [core] (2 hours)

CE-OPS3: Concurrency [core] (8 hours)

CS-OS3: Concurrency [core] (6 hours)

CE-OPS4: Scheduling and Dispatch [core] (3 hours)

CS-OS4: Scheduling and Dispatch [core] (3 hours)

CE-OPS5: Memory Management [core] (5 hours)

CS-OS5: Memory Management [core] (5 hours)

CE-OPS6: Device Management [core] (4 hours)

NOTE: A reviewer thinks this topic is adequately covered in Embedded Systems

CS-OS6: Device Management [elective]

 

CE-OPS7: Security and Protection [elective] (4 hours)

CS-OS7: Security and Protection [elective]