Curso de Matlab

Curso de Matlab

(Parte 3 de 11)

As matrizes também podem ser definidas através de informação armazenada em arquivos. O MATLAB trabalha com dois tipos diferentes de arquivos: Os arquivos MAT e os arquivos ASCII.

Os arquivos MAT

Os arquivos MAT são gerados por um programa MATLAB usando o comando save, que contém o nome do arquivo e as matrizes que devem ser armazenadas. A extensão .mat é automaticamente adicionada ao nome do arquivo. Assim, para salvar matrizes A, B e C, em um arquivo .mat nomeado “teste_1” devemos fazer:

save teste_1 A B C;

Para recuperar as matrizes no programa MATLAB, usamos o comando: load teste_1

Arquivos ASCII

Um arquivo ASCII que será usado juntamente com um programa MATLAB deve conter informação exclusivamente numérica, e cada linha do arquivo deve conter o mesmo número de dados. O arquivo pode ser gerado utilizando um processador de texto ou, por exemplo, utilizando programas como o Fortran ou ainda, por um programa MATLAB usando a seguinte forma do comando save:

save teste_1.dat R /ascii

Cada linha da matriz R será escrita para linhas distintas no arquivos de dados.

Recomenda-se utilizar a extensão .dat para ser mais fácil distingui-los dos arquivos MAT e dos arquivos M.

O comando load seguido do nome do arquivo irá recuperar a informação da matriz R. load teste_1.dat;

Operador Dois Pontos ( : )

Suponha que queiramos armazenar a primeira coluna da matriz data1 em um vetor x, e a segunda coluna em um vetor y. O uso do operador dois pontos (:) é útil na criação de matrizes ou vetores. Dependendo do argumento, pode significar todas as linhas ou todas as colunas da matriz-referência. Para o nosso exemplo, temos:

Curso de MATLAB

Cap. 2 – Matrizes, Vetores e Escalares8 data1 = [0.0,0.0; 0.1 0.2; 0.3 0.6]; x = data1 ( : , 1); y = data1 ( : , 2 );

Os elementos do vetor x correspondem à primeira coluna de data1. O segundo comando cria um vetor y cujos elementos correspondem à segunda coluna da matriz data1. Se quiséssemos criar um vetor z cujos elementos sejam os elementos da primeira linha da matriz data1, devemos fazer:

z = data1(1, : );

Se o operador dois pontos for usado na seguinte notação: H = 1 : 8;

A matriz H contém os valores 1, 2, 3, 4, 5, 6, 7 e 8. O operador “ : ” entre os dois números inteiros gera todos os inteiros entre os dois números especificados. Se for usado para separar três números, os dois pontos gerarão valores entre o primeiro e terceiro números, usando o segundo número como incremento. A notação abaixo gera um vetorlinha denominado TEMPO que contém os números de 0.0 a 5.0 com incrementos de 0.5:

TEMPO = 0.0 : 0.5 : 5.0;

O incremento também pode ser um valor negativo como: VALORES = 10 : -1: 0;

Os elementos de VALORES são 10, 9, 8, 7, 6, … 0.

O operador dois pontos pode também ser usado para selecionar uma sub-matriz de uma outra matriz. Por exemplo, considere a matriz abaixo:

C = [-1,0,0;1,1,0; 1,-1,0; 0,0,2];

Se executarmos os comandos:

PARTE_1 = C ( : , 2:3); PARTE_2 = C (3:4, 1:2);

Definimos as matrizes:

PARTE_1 = [ 0 0; 1 0; -1 0; 0 2]; PARTE_2 = [1 –1; 0 0];

Curso de MATLAB

Cap. 2 – Matrizes, Vetores e Escalares9

Observações:

· O MATLAB reconhece uma matriz ‘vazia’. Há várias maneiras de gerá-la. Como exemplo, temos:

A = [ ] B = 4: -1: 5

• A expressão C ( : ) equivale a uma longa matriz coluna que contém a primeira coluna de C, seguida pela segunda coluna de c e assim por diante.

E x e r c í c i o s Determine as ordens e o conteúdo das matrizes abaixo. Use a matriz G como referência.

Verifique suas respostas usando o MATLAB.

Solução:

Curso de MATLAB

Cap. 2 – Matrizes, Vetores e Escalares10

Comando Input

Você pode entrar com os valores da matriz, via teclado, utilizando o comando input que mostra um texto e então espera por uma entrada. Considere o comando:

z = input ( ‘Valores de z: ’);

Quando este comando é executado, o texto “ Valores de z: ” é mostrado na tela. O usuário pode entrar com uma expressão como [ 5.1 6.3 -18.0] o qual especifica valores para z. Já que o comando input termina com um ponto-e-vírgula, os valores de z não são imprimidos quando o comando é executado.

Imprimindo Matrizes

O modo mais simples de imprimir uma matriz é entrar com seu nome. O nome da matriz é repetido, os valores da matriz serão imprimidos na próxima linha. Existem vários comandos que podem ser usados para alterar a saída a ser imprimida.

Comando format Suponha os comandos abaixo:

24 62.2000 4.8000 7.4000

» a = [1 2 3];» T = [ 1.1 2.4 3.7]; » c = 2*a» U = 2*T c = U =

Por definição, se o elemento de uma matriz for um número inteiro, o MATLAB apresenta o resultado como número inteiro. Se o elemento for um número real, o MATLAB apresenta-o com cinco dígitos significativos, ou seja, quatro dígitos à direita do ponto decimal. Podemos alterar o formato numérico utilizando o comando format.

Exemplo: Seja uma variável A que armazene a raiz quadrada de 2. » A = sqrt(2)

De acordo com o formato numérico escolhido, a variável A pode estar apresentada sob a forma:

(Parte 3 de 11)

Comentários