TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Erros Numéricos com Matlab

Por:   •  31/8/2018  •  Trabalho acadêmico  •  1.056 Palavras (5 Páginas)  •  185 Visualizações

Página 1 de 5

INSTITUTO FEDERAL DO TRIÂNGULO MINEIRO[pic 5][pic 6]

CAMPUS PARACATU

[pic 7]




Resumo

Foi elaborado um programa capaz de realizar operações de captura de valores de erros numéricos.

Palavras-chave - [Erro numérico.].

Sumário

1  Introdução        04

2  Desenvolvimento        05

3  Conclusão        15



  1. Introdução

Um processo bem complicado de se fazer é definir valores de erros absolutos e relativos, porém, usando métodos computacionais para nos ajudar, esta missão se torna bem mais tranquila.


  1. 2  Desenvolvimento

          O código de programação a seguir trás consigo a explicação detalhada de cada comando em forma de comentário em suas respectivas linhas. São mostrados na cor verde.

Questão 1

1. Calcule um limite superior do erro absoluto e do erro relativo no cálculo da expressão f(x,y,z) = −x+y2 +sen(z), sabendo que são usados os seguintes valores aproximados:

x = 1.1(δx = 0.05); y = 2.04(δy = 0.005); z = 0.5rad. (δz = 0.05). Quantos algarismos significativos tem o valor calculado de f?

Código usado para resolução:

function [ output_args ] = Untitled( input_args )

 

clear all

close all

clc

 

syms x y z 

fun=-x+y^2+sin(z)

 

dx=diff(fun,x)          %Derivada parcial da função em relação a "x"

dy=diff(fun,y)          %Derivada parcial da função em relação a "y"

dz=diff(fun,z)          %Derivada parcial da função em relação a "z"

 

x1=1.1;ex=0.05;

y1=2.04;ey=0.005;

z1=0.5;ez=0.05;

 

%calculo da incerteza:

a=x1-ex;b=x1+ex;

c=y1-ey;d=y1+ey;        %Atribui o erro tanto para cima quanto para baixo

e=z1-ez;f=z1+ez;

 

%incerteza:

disp('Intervalos de incerteza')

sprintf('%f<=x<=%f',a,b)

sprintf('%f<=y<=%f',c,d) %O comando sprintf mostra o valor dentro da

sprintf('%f<=z<=%f',e,f) %variável, como na programação em c

 

format long                  %Faz com que seja exibido até 16 algarismos após a vírgula

F=eval(subs(fun,{x,y,z},{x1,y1,z1})) %eval extrai o valor real de uma variável simbólica

 

format short                 %Faz voltar a ser exibido 4 casas após a vírgula

MX=eval(subs(abs(dx),x,b))   %eval extrai o valor de uma variavel simbolica %subs substitui em alguma função o valor das variáveis

MY=eval(subs(dy,y,d))        %abs extrai o modulo de qualquer numero ou variável

MZ=eval(subs(dz,z,e))        %são os majorantes(maior valor) das derivadas no intervalo de erro das suas respectivas variáveis.

 

 

eF=MX*ex+MY*ey+MZ*ez;        %formula fundamental do erro

disp('Valores de erro absoluto e do erro relativo')

sprintf('eF<=%.9f,  eF/abs(F)<=%.9f',eF,eF/abs(F))

n=-20;

while eF>0.5*10^n % indica a potencia de base 10 e coeficiente 0.5 que é a primeira a se tornar maior que o erro da função, isso nos ajuda a encontrar a quantidade de números significativos.

n=n+1;  

end

 

sprintf('%.10fx10^%.0f\n    \n0.5x10^%.0f',F,n,n)

sprintf('O valor significativo é: %.0f',F/10^n-0.5)

end

Resultado exibido na tela:

fun =

 

y^2 - x + sin(z)

 

 

dx =

 

-1

 

 

dy =

 

2*y

 

 

dz =

 

cos(z)

 

Intervalos de incerteza

ans =

1.050000<=x<=1.150000

ans =

2.035000<=y<=2.045000

ans =

0.450000<=z<=0.550000

F =

   3.541025538604203

MX =

     1

MY =

    4.0900

MZ =

    0.9004

Valores de erro absoluto e do erro relativo

ans =

eF<=0.115472355,  eF/abs(F)<=0.032609862

ans =

3.5410255386x10^0

   

0.5x10^0

ans =

O valor significativo é: 3

>>

Questão 2:

2. Uma corrente eléctrica atravessa uma resistência R de 20Ω. A resistência foi medida com um erro relativo que não excede 0.01. A intensidade da corrente I é 3.00±0.01 A. Sabendo que a tensão da corrente é dada por V = RI, determine um limite superior do erro absoluto no cálculo da tensão da corrente. Quantos algarismos significativos garante para o valor calculado da tensão?

...

Baixar como (para membros premium)  txt (7.9 Kb)   pdf (173.6 Kb)   docx (27.5 Kb)  
Continuar por mais 4 páginas »
Disponível apenas no TrabalhosGratuitos.com