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:00Lectures
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
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,
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.