IST - Física MEFT - Programação 04:48:06
08 - Jun - 2025
  Página de entrada  
  Informações  
  Avaliação  
  Sumários  
  Séries Semanais  
  Trabalhos Finais  
  Bibliografia  
  Manuais  
  Links Úteis  
  HowTo  
  Pagina Web (Exemplo)  
  Turmas de Laboratório  
  Notas Finais e Marcações  
  Contacto  

HowTo: Matlab


Sumário
1. Introdução
2. Tipos das variáveis
3. Operações básicas
4. Funções básicas
5. Declaração de vectores e matrizes
6. Operações sobre vectores e matrizes
7. Operadores lógicos
8. Funções aleatórias
9. Ciclos
10. Funções matemáticas
11. Impressão de dados
12. Documentação e links úteis
Início

1. Introdução

O Matlab é um software de cálculo numérico especialmente orientado para o cálculo matricial. Dispõe de diversos módulos específicos, permite a utilização de cálculo em GPUs e dispõe de um módulo simbólico (maple).
Início

2. Tipos das variáveis

OperaçãoSignificado OperaçãoSignificado
class(var) Retorna o tipo da variáveis
Início

3. Operações básicas

Início

4. Funções básicas

Início

5. Declaração de vectores e matrizes

OperaçãoSignificado OperaçãoSignificado
V = [ 1 2 3 ] Cria vector linha A = [ 1 2 3 ; 4 5 6 ] Cria matriz de 2x3
V = [ 1 ; 2 ; 3 ; 4] Cria vector coluna A = zeros(2,3) Cria matriz de '0' de 2x3
V = [1:5] Cria o vector linha [1 2 3 4 5] A = ones(2,3) Cria matriz de '1' de 2x3
V = [1:2:10] Cria o vector linha [1 3 5 7 9] A = eye(2,3) Cria matriz identidade de 2x3
V = diag(A) Cria um vector coluna com os valores diagonais de A A = diag(V) Cria matriz com os valores do vector V na diagonal
Início

6. Operações sobre vectores e matrizes

OperaçãoSignificado OperaçãoSignificado
B = k * A Multiplica todos os elementos de 'A' por 'k' B = A.^2 Eleva ao quadrado todos os elementos de 'A'
A.' ou transpose(A) Vector ou matriz transposta B = A^2 Produto matricial 'A * A'
k = det(A) Determinante de 'A' k = trace(A) Traco de 'A'
W = flip(V) Troca a ordem dos elementos de 'V' B = flip(A) Troca a ordem dos elementos de cada coluna de 'A'
V = size(A) Dá as dimensões dum vector ou duma matriz k = length(A) Dá a maior dimensão de 'A'
W = sort(V[,ori]) (Nota 3) Ordem os valores de 'V' B = sort(A[,'opt'][,ori]) (Nota 3) De acordo com 'opt' ordena os elementos das colunas (1) ou das linhas (2)
k = numel(V)
k = numel(A)
Dá o número de elementos dum vector ou duma matriz k = rank(V)
k = rank(A)
Característica (rank) de uma matriz
B = inv(A) Matriz inversa de 'A' B = pinv(A) Matriz pseudo-inversa de 'A'
V = eig(A) Valores próprios de 'A' V = eigs(A) Valores próprios de 'A' ordenados
k = norm(V)
k = norm(A)
Norma de um vector ou de uma matriz k = dot(V1,V2)
k = dot(A1,A2)
Produto interno

Nota 1: Nas exemplificações acima, 'k' é um escalar, 'V' ou 'W' é um vector e 'A' ou 'B' uma matriz.

Nota 2: De um modo geral as operações ponto-operador (exemplo '.^', '.+', ...) aplicam-se termo a termo a vectores e matrizes.

Nota 3: A função 'sort' permite definir a orientação da ordenação através de 'opt' que pode ser 'ascend' (default) ou 'descend'. Por outro lado, para matrizes, pode optar-se por ordenar as linhas ou as colunas sendo respectivamente 'ori' 1 (default) ou 2.

Início

7. Operadores lógicos

OperaçãoSignificado OperaçãoSignificado
Início

8. Funções aleatórias

OperaçãoSignificado OperaçãoSignificado
rng(seed) Reinicia o gerador aleatório de acordo com 'seed' A = randi(9,2,3) Cria uma matriz 2x3 de inteiros aleatórios entre 1 e 9
rand(2,3) Cria uma matriz 2x3 de aleatórios no intervalo [0,1] A = randi([20 50],2,3) Cria uma matriz 2x3 de inteiros aleatórios entre 20 e 50
Início

9. Ciclos

Ciclo 'for'ciclo 'while' Ciclo 'do ... while
for k = inicio:step:fim
    ...
end
------------------------
for v = A
    disp(v)
    ...
end
while (condição para continuar)
    ...
end
while 1
  ...
  if (condição para sair)
      break;
  end
end

Nota 1: No primeiro caso do ciclo 'for', o step é facultativo e se não for indicado é '1'. No segundo caso, mostra-se como o ciclo for pode ter como valor um vector (ou uma matriz) e nesse caso ele vai percorrer todos os seus valores.

Nota 2: Não existe em 'matlab' um ciclo 'do ... while', No entanto, ele pode ser simulado por um 'while' com uma condição de 'break' no final do ciclo.

Início

10. Funções matemáticas

Início

11. Impressão de dados

OperaçãoSignificado OperaçãoSignificado
A Mostra a variável 'A' no ecran disp('Isto é uma string') Mostra uma string
A; Não mostra a variável 'A' no ecran disp(['A = [' num2str(A(:).') ']']) Mostra A como um vector linha
fprintf('k1 = %d\n', k1) Imprime 'k1' e muda de linha
Início

12. Documentação e links úteis

Início