APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um...

27
Mini Curso Introdução ao MATLAB Aline Villela Chaia Maria Ribeiro Daibert GET – Engenharia de Produção - UFJF

Transcript of APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um...

Page 1: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Mini Curso

Introdução ao MATLAB

Aline Villela Chaia

Maria Ribeiro Daibert

GET – Engenharia de Produção - UFJF

Page 2: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Sumário:

Introdução .......................................................................................................................... 3

Objetivos ............................................................................................................................. 3

Histórico.............................................................................................................................. 3

Layout ................................................................................................................................. 4

Help .................................................................................................................................... 9

Dados ................................................................................................................................ 10

Funções ............................................................................................................................. 17

Gráficos ............................................................................................................................. 20

Programação ..................................................................................................................... 24

Page 3: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Introdução

O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples

e direta, que realiza cálculos de engenharia, e por isso possui uma ampla biblioteca de funções

matemáticas pré-definidas. Essas funções permitem que problemas de programação sejam

resolvidos de maneira muito mais simples do que com outras linguagens computacionais.

Objetivos

Esta apostila tem como objetivo introduzir o MATLAB como ferramenta de

programação computacional, usando como base o cálculo de matrizes. Além disso, apresenta

algumas de suas aplicações nesta área e exemplos para melhor fixação do conteúdo.

Histórico

A linguagem foi desenvolvida na década de 70 por Clever Moler, então presidente do

departamento de Ciências da Computação da Universidade do Novo México. Pela simplicidade

e facilidade de uso, foi aderida por muitas universidades e logo se destacou na comunidade

matemática.

Em 1984, em parceria com Steve Bangert e o engenheiro Jack Little, a MathWorks

(detentora dos direitos autorais) foi fundada e o MATLAB foi reescrito na linguagem C.

Por ser um ambiente integrado de modelagem de sistemas e algoritmos, ideal para

implementação de projetos complexos, a ferramenta se tornou um produto líder na área de

computação numérica e científica.

Page 4: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Layout

Pode-se dizer que o MATLAB possui cinco janelas principais. Duas nas quais o usuário

trabalha: Command Window e Editor. E três que mostram dados importantes: Command

History Window, Workspace e Figure. A seguir, uma descrição detalhada de cada janela.

Command Window

É a janela dos cálculos e da programação. Nesta janela, são inseridos os dados,

que são interpretados pelo programa, e então os resultados são retornados. Caso o

usuário queira, esta janela também mostra o desenvolvimento dos cálculos realizados,

mostrando os valores de cada variável, após terem sido executadas as ações

referentes a elas.

Page 5: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Editor

É a janela onde são criados códigos que podem ser salvos como arquivos do

MATLAB. É a janela mais utilizada, uma vez que nela podem ser digitados códigos

completos para só depois serem rodados na Command Window. Além disso, com o

modo Debug, que será explicado mais adiante, pode-se rodar o código linha por linha,

para ver todos os passos realizados pelo programa.

Page 6: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Command History Window

Esta janela mostra todos os comandos inseridos na Command Window

recentemente, classificados por ordem cronológica. Ao apertar a seta pra cima do

teclado na Command Window, visualizamos os comandos armazenados na Command

History Window.

Page 7: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Workspace

O workspace mostra todas as variáveis utilizadas recentemente e seus

respectivos tipos e valores. Com ele, é possível verificar se alguma variável teve seu

valor modificado quando o código foi rodado, e assim encontrar eventuais erros na

programação.

Page 8: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Figure Window

A Figure Window é a janela que exibe gráficos. Estes podem ser criados em

duas ou três dimensões. Mais adiante, será explicado como plotar gráficos em duas

dimensões.

Page 9: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Help

O comando help consiste em uma ferramenta de ajuda sobre todas as funções,

comandos e operadores existentes no MATLAB. Para acessar, basta digitar na Command

Window:

>>help função/comando/operador

A partir do comando dado, aparecem informações sobre o termo pesquisado.

Primeiramente, é fornecida uma definição. Em seguida, são dados exemplos de uso e todas as

possibilidades de aplicação, bem como informações sobre tópicos relacionados à pesquisa.

A seguir, tem-se um exemplo do comando ‘help close’.

Page 10: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Dados

A linguagem do MATLAB, chamada M

declaração de dados muito prática. A unidade fundamental é uma matriz (array), a qual se

trata da organização de elementos di

Um escalar é uma matriz de dimensões 1x1 e um vetor é uma matriz de uma única

dimensão (linha ou coluna). Os índices dos elementos são sempre iniciados com 1.

Existem inúmeras funções pré

usadas. Também existe a possibilidade do usuário criar sua própria biblioteca de funções.

Neste item, serão abordados

arquivo, criação de dados, operações entre matrizes e elemento a elemento

Salvando um arquivo

É possível salvar um código em um arquivo de texto com extensão ‘.m’,

utilizando o Editor. Para isso, basta clicar na barra de menu em

o exemplo abaixo:

Feito isso, o arquivo será salvo na pasta

feitas também poderão ser salvas.

guagem do MATLAB, chamada M-código é simples e objetiva, o que torna a

declaração de dados muito prática. A unidade fundamental é uma matriz (array), a qual se

trata da organização de elementos distribuídos em linhas e colunas.

Um escalar é uma matriz de dimensões 1x1 e um vetor é uma matriz de uma única

dimensão (linha ou coluna). Os índices dos elementos são sempre iniciados com 1.

Existem inúmeras funções pré-definidas armazenadas no software, prontas para serem

usadas. Também existe a possibilidade do usuário criar sua própria biblioteca de funções.

Neste item, serão abordados os seguintes temas: salvar um arquivo, executar um

operações entre matrizes e elemento a elemento.

Salvando um arquivo

É possível salvar um código em um arquivo de texto com extensão ‘.m’,

. Para isso, basta clicar na barra de menu em File>

Feito isso, o arquivo será salvo na pasta de destino desejada e as alterações

feitas também poderão ser salvas.

código é simples e objetiva, o que torna a

declaração de dados muito prática. A unidade fundamental é uma matriz (array), a qual se

Um escalar é uma matriz de dimensões 1x1 e um vetor é uma matriz de uma única

dimensão (linha ou coluna). Os índices dos elementos são sempre iniciados com 1.

definidas armazenadas no software, prontas para serem

usadas. Também existe a possibilidade do usuário criar sua própria biblioteca de funções.

: salvar um arquivo, executar um

É possível salvar um código em um arquivo de texto com extensão ‘.m’,

>New>M-File. Veja

destino desejada e as alterações

Page 11: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Executar um arquivo

Existem duas maneiras de executar um arquivo salvo, a primeira delas é

selecionando o que se deseja executar e em seguida clicar em F9 ou na barra de menu

em Text>Evaluate Selection.

A segunda opção é pelo nome que foi dado ao arquivo: basta digitá-lo na

janela de comando e em seguida apertar Enter, e o arquivo será executado.

Criando Dados

Declarar uma variável no MATLAB é muito simples, basta digitar o nome

desejado e o valor a ser atribuído a essa variável. Caso se deseja que a variável ainda

não tenha um valor atribuído, basta declará-la como vazio.

>>x=[];

Não é necessário declarar o tipo de variável, o próprio programa a identifica.

Ao declarar uma matriz utiliza-se espaço para separar elementos de uma

mesma linha e ponto e vírgula (;) para colunas.

>>nome_da_variável=[dados];

Exemplo:

>> a=10;

>> c=[1 2 3];

No exemplo acima, ao final da linha de código há o ponto e vírgula (;). Tal

mecanismo é utilizado caso não seja necessário exibir seu processamento na linha

abaixo. A seguir, um exemplo em que o desenvolvimento é mostrado:

>> m=[ 1 5 10; 2 10 30]

m =

1 5 10

2 10 30

Para acessar um elemento de uma matriz, basta digitar o nome da variável

seguido dos índices da linha e coluna desejada. Pode-se também acessar todos os

elementos de determinada linha ou coluna, como nos exemplos a seguir:

>> matriz1=[ 2 3 6 7; 8 6 4 0; 5 1 3 9]

matriz1 =

2 3 6 7

8 6 4 0

5 1 3 9

Page 12: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

>> matriz1(1,4)

ans =

7

>> matriz1(3,:)

ans =

5 1 3 9

O último elemento de uma linha ou coluna pode ser acessado por um

comando especial:

>> matriz1(end,2)

ans =

1

>> matriz1(end,end)

ans =

9

>> matriz1(3,end)

ans =

9

No primeiro caso, o elemento acessado foi o último da segunda coluna. No

segundo foi o último da última linha. E no terceiro, foi o último da terceira linha.

Para acessar x elementos de uma matriz, utilizam-se dois pontos (:) para

indicar entre que intervalo deve-se exibir os elementos. Caso seja necessário exibir

todos os elementos de uma linha ou coluna, utilizam-se apenas os dois pontos (:).

Exemplo:

>> matriz1(1,2:4)

ans =

3 6 7

>> matriz1(:,3)

ans =

Page 13: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

6

4

3

Há outras formas de inicialização de matrizes, duas delas são apresentadas

abaixo:

>>nome_da_variável = primeiro:incremento:último

>>nome_da_variavel=linspace (primeiro,último,número de elementos)

Exemplos:

>> a=1:2:10

a =

1 3 5 7 9

>> b=linspace(2,10,5)

b =

2 4 6 8 10

Operações com escalares

Todas as operações entre escalares são feitas de forma simples. São realizadas

da esquerda para a direita, obedecendo à ordem: potenciação, divisão/m

adição/subtração.

Operações com matrizes

• Entre matrizes: Para realizar operações básicas entre matrizes é necessário estar atento para algumas regras:

� Soma e Subtração: matrizes de mesma dimensão;� Multiplicação:

linhas da segunda;� Divisão: matrizes com mesmo número de linhas;� Potência: matrizes quadradas.

Há outras formas de inicialização de matrizes, duas delas são apresentadas

nome_da_variável = primeiro:incremento:último

nome_da_variavel=linspace (primeiro,último,número de elementos)

>> b=linspace(2,10,5)

Operações com escalares

Todas as operações entre escalares são feitas de forma simples. São realizadas

da esquerda para a direita, obedecendo à ordem: potenciação, divisão/m

Operações com matrizes

Entre matrizes: Para realizar operações básicas entre matrizes é necessário estar atento para algumas regras:

Soma e Subtração: matrizes de mesma dimensão; Multiplicação: número de colunas da primeira igual ao número de linhas da segunda; Divisão: matrizes com mesmo número de linhas; Potência: matrizes quadradas.

Há outras formas de inicialização de matrizes, duas delas são apresentadas

nome_da_variavel=linspace (primeiro,último,número de elementos)

Todas as operações entre escalares são feitas de forma simples. São realizadas

da esquerda para a direita, obedecendo à ordem: potenciação, divisão/multiplicação,

Entre matrizes: Para realizar operações básicas entre matrizes é necessário

primeira igual ao número de

Page 14: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Exemplos:

>> a=[1 2 3];

>> b=[ 2 4 6];

>> c=a/b

c =

0.5000

>> c*a

ans =

0.5000 1.0000 1.5000

>> a= [1 2; 3 4]

a =

1 2

3 4

>> a^2

ans =

7 10

15 22

Existem alguns comandos especiais para operações com matrizes. Veja a tabela

abaixo:

• Elemento a elementomatrizes quadradas. Para isto, basta colocar o da operação desejada. E

0.5000 1.0000 1.5000

Existem alguns comandos especiais para operações com matrizes. Veja a tabela

Elemento a elemento: As operações são feitas elemento a elemento de matrizes quadradas. Para isto, basta colocar o sinal de ponto (.) antes do sinal

ração desejada. Exemplo:

Existem alguns comandos especiais para operações com matrizes. Veja a tabela

As operações são feitas elemento a elemento de sinal de ponto (.) antes do sinal

Page 15: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

>>a =

1 2

3 4

>> b=[ 5 67; 100 3]

b =

5 67

100 3

>> a.*b

ans =

5 134

300 12

• Operadores relacionais: Os operadores relacionais são utilizados quando se necessita conhecer algum tipo de relação entre elementos seja de uma matriz, vetor ou escalar. Os dados são retornados em forma de matriz, com 0 para falso e 1 para verdadeiro.

Exemplo:

>> d= [12 56 78]

d =

12 56 78

>> e=[ 2 90 22]

e =

2 90 22

>> d>e

ans =

1 0 1

• Concatenação de matrizes: A concatenação de matrizes consiste em unir partes de diferentes matrizes em uma nova matriz. Pode-se agrupar

Page 16: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

horizontalmente (mesmo número de linhas), verticalmente (mesmo número de colunas) ou somente alguns elementos.

>> A

A =

1 2 3

>> B

B =

3 4 5

>> C=[A B]

1 2 3 3 4 5

>> C=[A;B]

C =

1 2 3

3 4 5

>> D=[B(1,1);A(1,2)]

D=

3

2

Page 17: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Funções

Como já foi mencionado anteriormente, existem inúmeras funções pré

MATLAB. Nesta seção serão apresentadas algumas delas e suas

como devem ser manipuladas.

Funções de inicialização de matrizes

O software apresenta funções que possibilitam inicializar matrizes com zeros,

um’s, identidade, entre outras. Essas funções estão reunidas na tabela abaixo.

A manipulação dessas funções é simples, basta digitá

dimensões da matriz.

Funções Matemáticas

As funções matemáticas são de grande importância e permitem ao usuário

agilizar e simplificar seus cálculos. Em primeiro lugar, deve

devem ser declaradas como

apóstrofos.

Exemplo:

>> f='2*x^2'

f =

2*x^2

Como já foi mencionado anteriormente, existem inúmeras funções pré

MATLAB. Nesta seção serão apresentadas algumas delas e suas principais aplicações, além de

como devem ser manipuladas.

Funções de inicialização de matrizes

O software apresenta funções que possibilitam inicializar matrizes com zeros,

um’s, identidade, entre outras. Essas funções estão reunidas na tabela abaixo.

A manipulação dessas funções é simples, basta digitá-las e adicionar as

dimensões da matriz.

Funções Matemáticas

As funções matemáticas são de grande importância e permitem ao usuário

agilizar e simplificar seus cálculos. Em primeiro lugar, deve-se destac

devem ser declaradas como char, ou seja, deve-se colocar o valor da função entre

Como já foi mencionado anteriormente, existem inúmeras funções pré-definidas no

principais aplicações, além de

O software apresenta funções que possibilitam inicializar matrizes com zeros,

um’s, identidade, entre outras. Essas funções estão reunidas na tabela abaixo.

las e adicionar as

As funções matemáticas são de grande importância e permitem ao usuário

se destacar que as funções

se colocar o valor da função entre

Page 18: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

A seguir estão algumas tabelas contendo as principais funções de aproximação,

exponenciais, trigonométricas

Funções de Aproximação

Funções Exponenciais

Funções Trigonométricas

Funções Complexas

A seguir estão algumas tabelas contendo as principais funções de aproximação,

exponenciais, trigonométricas e complexas.

A seguir estão algumas tabelas contendo as principais funções de aproximação,

Page 19: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

As funções derivada (diff) e integral (int) merecem atenção especial por sua

grande aplicação na matemática. Como já foi dito, é necessário declarar a função sobre

a qual se deseja calcular a operação como char. Veja os exemplos abaixo:

>> f=‘x^2+3’

f =

x^2+3

>> derivada=diff(f)

derivada =

2*x

>> f = '3*x^2 - 15*x + 18' % Cria a função como char

f =

3*x^2 - 15*x + 18

>> integral = int(f) % faz a integral da função

integral =

x^3-15/2*x^2+18*x

Funções Aleatórias

As funções aleatórias são aquelas capazes de gerar uma determinada

quantidade de números aleatoriamente. É possível limitar o intervalo em que são

gerados e também o tipo de número gerado. Tais funções estão descritas abaixo com

sua nomenclatura:

• rand(i,j) : gera matriz de i linhas, j colunas, com elementos que variam de 0 a 1

• randint(i,j,[mínimo máximo]) : gera matriz de i linhas, j colunas, com

elementos inteiros que variam de mínimo a máximo

Para uma melhor compreensão, veja os exemplos que seguem:

>> matriz=rand(2,2)

matriz =

0.8147 0.1270

0.9058 0.9134

>> matriz2=randint(1,3,[0 10])

matriz2 =

5 8 1

Page 20: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Gráficos

Os gráficos no MATLAB podem ser criados em duas ou três dimensões, utilizando-se de

vários comandos diferentes. Eles utilizam pontos discretos para o desenho. Ou seja, par de

pontos únicos pelos quais a linha do gráfico irá passar. Portanto, quanto mais pontos

fornecidos ao programa, melhor será a visualização da curva desejada. A seguir, o passo a

passo pra a criação de gráficos em duas dimensões e algumas funções que podem ser

utilizadas, a partir do comando plot.

Como plotar o gráfico

Primeiramente, deve-se criar dois vetores que armazenem, respectivamente,

os valores das variáveis “X” e “Y” que serão os eixos do gráfico. Então, o comando a ser

dado é:

>> plot(x,y,’Opções de Estilo’)

O campo Opções de Estilo diz respeito à cor da linha, do tipo de tracejado e da

marcação dos pontos dos vetores. Ao digitar, “help plot”, pode-se visualizar todas as

opções de estilo existentes no programa e seus respectivos comandos.

Pode-se também omitir uma das variáveis e/ou a opção de estilo, como no

caso abaixo.

>>plot(y)

Nesta situação, ele plota o gráfico na forma padrão, que é utilizando um vetor

contendo 1, 2, 3, 4... para a variável que está faltando, e a cor do gráfico é preto, com a

linha contínua e sem marcação dos pontos.

Page 21: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Plotando uma função

Uma outra maneira para se plotar um gráfico no MATLAB é usando o comando

“fplot”. Ele plota diretamente uma função dada. Seu formato é:

>> fplot(‘função’,[intervalo de valores], opções de estilo);

Exemplo:

>> fplot('cos(x)',[0,pi],'green')

Mais de um gráfico na mesma janela

Em programas que existem mais de um comando de plotagem de gráficos, a

cada Figure Window aberta, ela substitui a Figure Window anterior. Caso o objetivo

seja visualizar os gráficos simultaneamente, ou simplesmente não perder o gráfico

feito anteriormente, existe alguns recursos na biblioteca do MATLAB. São eles: Figure,

Hold on / Hold off e Subplot.

• Figure: esse comando abre uma nova Figure Window, onde o próximo gráfico

plotado será mostrado.

>>figure

• Hold on / Hold off : o comando hold on fixa a última Figure Window gerada, e

todos os plots a partir dele até o comando hold off são gerados na mesma

janela. Ou seja, ele possibilita que várias curvas sejam mostradas num mesmo

gráfico.

>>hold on

>>plot(x,y)

>>plot(w,z)

Page 22: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

>>hold off

No exemplo acima, os gráficos com eixos x e y, e o com eixos w e z, são

gerados na mesma janela.

• Subplot: o comando subplot permite que vários gráficos sejam mostrados

separadamente numa mesma Figure Window. Com ele, aparecerão duas ou

mais curvas, cada qual com seus eixos e escalas, lado a lado horizontalmente

e/ou verticalmente, numa mesma janela.

>>plot(x,y)

>>subplot(a,b,p)

>>plot(w,z)

No caso acima, o comando subplot divide a Figure Window em a por b gráficos

e plota a próxima curva no p-ésimo gráfico.

Page 23: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Comandos auxiliares

Existem alguns comandos para serem utilizados em Figure Windows que

ajudam a melhorar a aparência dos gráficos e auxiliam na identificação dos dados.

Dentre eles, pode-se destacar: title, xlabel, ylabel e text.

• Title: O comando title insere um título à última Figure Window aberta.

>>title(‘titulo desejado’)

• Xlabel: O comando xlabel permite que o eixo das abscissas do gráfico seja

identificado.

>>xlabel(‘identificação abscissas’)

• Ylabel: O comando ylabel permite que o eixo das ordenadas do gráfico seja

identidifcado.

>>ylabel(‘identificação ordenadas’)

• Text: O comando text insere um texto digitado pelo usuário numa

determinada posição.

>>text(x,y,’texto desejado’)

Um exemplo utilizando esses recursos é:

>> x=[ 4 8 12 16];

>> y=[ 1 2 3 4];

>> plot(x,y,'green')

>> xlabel('x');

>> ylabel('y');

>> text(8,2,'(8,2)')

Page 24: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Programação

Para implementar códigos completos e criar programas que sejam funcionais, é

necessária a utilização de alguns recursos que o MATLAB fornece. São os operadores lógicos,

os comandos de limpeza, a indentação, os processos iterativos, a criação de funções

personalizadas, o tempo de simulação e o modo Debug. A seguir, cada um dos recursos

mencionados serão explicados.

Operadores Lógicos

São os operadores de comparação. Eles podem ser usados para relacionar

duas ou mais variáveis, ou então para realizar testes. A tabela abaixo exibe todos os

operadores usados no MATLAB.

Operador Significado

< Menor que

<= Menor ou igual a

> Maior que

>= Maior ou igual a

== Igual a

~= Não igual

& Operador e

| Operador ou

~ Operador não

Comandos de Limpeza

Ao programar, para facilitar o entendimento do código quando rodado na

Command Window, existem os recursos de limpeza da tela e das variáveis. São eles:

clc, clear all e close all.

• Clc: Ao digitar o comando clc na Command Window, ele limpa todos os dados

inseridos anteriormente, porém sem apagá-los da memória.

>>clc

• Clear all: O comando clear all limpa todos os valores das variáveis que foram

armazenados anteriormente.

>>clear all

• Close all: O comando close all fecha todas as Figure Windows abertas.

>>close all

Page 25: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Indentação

O recurso da indentação permite que o código digitado no Editor seja

organizado, de acordo com os espaçamentos das margens de cada linha, a fim de

torná-lo mais claro para o usuário. Ele tem como base a hierarquização dos comandos

utilizados. Para indentar um código, basta selecioná-lo, clicar com o botão direito do

mouse e escolher a opção Smart Indent.

Processos Iterativos

Os processos iterativos são aqueles que limitam o código em partes, e

necessitam de condições iniciais ou finais para que aquele trecho seja executado. Eles

são divididos em quatro: If/If-else, While, For e Switch-case.

• If / If-else: O comando” If”, ou “Se”, executa o trecho do código abaixo dele

apenas se a condição inicial for satisfeita. Seu formato no MATLAB é:

if(condição1)

expressões1;

elseif(condição2)

expressões2;

else

expressõesn;

end

• While: O comando “While”, ou, “Enquanto”, é executado enquanto alguma

condição inicial é satisfeita. Ou seja, para que ele não se torne um loop infinito,

em algum ponto durante o loop, a variável que define a condição deve ser

modificada para que a condição não seja mais satisfeita. Essa mudança na

variável de condição é denominada flag. O formato do comando while no

MATLAB é:

while(condição)

expressões;

end

• For: O comando “For”, ou, “Para/Faça”, também é caracterizado como um

loop. Porém ele determina previamente os valores iniciais e finais da variável

de condição. Ou seja, é pré-definida a quantidade de vezes em que o trecho do

comando for será executado. Seu formato no MATLAB é:

for variável_de_iteração=valor_inicial : valor_final

expressões;

end

Page 26: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

• Switch-Case: O comando “Switch-Case”, ou, “Escolha”, permite que se tenha

diferentes casos para uma determinada variável. Dependendo do valor que

esta variável possui, será executada uma das opções do switch-case. Seu

formato no MATLAB é:

switch variável

case a

expressões;

case b

expressões;

case c

expressões;

otherwise

expressões;

end

Criação de Funções

O MATLAB possui uma biblioteca extensa de funções, porém o usuário

também pode criar suas próprias funções. Geralmente, esse recurso é utilizado

quando uma parte do código é repetida várias vezes. Por isso, criar uma função com

determinado trecho deste código, o torna menor e mais fácil de ser visualizado.

Cada função criada deve possuir sua própria janela do Editor. E esse arquivo

deve sempre ser salvo na mesma pasta que contém o código todo. O formato que esta

função deve ser criada é:

function saída = nome_da_função(entrada)

expressões;

O “nome_da_função” deve ser sempre escrito em letras minúsculas e sem

espaços. Além disso, ao salvar o arquivo do Editor, este deve possuir o mesmo nome

da função criada, uma vez que ao chamar esta função durante o código, ele ira buscar

na pasta pelo arquivo que possui aquele nome. Os dados de entrada da função são os

parâmetros que serão passados do código para a função e que serão utilizados por ela.

Caso exista mais de um dado de entrada, eles devem ser separados por vírgulas,

dentro dos parênteses. E o dado de saída é o valor que a função retorna e que será

armazenado pela variável que chamou a função.

Pode-se também criar uma função que não retorna nenhum valor. Ela apenas

executa o trecho de código correspondente. Seu formato deve ser:

function nome_da_função(entrada)

expressões;

Page 27: APOSTILA MINI CURSO - ufjf.br · Introdução O MATLAB, abreviação para MATrix LABoratory, é um software com linguagem simples e direta, que realiza cálculos de engenharia, e

Tempo de Simulação

Um recurso bastante útil do MATLAB é o chamado “Tic Toc”. Ele calcula e

mostra ao programador o tempo em que determinado trecho demorou para ser

executado. Como é de interesse do programador deixar o programa cada vez mais

rápido, o “Tic Toc” permite essa análise. Seu formato é:

tic

trecho do código desejado

toc

O resultado deste comando é mostrado na Command Window.

Modo Debug

O modo Debug, que pode ser utilizado no Editor, permite que o programador

acompanhe a execução de determinado trecho do seu código, linha por linha. Desta

forma, pode-se visualizar exatamente todos os passos que o programa segue,

facilitando a correção de erros eventuais. Além disso, ao posicionar a seta do mouse

sobre cada variável durante o modo Debug, pode-se ver seu valor e

consequentemente, suas mudanças ao longo da execução.

Para rodar um programa no modo Debug, deve-se seguir alguns passos:

• Clicar no traço ao lado do número referente à linha a partir da qual se deseja

acompanhar. Aparecerá uma bolinha vermelha.

• Clicar em “Debug” na barra de menus, e então em “Run”. Aparecerá uma

setinha verde na linha em que o programa está parado.

• Apertar F10 para que o programa prossiga para a próxima linha. Repetir até

quando desejar.

• Clicar em “Debug” e em “Exit Debug Mode” para sair do modo Debug.