12.3 Divisão Elemento a Elemento './'

Não existe qualquer definição matemática para a divisão de um vector por outro, no entanto, em Matlab , o operador './' é definido para dar a divisão elemento por elemento, e é por isso apenas definido para vectores do mesmo comprimento e tipo:
 » a = 1:5, b = 6:10, a./b
 a =
     1 2 3 4 5
 b =
     6 7 8 9 10
 ans =
     0.1667 0.2857 0.3750 0.4444 0.5000
 » a./a
 ans =
     1 1 1 1 1
 » c = -2:2, a./c
 c =
    -2 -1 0 1 2

 Warning: Divide by zero
 ans = -0.5000 -2.0000 Inf 4.0000 2.5000

No último calculo é efectuada uma divisão por 0 que produz um aviso (warning) e que resulta num 'Inf', denotando o infinito.

  » a.*b -24, ans./c
  ans = -18 -10 0 12 26

  Warning: Divide by zero
  ans = 9 10 NaN 12 13

Neste caso o utilizador é alertada para um 0/0 que resulta num não numérico ('NaN').

Exemplo 12.2   Estime o valor do limite:

\begin{displaymath}\lim_{x\rightarrow 0}\frac{sin\pi x}{x} \end{displaymath}

A chave para a estimação é observar o comportamento da razão $\frac{\sin\pi x}{x}$ para uma sequência de valores que se aproxima de zero. Supondo que se escolhe uma sequência definida pelo vector coluna:
  » x = [0.1; 0.01; 0.001; 0.0001]
então
  » sin(pi*x)./x
  ans =
      3.0902
      3.1411
      3.1416
      3.1416
  »
o que sugere que os valores convergem. Para obter um melhor impressão subtraímos o valor de $\pi$ de cada elemento do resultado e para mostrar mais casas decimais, alteramos o formato para:
  » format long
  » ans -pi
  ans =
     -0.05142270984032
     -0.00051674577696
     -0.00000516771023
     -0.00000005167713
  »

Como se explica o padrão revelado nestes números?

Para dividir um escalar por um vector também necessitamos uso o operador './'.

  » 1/x
  ??? Error using ==> /
  Matrix dimensions must agree.
  » 1./x
  ans =
      10 100 1000 10000
concluímos que '1./x' funciona, mas '1/x' não.
Rodrigo Maia 2003-10-07