OUTLINE OF THE COURSE BIL106E (CRN: 20346)

INTRODUCTION TO SCIENTIFIC & ENGINEERING COMPUTING (Fortran)

2003-2004 Spring

Lecturer

Dr. Turgut Yılmaz, Faculty of Mechanical Engineering, Department of Mechanical Engineering, Gümüşsuyu, Office: Room 244 Tel: 0212 2931300, Ext. 2544, GSM 0532 6335300 turgut.yilmaz@itu.edu.tr, www.mkn.itu.edu.tr/~yilmaztur. Students can contact me in my office: Tuesday 16 00–18 00, Wednesday 14 00–16:00

Lectures

Tuesday 1100-1300 D 360

Lab Hours:

Tuesday 14 00-16 00, Computer lab 411.

Prerequisite Courses

BIL101E

Content

Historical development of programming languages and a short introduction to BASIC, COBOL, Pascal, Fortran etc to F are summarised. The structure, tools and methodology of program design are given in detail throughout the semester, however, Fortran (F) is focused on as the application language. Data handling, Building blocks, Program flow, arrays, Files are followed by an introduction to numerical methods.

Textbooks

Primary Reference:

Programming in F by: T.M.R. ELLIS and I.R. PHILIPS, Addison Wesley, 1998

Other Resources

  1. Essential Fortran 90&95, Common Subset Edition by Loren P. Meissner, Univ. of San Francisco, 1997
  2. Lecture Notes, by Dr. Ali Can Takinacı, ftp://ftp.be.itu.edu.tr/pub/be/lisans/bil106/fortran/3_F90_ITU_BIL_106E/3_BIL_106_AliCan_TKINACI/
  3. Additional resources available at http://www.be.itu.edu.tr/lisans/tr/BIL106/

Objective of the Course

To provide basic knowledge on the Programming Language Fortran (F) and program design methodology and tools in Scientific & Engineering Computing. It is aimed to give a sound basis to the Engineering Student to use Computing Methods in Scientific & Engineering applications.

Outcome of the Course

This course will provide,

  1. Knowledge and understanding on Programming and Programming Language Fortran (F)
  2. Ability to use programming tools, especially Fortran (F), for Engineering Computation
  3. Ability to learn advanced programming techniques with a sound basic knowledge of programming methodologies

 

Course Plan

Week

Topics

1

Introduction (History, Programming Languages, Algorithms, Why Fortran (F) )

2

First Steps (Steps in Programming, Basic F Concepts)

3

Data Handling (Data Types, Variables, Constants, Character, Assignments, I/O )

4

Basic Building Blocks (Programs, Modules, Procedures, Functions, Subroutines)

5

Program Flow (Choice, Decision-making, Logical variables, if and case Constructs)

6

Repetitive Execution (do constructs)

7

Arrays (Array Concept, Arrays in Expressions and Assignments)

8

Building Blocks (Recursive Procedures)

9

Control Over I/O (Formats, I/O Editing, I/O Statements)

10

File Use (Files and Records, Connecting and Disconnecting, File Positioning Statements)

11

Introduction to Numerical Methods ( Numerical Calculations, Precision and rounding)

12

More on Numerical Data Types ( Complex Variables, Non-Default Data Types, Non-Default Kinds of Variables and Constants, Mixed Kinds)

13

Array Processing and Matrix Manipulation (Matrices, Allocable Arrays, Sub-Arrays)

14

More on Numerical Methods, Pointers and Linked data Structures (Pointer Concepts, Pointers, Linked Lists)

Assessment Criteria

 

Quantity

Percentage

Midterm Exams

None

None

Quizzes

5 (Randomly distributed, Four best will be considered)

40 (4x10)

Homework

8 (Randomly distributed)

20 (8x2.5)

Final Exam

1

40

Total

100

 

Other Policies

Requirement to take the Final Exam

Students must:

· Attend at least 70% of the lectures.

· Attend at least 80% of the lectures lab’s.

Make-up Exams

Make-up exams will be given only when the student provides a valid documentation of illness for a period including the day of the exam.

Late Policy:

Homework must be submitted on time. In the cases of illness I may consider giving an extension, provided that the student informs me on time.