Some hints on hardware components and computer architecture.
Algorithms: properties and some examples.
Basic principles of structured programming.
Sequential (linear) search and binary search algorithms.
On algorithm complexity.
Basics on propositional logic.
Basics on binary calculus.
Data structures (stack, queue, binary tree, array, linked list).
Course Content - Part A
Theoretical and practical course on the employment of digital calculus for geological applications.
Course material and SAGA GIS Matlab basics manuals
Learning Objectives
The course aims to provide the students with fundamnetal knowledge and understanding in computer science. The concepts of data structure and algoritmh are presented as basic elements of computer science. The course also aims to endow the students with the basic tools in order to correctly apply a computer method to deal with some problem.
Learning Objectives - Part A
To give students the ability to manage digital computational systems to solve simple geological problems
Prerequisites
Courses required: none
Prerequisites - Part A
Mathematics and calculus
Teaching Methods
Lectures: presentation of the theory described in the course program, with teacher-student direct interaction, to ensure a full understanding of the subject. Training sessions: some computer application on simple problems.
Teaching Methods - Part A
Lectures, practical examples and computer exercises
Type of Assessment
Final written and oral examination. Some exercises and open questions are proposed. The tests are designed to assess the ability of the students to apply their skills. In the evaluation, some attention is paid to the capability of the student to present a short topic in a clear and concise way, with the due correctness.
Type of Assessment - Part A
Written exam on course topics. In particular, the examination will be based on theoretical questions on GIS and Matlab and on simple practical problems on matrix calculus and Matlab basic programming.
Course program
Historical introduction to Computer Science. Hints to hardware components and compuer architecture. Main storage and mass storage. Address space. Some on devices. Algorithm. properties and some examples of algorithms. Structured programming: declaration and initialization of variables, selection and iteration constructs. Linear (sequential) search and binary search algorithms. Sorting algorithms: BubbleSort, Insertion Sort, Selection Sort. Hints to algorithm complexity. Basics on binary calculus. Base conversions. Operations with binary numbers. Two's-complement representation for negative numbers. Basics on propositional logic: boolean connectors (AND, OR, NOT), logic connectors via boolean connectors. Tautology and contradiction. Data structures. Array and linked list: insertion, search, deletion and their complexity. Stack, queue, binary tree. Visiting trees. Inorder, postorder, preorder visiting of binary trees. Binary search trees.
Course program - Part A
Geographical data, data models, vectors and rasters. Geographical data analysis. The open-source GIS SAGA, installation and use.
Introduction to Matlab, data models, matrixes and vectors. Matrix calculus. File input and output. Basic Matlab programming (variables, functions, conditional instructions, cycles). Plotting in Matlab.