Go to:
Logótipo
You are here: Start > EBE0165

Introduction to Scientific Programming

Code: EBE0165     Acronym: IPCOM

Keywords
Classification Keyword
OFICIAL Basic Sciences

Instance: 2020/2021 - 1S Ícone do Moodle

Active? Yes
Web Page: https://moodle.fe.up.pt/course/view.php?id=2768
Responsible unit: Department of Electrical and Computer Engineering
Course/CS Responsible: Master in Bioengineering

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
MIB 106 Syllabus 1 - 6 56 162

Teaching language

Portuguese

Objectives

This course unit aims to develop students’ knowledge and skills in computing principles, concepts and methods and it will be given a special emphasis to scientific and engineering applications.
It will also be covered the following themes: resolution of problems and programming techniques; fundamental algorithms and data structure; use of the computer in the resolution of scientific, engineering and in particular bioengineering problems.
This course unit also aims to familiarise students with MatLab, which is the tool that will be used.

Learning outcomes and competences

To contribute to develop the capacity of the students to program in Matlab, to work autonomously and in group, and to prepare written reports and program documentation.

Working method

Presencial

Program

1. INTRODUCTION
1.1 Computer organisation
1.2 Use of computers in Bioengineering: examples
1.3 Computer representation of numbers

2. INTRODUCTION TO PROGRAMMING
2.1 Introduction
2.2 Programming languages: objectives
2.3 Programming paradigms
2.4 Compilation and interpretation
2.5 Family of programming languages
2.6 Basic blocks in programming
2.7 Structured programming

3. INTRODUCTION TO MATLAB
3.1 Advantages and disadvantages of Matlab
3.2 Matlab environment
3.3 Vectors and matrices in Matlab
3.4 Functions
3.5 Introduction to graphic plotting

4. IMPERATIVE PROGRAMMING
4.1 Introduction
4.2 Basic instructions
4.3 Complex instructions
4.4 Logic vectors and vectorization
4.5 Examples in Matlab

5. FUNCTIONS
5.1 Introduction
5.2 Argument sharing
5.3 Global memory
5.5 Functions of functions
5.4 Applications

6. DATA AND DATA STRUCTURES
6.1 Complex data
6.2 String functions
6.3 Multidimensional data
6.4 Examples of application in Matlab

7. INPUT-OUTPUT INSTRUCTIONS
7.1 Read / write commands
7.2 Notions of register and file
7.3 Operations with files

8. PROGRAMMING COMPLEMENTS AND EXAMPLES OF APPLICATION IN BIOENGINEERING
8.1 Statistical Analysis
8.2 Introduction to biosignal processing algorithms
8.3 Introduction to image processing algorithms in biology and medicine

Mandatory literature

J. Michael Fitzpatrick and Akos, Ledeczi; Computer Programming with MATLAB, 2015 (ebook available for Apple iBooks para iPads, iPhones and Mac-s, and in PDF for Windows and other operating systems. Available at cs103.net. )

Complementary Bibliography

The Math Works; Getting Started with Matlab
The Math Works; Matlab Application Toolbox
Fernando Martins; Prontuário do MATLAB, Edições FEUP
Chapman, Stephen J.; MATLAB programming for engineers. ISBN: 0-534-42417-1
S. R. Otto, J. P. Denier; An Introduction to programming and Numerical Methods in Matlab, Springer, 2005. ISBN: ISBN-10:1-85233-919-5; ISBN-13: 978-185233-919-7

Teaching methods and learning activities

Theoretical-practical classes (TP)
Theoretical presentation and resolution of programming problems

Practical classes (P)
Laboratory classes of problem solving at the computer lab

Software

Matlab

Evaluation Type

Distributed evaluation without final exam

Assessment Components

Designation Weight (%)
Teste 60,00
Trabalho laboratorial 40,00
Total: 100,00

Amount of time allocated to each course unit

Designation Time (hours)
Elaboração de relatório/dissertação/tese 4,00
Estudo autónomo 28,00
Frequência das aulas 56,00
Trabalho laboratorial 24,00
Total: 112,00

Eligibility for exams

To be admitted to exams, students:
cannot miss more theoretical-practical and practical classes than allowed by the rules.
have to reach a minimum a grade of 50% in the laboratory assignments.

Students, who attended this course unit in the previous year, can keep their grades. They do not need to attend laboratory classes and carry out the four laboratory assignments. If they opt to attend laboratory classes, their previous grades will not be taken into account.

Calculation formula of final grade

Type of evaluation: Distributed without final exam

NF has 2 components:

- Lab component, with 2 assignments: 1 individual assignment in class (TP1) and the 2nd (TP2) in groups with the following weights: 40% and 60% , respectively. The laboratorial classifiction (CL) has the following expression:

 

CL= 0.4*TP1+0.6*TP2 (CL must be at last 9)

- Written component: two closed book tests (PE1 e PE2) in November and in January.

The expression for NF is:

if CL >= 9

NF=0.3*PE1+0.3*PE2+0.4*CL, if (PE1+PE2)/2 > 8

NF=0.5*PE1+0.5*PE2 if (PE1+PE2)/2 <= 8

 

if CL < 9 --> NF = CL

Examinations or Special Assignments

Students will have to attend two closed book tests and carry out two programming assignments.
Students, who do not reach a passing grade in the written component, can opt to attend the special test on the same date of the 2nd test,  which will cover the entire program. They should inform the professors about their decision.

Special assessment (TE, DA, ...)

They will be assessed as regular students.

Recommend this page Top
Copyright 1996-2024 © Faculdade de Engenharia da Universidade do Porto  I Terms and Conditions  I Accessibility  I Index A-Z  I Guest Book
Page generated on: 2024-10-18 at 17:51:13 | Acceptable Use Policy | Data Protection Policy | Complaint Portal