ISC-3313 - Introduction to Scientific Computing

Programming language: JAVA

Fall 2010

 

This course introduces students to the science of computation. Algorithms for standard problems in computational science, with emphasis on biological problems, are presented. The programing language is JAVA, a widely available, multi-platform computer language. Object-oriented approaches are emphasized for algorithm implementation and for development of stand-alone programs that solve problems in the field of scientific computing.

Course description

Course Objectives

After successful completion of this course students will be able to:

  1. 1.Identify the components of scientific computing;

  2. 2.Identify standard problems in scientific computing;

  3. 3.Implement basic algorithms for standard problems in computational science using the programming language Java.

  4. 4.Write, debug, and verify computer codes;

  5. 5.Output results of computer simulations on a meaningful manner.

Computer Competency Requirement

In order to fulfill FSU’s Computer Competency Requirement, the student must earn a “C-” or better in the course, and in order to receive a “C-” or better in the course, the student must earn at least a “C-” on the computer competency component of the course. If the student does not earn a “C-” or better on the computer competency component of the course, the student will not earn an overall grade of “C-” or better in the course, no matter how well the student performs in the remaining portion of the course.


Book

We use the book “ABsolute Java” 4th edition, by W. Savitch Publisher: Pearson (Addison-Wesley): ISBN 0-13-608382-X (2009), there are also electronic version of the book available.


Grading Policy

The student’s grade for the course will be based upon classwork, homework, group projects, a midterm and a final capstone project. This work is weighted as follows:

  1. Classwork/Homework - 45%

  2. Group Projects - 20 %

  3. Midterm Exam - 15%

  4. Capstone Project - 20%



Homework/Project Submission

Each homework assignment or project must be submitted as PDF documents in a single tar file via email to the TA with a copy to Professor Beerli.

University Attendance Policy
Excused absences include documented illness, deaths in the family and other documented crises, call to active military duty or jury duty, religious holy days, and official University activities. These absences will be accommodated in a way that does not arbitrarily penalize students who have a valid excuse. Consideration will also be given to students whose dependent children experience serious illness.


Academic Honor Policy:
The Florida State University Academic Honor Policy outlines the University’s expectations for the integrity of students’ academic work, the procedures for resolving alleged violations of those expectations, and the rights and responsibilities of students and faculty members throughout the process. Students are responsible for reading the Academic Honor Policy and for living up to their pledge to “. . . be honest and truthful and . . . [to] strive for personal and institutional integrity at Florida State University.” (Florida State University Academic Honor Policy, found at http://dof.fsu.edu/honorpolicy.htm.)


Americans With Disabilities Act:
Students with disabilities needing academic accommodation should:
(1) register with and provide documentation to the Student Disability Resource Center; and
(2) bring a letter to the instructor indicating the need for accommodation and what type. This should be done during the first week of class.
This syllabus and other class materials are available in alternative format upon request.
For more information about services available to FSU students with disabilities, contact the:
Student Disability Resource Center
874 Traditions Way
108 Student Services Building
Florida State University
Tallahassee, FL 32306-4167 
(850) 644-9566 (voice)
(850) 644-8504 (TDD)
sdrc@admin.fsu.edu
http://www.disabilitycenter.fsu.edu/


Syllabus Change Policy
Except for changes that substantially affect implementation of the evaluation (grading) statement, this syllabus is a guide for the course and is subject to change with advance notice.


 

Peter Beerli

Associate professor

Department of Scientific Computing


Office: 150-T Dirac Science Library

Phone: (850) 645 1324

Email: beerli at fsu dot edu

Web: http://people.scs.fsu.edu/~beerli

Instructor

Class hours: Tuesdays and Thursdays 12:30 - 1:45 in DSL 152.

Office hours: 2:00-3:00 Monday, 2:00-3:00 Friday (this is tentativ). You are welcome to talk to me at any other times, but I may not have always time to answer in depths.


Teaching assistant is not assigned yet.

Class website:

enter through my personal website  http://people.scs.fsu.edu/~beerli/classes/

  1. I.Components of Scientific Computing

  2. II.A simple example - Using a Monte Carlo approach to approximate problems

  3. 1.UNIX basics

  4. 2.Netbeans IDE: an integrated development environment for Java programming

  5. 3.Introduction to Java

  6. 4.Algorithm development

  7. 5.Program testing and documentation

  8. 6.Visualization and analysis of results


  1. III. Solving a non-linear equations

  2. 1.Description of problem and some simple algorithms

  3. 2.Iterative methods, required accuracy of result

  4. 3.Implementation of the Bisection method

  5. 4.Program testing and documentation


  1. IV.Object oriented programming concepts in detail
         using the non-linear equation problem and implementing more methods

  2. 1.Encapsulation

  3. 2.Inheritance

  4. 3.Polymorphism

  5. 4.Abstract classes and datatypes


  1. V. Operations on vectors and matrices

  2. 1.Development of general functionality that is usable in many places

  3. 2.Vector and Matrix operations

  4. 3.Vector norms

  5. 4.Concurrency and parallel processing of such calculations using JAVA


  1. VI. Polynomial interpolation of data

  2. 1.Description of problems and (biological) applications

  3. 2.Algorithms: Lagrangian interpolation in detail

  4. 3.Implementation to fit a set of data

  5. 4.Piecewise interpolation

  6. 5.Implementation and visualization of of piecewise interpolation


  1. VII.Solving ordinary differential equations systems

  2. 1.Description of problem: Lotka-Volterra Predator-Prey system

  3. 2.Algorithms

  4. 3.How to use functions from other libraries

  5. 4.How to assess correctness of program

  6. 5.Visualization of results


  1. VIII. Markov chain Monte Carlo Integration

  2. 1.Description of method

  3. 2.Example application

  4. 3.Implementation

  5. 4.Testing and visualization of results


  1. IX.Capstone project


Content