IST - Física HowTo - Informática 11:01
2025-12-22
  Programação
 
     Matlab
 
        Pacotes (Toolboxes)
 
        Comandos básicos
 
        Funções Aleatórias
 

Matlab - Comando básicos

Sumário
1. Introdução
2. Informação sobre alguns pacotes de matlab
3. Tipos das variáveis
4. Operações básicas
5. Funções básicas
6. Declaração de vectores e matrizes
7. Operações básica sobre vectores e matrizes
8. Outras operações sobre vectores e matrizes
9. Operadores lógicos
10. Funções aleatórias
11. Ciclos
12. Funções matemáticas
13. Funções estatísticas
14. Impressão de dados
15. Gráficos
16. 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. Informação sobre alguns pacotes de matlab

A informação sobre pacotes específicos do matlab encontra em HowTo - Matlab: Pacotes.
Início

3. Tipos das variáveis

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

4. Operações básicas

OperaçãoSignificado OperaçãoSignificado
a = 2 + 3 + 4;Soma a = 10 - 4 - 3;Subtração
a = 2 * 3 * 4;Multiplicação a = 10 / 4 / 3;Divisão
a = mod(29, 7);Resto da divisão (módulo) a = 4 ^ 3;Potência
Início

5. Funções básicas

OperaçãoSignificado OperaçãoSignificado
a = floor(x);Inteiro inferior ou igual a = ceil(x);Inteiro superior ou igual
a = round(x);Inteiro mais próximo a = fix(x);Se x>0 é floor(x);se x<0 é ceil(x)
Início

6. 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

7. Operações básica 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

8. Outras operações sobre vectores e matrizes

  • cell2mat: Converter vetores sequenciais (células) em vetores normais.
  • con2seq: Converter vetores concorrentes em vetores sequenciais (células).
  • gsubtract: é uma função de subtração geral que pode operar em matrizes de células.
  • subtract: Diferença entre dois objectos poligonais a 2-dim.
Início

9. Operadores lógicos

OperaçãoSignificado OperaçãoSignificado
Início

10. Funções aleatórias

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

11. 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

12. Funções matemáticas

Início

13. Funções estatísticas

Início

14. 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

15. Gráficos

O matlab permite diversos tipos de gráficos bem bomo fazer a sua sobreposição:
  • stem: Deseja um gráfico discreto. Pode tomar diversas formas de acordo com os argumentos usados:
    stem(Y)Traça o gráfico de 'Y' com o 'X' em [0 1 2 ... ]
    stem(X,Y)Traça o gráfico 'X', 'Y'
    stem(tbl,yvar)Traça o gráfico da tabela 'tbl' com nome
    stem(tbl,xvar,yvar)Traça o gráfico da tabela 'tbl' com nomes
    Para além disto, permite ainda definir a marca do ponto, os tipos de cores bem como o tipo de linha a utilizar:
    stem([0:0.2:10],sin([0:0.2:10]),':diamondr','MarkerFaceColor','red','MarkerEdgeColor','green','LineStyle','-.');
Início

16. Documentação e links úteis

Início