• Nenhum resultado encontrado

INTRODUÇÃO AO SOFTWARE MATLAB

N/A
N/A
Protected

Academic year: 2019

Share "INTRODUÇÃO AO SOFTWARE MATLAB"

Copied!
5
0
0

Texto

(1)

INTRODUÇÃO AO SOFTWARE MATLAB

Deste ponto em diante da disciplina, um novo software será utilizado para a solução de problemas na área da engenharia e física: O MATLAB®. Este software, diferentemente de um compilador, permite a execução de códigos e rotinas diretamente a partir de uma janela de comando. Além disso, é possível também o desenvolvimento de programas e scripts, que se assemelham muito com a forma que resolvemos problemas nas disciplinas anteriores.

A sintaxe envolvida no desenvolvimento das aplicações também será sensivelmente alterada, de modo que serão necessárias algumas aulas para a familiarização com essa nova sintaxe.

A aula de hoje visa tão somente a apresentação do software que será utilizado, além da exposição de alguns comandos básicos inerentes ao programa.

O

MATLAB®

O software surgiu em meados da década de 1970, e fundamentalmente fora criado para operações com matrizes, como o próprio nome do software sugere: MATLAB® é o acrônimo do inglês Matrix Laboratory (Laboratório de Matrizes).

Naturalmente, no MATLAB® operações com matrizes (que normalmente são extremamente complexas de serem realizadas em outras linguagens) são simples e diretas, como o cálculo de uma matriz inversa, e.g.

Com o tempo, porém, o software evoluiu muito, e hoje pode ser utilizado nos mais diversos tipos de aplicações, como operações em tempo real, processamento de imagens entre outras operações.

O

A

MBIENTE DE

D

ESENVOLVIMENTO

A Figura 1 apresenta a janela inicial do software com o nome das janelas que a constituem.

(2)

A janela de comando, central, é onde os comandos são executados. Na janela de comandos os comandos são processados na hora em que são digitados, diferentemente da forma como se fazia no Dev ou em outro compilador, onde todo o código era compilado e um arquivo executável era gerado.

Na parte superior esquerda está a janela da pasta corrente. O MATLAB® acessa os arquivos da pasta corrente sem a necessidade de especificar o caminho completo do arquivo. Abaixo dessa janela é apresentado detalhes de um arquivo qualquer quando este é selecionado.

Na janela superior esquerda encontra-se a área de trabalho, onde todas as variáveis que são criadas são listadas.

Abaixo da janela da área de trabalho encontra-se o histórico de comandos executados na janela de comando.

Usualmente, no desenvolvimento de uma aplicação, utiliza-se a janela de comando como uma espécie de rascunho, e somente depois, com a lista de comandos necessários selecionados, passa-se para a confecção de scripts, programas e funções.

M

ANIPULANDO

V

ARIÁVEIS

Por se tratar de uma linguagem em mais alto nível, no MATLAB® (ou M-Código) não é necessário que variáveis sejam declaradas, e tampouco um tipo é necessário para a variável. Isso é um pouco complicado de processar em um primeiro momento, mas com o tempo essa flexibilidade apresenta-se como uma vantagem. O comando whos apresenta a que tipo (classe no MATLAB®) a variável pertence, bem como outras características da variável. Para visualizar tais diferenças, execute na janela de comando os seguintes comandos:

clc clear all

close all

a = 10;

b = 'Agora é no MATLAB!!'; c = 5 - 3j;

d = int16(452); whos

Perceba que não é necessário declarar a variável, nem especificar o tipo ao qual ela pertence. O comando clc limpa a janela de comandos, o comando clear all limpa a área de trabalho

(deletando as variáveis criadas até então), o comando close all fecha qualquer janela aberta por algum

comando (como gráficos). O comando whos, como já mencionado, apresenta detalhes das variáveis da área de trabalho.

(3)

O uso do ponto-e-vígurla no MATLAB® tem função diferente do que em C. Quando se executa um comando terminado em ponto-e-vírgula, o valor das variáveis envolvidas não é apresentado. Execute os comandos abaixo para perceber essa diferença:

a = 10; b = 10

Uma variável, depois de criada, pode receber qualquer tipo de classe de dado. Observe a saída após executar os comandos:

clc clear all

close all

a = 10; whos a = '!?'; whos

a = [1 2 3 4 5]; whos

Nos exemplos até aqui apresentados é possível constatar que o desenvolvimento de códigos no MATLAB® se dá de maneira mais intuitiva e em mais alto nível. Por exemplo, não foi necessário criar nenhuma estrutura para representar um número complexo, simplesmente foi escrito: c = 5 - 3j; bem como o comando do último exemplo a = [1 2 3 4 5]; criou um vetor com cinco números double. Isso torna a linguagem muito versátil quando se busca uma solução numérica para problemas utilizando computadores, e é por essa razão que o MATLAB® é muito utilizado. Como dito, o MATLAB® é uma ferramenta feita para manipulação de matrizes, portanto, suporta naturalmente operações envolvendo matrizes. Então é fundamental saber como criar matrizes e como a indexação de elementos é realizada nessa ferramenta.

I

NTRODUÇÃO ÀS

M

ATRIZES

A manipulação de matrizes é direta no MATLAB®, bastando criar a matriz na atribuição, como nos exemplos abaixo:

clear all

close all

A = [1 2 3 4 5];

B = int16([1 3; 2 5]); C = [-1 5 2; 6 -2 1]; whos

Perceba que para criar uma matriz basta utilizar colchetes []. Os elementos da linha são separados por espaços (formando colunas), e as linhas são separadas por ponto-e-vírgula.

A indexação de matrizes no MATLAB® se dá de forma diferente do que se fazia em C, utilizando parênteses ao invés de colchetes. Execute o código:

A = [1 2 3; 2 -4 5; 9 4 2]; B = [-1 5 2; 6 -2 1];

A(2,2) B(1,3)

(4)

O processo de indexação inicia em 1, e não em 0 (como se fazia em C). Essa é uma diferença crucial e que gera muitos problemas se não observada desde o inicio da utilização do software.

É possível ainda criar matrizes diretamente com a manipulação de índices, e não necessariamente atribuindo toda uma matriz no comando. O MATLAB® entenderá o comando e completará a matriz, preenchendo os termos restantes com zeros. Verifique a saída dos comandos:

vet(6) = 10 imag(3,2) = 3 vid(3,3,5) = -10

A manipulação algébrica de matrizes pode ser realizada de forma direta no MATLAB®. Observe o exemplo abaixo:

A = [2 5 2; -4 2 1; 5 3 1]; B = [1 2 3; 3 3 4; 4 5 7]; C = [3 2];

A * B B * C C' inv(A) inv(B)

Tente explicar o que ocorreu quando os comandos acima foram executados.

Perceba que o comando C' retorna a matriz transposta de C.

É fundamental compreender como manipular matrizes no MATLAB®, pois muitas aplicações fazem uso de matrizes, como por exemplo a manipulação de polinômios.

Além da sintaxe apresentada até agora para criar matrizes, é possível utilizar o operador dois-pontos ( : ). É mais fácil entender a utilidade deste operador executando os comandos abaixo:

clc clear all

close all

vet = 1 : 10 vet2 = 1 : 2 : 10

vet3 = -0.5 : 0.2 : 0.6

Com o operador dois-pontos fica fácil criar vetores com muitos elementos que serão utilizados em cálculos numéricos e em gráficos. Por exemplo, execute e observe a saída dos comandos.

clear all

close all

t = 0 : 0.25 : 2; t = t*pi

v = sin(t)

(5)

Perceba que a função seno (sin) já retornou um vetor contendo o seno de cada um dos elementos do vetor t. Isso será melhor compreendido quando funções forem abordadas. Note que em códigos como esse a utilização do ponto-e-virgula torna-se interessante para suprir respostas intermediárias desnecessárias.

E

XERCÍCIOS

Exercício 1 Lembrando da descrição matricial de sistemas lineares, tente calcular a resposta desse sistema de equações lineares utilizando manipulação de matrizes.

5 3

3 5

x y

x y

+ =

 + = 

Resposta do sistema: x = 1.5714 e y = 0.2857.

Imagem

Figura 1  O MatLab®.

Referências

Documentos relacionados