Course Details

PROGRAMMING IN MATHEMATICA

IE536

Course Information
SemesterCourse Unit CodeCourse Unit TitleT+P+LCreditNumber of ECTS Credits
3IE536PROGRAMMING IN MATHEMATICA3+0+037,5

Course Details
Language of Instruction English
Level of Course Unit Master's Degree
Department / Program INDUSTRIAL ENGINEERING
Type of Program Formal Education
Type of Course Unit Elective
Course Delivery Method Face To Face
Objectives of the Course Making students familiar with the basics of the components of MMA by working on Notebooks, FrontEnd, Kernel, Documentation Center, Online Sources.
Guiding students to master the design principles that Wolfram Language based on by explaining these principles and providing various examples in detail.
Helping students be able to do programming efficiently in MMA by letting them to work on exercises of various levels and on projects related to their own research.
Course Content This course will introduce the design principles that Wolfram Language based on. Mathematica (MMA) combines the procedural, functional, and rule-based programming styles in a single coherent system. Each of these programing styles will be covered in detail in this course.
Properties of Mathematica notebooks, FrontEnd, Kernel and Documentation Center, basics of symbolic and numeric computations, an overview of built-in functions in MMA including the ones for fundamental mathematical procedures from Calculus and Linear Algebra are covered. To develop and analyze code in MMA the course covers the following subjects: Expressions and their manipulations, assignments and evaluation, pattern matching, repetitive and iterative processes, lexical and dynamic scopings, data types and building packages.
Course Methods and Techniques -
Prerequisites and co-requisities None
Course Coordinator None
Name of Lecturers Associate Prof.Dr. Zübeyir Çınkır people.agu.edu.tr/zcinkir/ zubeyir.cinkir@agu.edu.tr
Assistants None
Work Placement(s) No

Recommended or Required Reading
Resources M101 First Course in Mathematica (prepared by Wolfram Research)
M100 Introduction to Mathematica (prepared by Wolfram Research)
M220 Programming in Mathematica (prepared by Wolfram Research)
M221 Programming in Mathematica II (prepared by Wolfram Research)
Online Seminars given by W. Research
Online Teaching Materials given by W. Research
Notebooks prepared by the Instructor
-
Canvas, One Drive üzerinden paylaşılmaktadır.
Canvas ve Webwork üzerinden paylaşılmaktadır.
-

Course Category
Mathematics and Basic Sciences %50
Engineering %30
Education %20

Planned Learning Activities and Teaching Methods
Activities are given in detail in the section of "Assessment Methods and Criteria" and "Workload Calculation"

Assessment Methods and Criteria
In-Term Studies Quantity Percentage
Yarıyıl İçi Çalışmalarının Başarı Notunun Katkısı 4 % 20
Ödev 2 % 20
Proje/Çizim 1 % 10
Final examination 1 % 50
Total
8
% 100

 
ECTS Allocated Based on Student Workload
Activities Quantity Duration Total Work Load
Ev Ödevi 2 5 10
Sınıf İçi Aktivitesi 15 3 45
Proje 1 10 10
Kısa Sınav 4 5 20
Okuma 10 2 20
Yazılım Deneyimi 1 20 20
Ders dışı çalışma 5 7 35
Derse Devam 15 3 45
Final Sınavı 1 20 20
Total Work Load   Number of ECTS Credits 7,5 225

Course Learning Outcomes: Upon the successful completion of this course, students will be able to:
NoLearning Outcomes
1 Compute any type of scientific computation by using MMA.
2 Write codes/programs in MMA that runs fast and efficiently.
3 Construct their own “Packages” in MMA.
4 Use MMA efficiently at any level for research or educational purposes.


Weekly Detailed Course Contents
WeekTopicsStudy MaterialsMaterials
1 Components of MMA (Notebooks, FrontEnd, Kernel, Doc. Centers) - Shared on One drive
2 Symbolic and Numeric Computations - Shared on One Drive
3 Built-in Functions in MMA - Shared on One Drive
4 Procedural programming - Shared on one Drive
5 Functional programming - Shared on One Drive
6 Rule-Based programming - Shared on one drive
7 Assignments and evaluations - Shared on One Drive
8 Expressions, their components and modifying expressions - Shared on One Drive
9 Pattern Matching - Shared on One Drive
10 Repetitive Processes: Loops versus Maps, The use of “Function”(the postfix operator “&”) and “Slot” ("#”) - Shared on One Drive
11 Iterative processes with “For”, “While”, “Do”, “Nest”, “NestList”, “NestWhileList”, “Fold”, “FoldList” - Shared on One Drive
12 Operating on lists, e.g., “Map”, “MapAt”, “MapThread”, and “MapIndexed”. - Shared on One Drive
13 Generating and manipulating arrays, e.g., “Table”, “MapThread” and “Thread” - Shared on One Drive
14 Maintaining Control: Scoping Constructs (e.g., “Module”, “With”, “Block”, “DynamicModule”), Naming of Functions, and Data Types - Shared on One Drive
15 Creating Packages, Package Installation and existing Packages. - Shared on One Drive


Contribution of Learning Outcomes to Programme Outcomes
P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12
C1 4 4 1
C2 4 4 1
C3 4 4 4 3
C4

Contribution: 1: Very Slight 2:Slight 3:Moderate 4:Significant 5:Very Significant


https://sis.agu.edu.tr/oibs/bologna/progCourseDetails.aspx?curCourse=77287&lang=en