# Isc3313 schedule

( Overview | Syllabus | Schedule | Lectures | Assignments | Project | Code | Misc)

I. Components of Scientific Computing

1. Syllabus and introduction

2. UNIX basics

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

1. Working C++ programming projects

2. Introduction to C++

3. Algorithm development (Monte Carlo Integration)

4. Program testing and documentation

5. Visualization and analysis of results

III. Solving non-linear equations

1. Description of problem and some simple algorithms

2.Iterative methods, required accuracy of result

3. Implementation of the Bisection method

4. Program testing and documentation

IV.Object oriented programming concepts in detail

using the non-linear equation problem and implementing more methods

1. Encapsulation

2.Inheritance

3. Polymorphism

V. Operations on vectors and matrices (February)

1. Development of general functionality that is usable in many places (a class 'Rational')

2. Vector and Matrix operations

3. Vector norms

VI. Polynomial interpolation of data (March)

1. Description of problems and (biological) applications

2. Algorithms: Lagrangian and Newton interpolation in detail

3. Implementation to fit a set of data

4. Piecewise interpolation

5. Implementation and visualization of piecewise interpolation

VII.Solving ordinary differential equations systems (April)

1. Simple ODE solved using Euler's method
2. ODE solved using Runge-Kutta method
3. Multipoint methods
4. Description of a two-equation system: Lotka-Volterra Predator-Prey system

5. Algorithms and implementation

6. Visualization of results

VIII. Markov chain Monte Carlo Integration

1. Description of method

2. Example application

3. Implementation

4. Testing and visualization of results

IX. Capstone project