Escolar Documentos
Profissional Documentos
Cultura Documentos
10 Matlab PDF
10 Matlab PDF
SAÍDA (‘ ’, max);
( ).
PARE.
Workspace
Window
Local onde as
operações podem ser Command
diretamente feitas History
Window
Lista de comandos
realizados, organizados
por data de execução,
Command Window permitindo o comando ser
realizado novamente com
Aula 10 – MATLAB - Zeros de funções
Cálculo Numérico
duplo clique 6/47
Editor – Script File
¨ M-file
¨ File > New > M-file
% no MATLAB
// no SCILAB.
Operação Símbolo
Igualdade ==
Desigualdade ~=
Maior ou igual >=
Menor ou igual <=
>> syms x
>> syms a, b, c
>> diff(f(x),x,n)
>> x = -5:0.5:5;
>> y = x.^3 – 9 * x + 3;
>> plot(x,y);
>> hold on
>> fplot(‘log10(x)’, [0.1,6]
>> fplot(‘1/x’, [0.1,6])
>> hold off
¨ A cada vez que o programa for rodado ele mesmo pedirá as
variáveis, logo não será necessário mudar o código
original do programa e haverá uma maior interação entre o
programa e o usuário (não necessariamente um
programador).
Aula 10 – MATLAB - Zeros de funções
Cálculo Numérico 27/47
Comando disp e input
¨ Vamos utilizar o comando disp junto com o comando
input.
¨ Exemplo:
& E lógico
|| OU lógico
~ NÃO lógico
Exemplo:
¨
>> if <condição>
>> <comandos>
>> end
Exemplo:
¨
Exemplo:
¨
>> p = (a+b)/2;
¨ Função: f
opostos:
ENTRADA: função f, extremidades a, b; precisão ‘erro’, número
máximo de iterações ‘max’.
SAÍDA: solução aproximada x ou mensagem de erro.
Passo 1: Faça i = 1;
SAÍDA (‘ ’, max);
( ).
PARE.
disp('Insira a função');
f = input('','s');
i = 1;
while (i < max)
p = (a+b)/2;
if (abs(subs(f,p))<
subs(f,p) == 0 erro
|| abs(b – a) –< a)
|| abs(b erro )
< erro)
fprintf('A raiz é: %d\n', p);
fprintf(‘O número de iterações foi:
%i', i);
break
end Aula 10 – MATLAB - Zeros de funções
Cálculo Numérico 41/47
Implementação
i = i + 1;
if (subs(f,p))*(subs(f,a))
(subs(f,p))*(subs(f,b)) >
< 0
a = p;
else
b = p;
end
end
Passo 1: Faça i = 1;
Passo 2: Enquanto i ≤ N0 , execute os passos 3 a 6.
Passo 3: Faça x = x0 – f (x0) / f’ (x0); (Calcula xi)
Passo 4: Se (x – x0) < ε, então:
SAÍDA (x); (Procedimento concluído com sucesso).
PARE.
error = 0;
max=input('Entre com o número máximo de iterações: ');
i = 0;
disp(' i Aula 10 – MATLAB
xi - Zeros de funções
error’)
Cálculo Numérico 45/47
Implementação
while (i <= max)
fprintf('\t%i\t%3.8f\t%f\n', i, x, error);
p = x;
x = x - f(x)/df(x);
error = abs(x - p);
if error < tol
i = i + 1;
fprintf('\t%i\t%3.8f\t%f\n', i, x, error);
break
end
i = i + 1;
end
Aula 10 – MATLAB - Zeros de funções
Cálculo Numérico 46/47
REFERÊNCIA