roteiro de práticas 02 - leguni.files.wordpress.com · conforme esperado, uma função exponencial...

6
Sistemas Computacionais e Métodos Numéricos I Curso: Engenharia Elétrica Turma: 5EEAN Roteiro de Práticas 02 Ajuste de curvas Motivação Problema 1: Regressão Linear Os dados abaixo correspondem a medição da corrente (A) num fio para as tensões (V) impostas V 2 3 4 5 7 10 I 5, 2 7, 8 10, 7 13 19, 3 27, 5 Determine o valor a ser obtido pelo amperímetro quando o voltímetro estiver em 3 .5V . (a) Trace um gráfico dos dados (V versus I ). (b) Use a regressão linear por mínimos quadrados para determinar uma função linear na forma I = aV + b que melhor se ajuste aos pontos do conjunto de dados. Mínimos Quadrados Dados o conjunto de dados (x i ,f (x i )),i =0, 1, 2, 3, ..., n com x [a, b]precisamos determinar uma função ϕ(x) f (x). Definimos ϕ(x)= α 1 g 1 (x)+ ··· + α n g n (x), onde g i é uma função contínua em [a, b] e α 1 ,...,α n R. A escolha da função g pode ser feita Por meio da observação do gráfico dos pontos de f . A partir de informações sobre o fenômeno ao qual f se relaciona. O conceito fundamental na aproximação de f (x)por ϕ(x)é o de melhor aproximação, ou seja, procura- se uma função ϕ(x)que minimiza o erro |ϕ(x i ) - f (x i )|,i =0, 1, 2, 3, ..., n No caso discreto procuramos minimizar a função F = n i=1 (ϕ(x i ) - f (x i ) 2 , e no caso contínuo, a função F = R b a (ϕ(x i ) - f (x i ) 2 dx. Analizando o caso discreto temos que F (α 1 ,...,α n )= n i=1 (α 1 g 1 (x)+ ··· + α n g n (x) - f (x i ) 2 Aplicando a condição ∂F (α 1 ,...,αn) ∂α i =0, i (1,..., n)para mínimo de função temos que ∂F (α 1 ,...,αn) ∂α i = n 2 k,j =1 g j (x k )[α 1 g 1 (x k )+ ··· + α n g n (x k ) - f (x k )] = 0 n k,j =1 g j (x k )[α 1 g 1 (x k )+ ··· + α n g n (x k )] = n k=1 g j (x k )f (x k ) 1

Upload: dokhanh

Post on 24-Nov-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

Sistemas Computacionais e Métodos Numéricos ICurso: Engenharia Elétrica Turma: 5EEAN

Roteiro de Práticas 02Ajuste de curvas

Motivação

Problema 1: Regressão Linear

Os dados abaixo correspondem a medição da corrente (A) num fio para as tensões (V) impostas

V 2 3 4 5 7 10I 5, 2 7, 8 10, 7 13 19, 3 27, 5

Determine o valor a ser obtido pelo amperímetro quando o voltímetro estiver em 3 .5 V .

(a) Trace um gráfico dos dados (V versus I ).

(b) Use a regressão linear por mínimos quadrados para determinar uma função linear na formaI = aV + b que melhor se ajuste aos pontos do conjunto de dados.

Mínimos Quadrados

Dados o conjunto de dados (xi, f(xi)), i = 0, 1, 2, 3, ..., n com x ∈ [a, b]precisamos determinar umafunção ϕ(x) ≈ f(x).

Definimos ϕ(x) = α1g1(x) + · · ·+ αngn(x), onde gié uma função contínua em [a, b] e α1, . . . , αn ∈ R.

A escolha da função g pode ser feita

• Por meio da observação do gráfico dos pontos de f .

• A partir de informações sobre o fenômeno ao qual f se relaciona.

O conceito fundamental na aproximação de f(x)por ϕ(x)é o de melhor aproximação, ou seja, procura-se uma função ϕ(x)que minimiza o erro

|ϕ(xi)− f(xi)|, i = 0, 1, 2, 3, ..., n

No caso discreto procuramos minimizar a função F =n∑i=1

(ϕ(xi)−f(xi)2, e no caso contínuo, a função

F =∫ ba (ϕ(xi)− f(xi)

2dx.

Analizando o caso discreto temos que

F (α1, . . . , αn) =n∑i=1

(α1g1(x) + · · ·+ αngn(x)− f(xi)2

Aplicando a condição ∂F (α1,...,αn)∂αi

= 0, ∀i ∈ (1, . . . ,n)para mínimo de função temos que

∂F (α1,...,αn)∂αi

=n

2∑

k,j=1

gj(xk)[α1g1(xk) + · · ·+ αngn(xk)− f(xk)] = 0

n∑k,j=1

gj(xk)[α1g1(xk) + · · ·+ αngn(xk)] =n∑k=1

gj(xk)f(xk)

1

Sistemas Computacionais e Métodos Numéricos ICurso: Engenharia Elétrica Turma: 5EEAN

De onde resulta o seguinte sistema linear:

α1g1(xk)g1(xk) + α2g1(xk)g2(xk) + . . .+ αng1(xk)gn(xk) =n∑

k=1

g1(xk)f(xk)

α1g2(xk)g1(xk) + α2g2(xk)g2(xk) + . . .+ αng2(xk)gn(xk) =n∑

k=1

g2(xk)f(xk)

......

. . ....

...

α1gn(xk)g1(xk) + α2gn(xk)g2(xk) + . . .+ αngn(xk)gn(xk) =n∑

k=1

gn(xk)f(xk)

,

O qual pode ser escrito por meio da seguinte equação matricial Ma = ba11 a12 · · · a1n−1 a1na21 a22 · · · a2n−1 a11...

.... . .

......

an−11 an−12 · · · an−1n−1 an−1n

an1 an2 · · · ann−1 ann

α1

α2

...αn−1

αn

=

b1b2...

bn−1

bn

Dessa forma se aij =n∑k=1

gi(xk)gj(xk) = ajientão a matriz dos coeficientes deste sistema linear é

simétrica e os termos independentes são os bi =n∑k=1

gj(xk)f(xk)

Se as funções giformarem uma base ortogonal para ϕ então aij =

{= 0, se i 6= j

6= 0 se i = j. Dessa forma a

matriz M dos coeficientes é diagonala11 0 · · · 0 00 a22 · · · 0 0...

.... . .

......

0 0 · · · an−1n−1 00 0 · · · 0 ann

α1

α2

...αn−1

αn

=

b1b2...

bn−1

bn

,

logo a solução do sistema pode ser obtida diretamente por meio do cálculo dos αii = biaii

=n∑

k=1gi(xk)f(xk)

n∑k=1

gi(xk)2.

Antes de implementar o algoritmo a seguir resolva manualmente (ou utilize uma planilha eletrônica) o problema de ajuste linear para

o seguite conjunto de dados: xi 0, 3 2, 7 4, 5 5, 9 7, 8yi 1, 8 1, 9 3, 1 3, 9 3, 3

Como se trata de um ajuste linear a função de ajuste é do tipo y = ax + b. Dessa forma precisamos determinar a e b. A equação

matricial do sistema linear tem a seguinte forma

[n

∑xi∑

xi∑x2i

] [ba

]=

[ ∑yi∑xiyi

]⇒[n

∑xi

0 − 1n

(∑xi)

2 +∑x2i

] [ba

]=

[ ∑yi

− 1n

(∑xi∑yi) +

∑xiyi

]

o que resulta na seguinte solução a =n∑

xiyi−∑

xi∑

yin∑

x2i −(

∑xi )

2 = 0 , 2698 e b =a∑

xi−∑

yin

= 1, 656

O gráfico dos pontos dados e a função linear é

2

Sistemas Computacionais e Métodos Numéricos ICurso: Engenharia Elétrica Turma: 5EEAN

Algoritmo Mínimos Quadrados

1) Entrada de dados : vetor x , vetor f ( x ) , va l o r r eque r ido xr2) Calcula os somatór io de x , fx , x∗ fx e x∗xSx <−− sum(x ) ;Sfx <−− sum( fx ) ;Sxfx <−− sum(x .∗ fx ) ;Sxx <−− sum(x . ^ 2 ) ;3) Determina os va l o r e s dos c o e f i c i e n t e s da função de r e g r e s s ã oa <−− (n∗Sxfx − Sx∗Sfx )/ ( n∗Sxx − Sx^2) ;b <−− ( Sxx∗Sfx − Sxfx∗Sx )/ ( n∗Sxx − Sx^2) ;5) Aval iação da função no ponto reque r ido xry = a ( xr ) + b

Solução do problema 1: I ≈ 9, 23638A

Problema 2

A queda de tensão elétrica através de indutor segue a lei de Faraday: VL = Ldidt , onde VL é a queda

de tensão (em volts), L é a indutância (em henrys: 1 H = 1 V .s/A) e i é a corrente (em ampéres).Utilize os seguintes dados para fazer uma estimativa de L.

didt (A/s) 1 2 4 6 8 10VL (V ) 5, 5 12, 5 17, 5 32 38 49

Linearização de equações não-lineares

Problema 3

Um experimento com um circuito RC é usado para determinar a capacitância de um capacitor. Nocircuito, figura abaixo, um resistor de 5x106 ohms é conectado em série com o capacitor C e umabateria.

O experimento começa com o fechamento da chave e a medição da tensão vR nos terminais doresistor em intervalos de 2 segundos, ao longo de 30 segundos. Os dados medidos no experimentossão:

t(s) 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30vR(V ) 9, 7 8, 1 6, 6 5, 1 4, 4 3, 7 2, 8 2, 4 2, 0 1, 6 1, 4 1, 1 0, 85 0, 69 0, 6

Teoricamente, a tensão no resistor em função do tempo é dada pela função exponencial:

vR = ve(−t/RC)

Determine a capacitância do capacitor ajustando a função exponencial aos dados medidos.

Funções não-lineares

Função de potência: y = bxm

Função exponencial: y = bemx ou y = b10mx

Função inversa: y = 1mx+b ou y = mx

x+b

3

Sistemas Computacionais e Métodos Numéricos ICurso: Engenharia Elétrica Turma: 5EEAN

Linearizando funções não-lineares

Vamos linearizar a função y = bxm

y = bxm −→ ln(y) = ln(bxm) = mln(x) + ln(b)

Considerando ln(y) = Y ,m = a1 ,ln(x) = X e ln(b) = a0 obtemos a função linear Y = a1X + a0.Assim podemos aplicar uma regressão linear por mínimos quadrados para ajustar um conjunto depontos (xi, f(xi)). Com base nos valores de a1e a0em Y = a1X + a0, podemos calcular b e m emy = bxm pois, b = ea0 e m = a1.

Para outras funções não-lineares confira as transformações possíveis na tabela a seguir:

Equação Forma linear Y = a1X + a0 Valores para regressão linear

y = bxm ln(y) = mln(x) + ln(b) Y = ln(y) ,X = ln(x), a1 = m,a0 = ln(b) ln(xi) e ln(yi)

y = bemx ln(y) = mx+ ln(b) Y = ln(y) ,X = x, a1 = m,a0 = ln(b) xi e ln(yi)

y = b10mx log(y) = mx+ log(b) Y = log(y) ,X = x, a1 = m,a0 = log(b) xi e log(yi)

y = 1mx+b

1y

= mx+ b Y = 1y,X = x, a1 = m,a0 = b xi e 1

yi

y = mxx+b

1y

= bmx

+ 1m

Y = 1y,X = 1

x, a1 = b

m,a0 = 1

m1xi

e 1yi

Considerações sobre a escolha da função a ser linearizada apropriada para realizar o ajuste:

• Quando possível, verificar a equação matemática que modela o fenômeno;

• Plotar o gráfico do pontos conforme indicação da tabela a seguir;

• Funções exponenciais: não podem passar pela origem e todos os valores de y são positivos ounegativos;

• Funções logarítmicas: não podem incluir x = 0 ou valores negativos de x;

• Função de potência: y = 0 quando x = 0;

• Função inversa: não pode incluir y = 0

Equacao Gráficos onde os dados parecem se ajustar a uma reta

y = bxm loglog (x vs. y) ou linear (ln(x) vs. ln(y))

y = bemx semilog (x vs. y) ou linear (x vs. ln(y))

y = b10mx semilog (x vs. y) ou linear (x vs. ln(y))

y = 1mx+b

linear (x vs. 1y)

y = mxx+b

linear ( 1xvs. 1

y)

Exercício 1

Para os dados do problema inicial a função exponencial é adequada. Construa um programa queplote os gráficos semi-log (x vs. y) ou linear (x vs. ln(y)) e analise os resultados:

Exercício 2

Repita o mesmo procedimento para as outras funções lineares adequando o gráfico conforme aúltima coluna da tabela acima. Com base nos gráficos gerados avalie quais modelos poderiam serutilizados para linearizar a função do problema 3.

4

Sistemas Computacionais e Métodos Numéricos ICurso: Engenharia Elétrica Turma: 5EEAN

Resolvendo o problema de capacitância.

Conforme esperado, uma função exponencial se ajusta bem aos dados. Para resolver o problemainicial, primeiramente determinamos as constantes b e m na função exponencial v = bem. Isso éfeito com a linearização dessa equação e com o uso da regressão linear por mínimos quadrados. Aregressão linear por mínimos quadrados foi desenvolvida na Prática 2. As entradas da função sãoos valores (ti, ln(vR)i) . Obtidos b e m , o valor de C é determinado igualando-se os coeficientes noexpoente de e em vR = ve(−t/RC):

−1RC = m −→ C = −1

Rm

Exercício 3

Construa um programa que resolva o problema de capacitância. Utilize o algoritmo abaixo.

Programa ajuste com linearização de função não-linear

Algoritmo

1) Entrada de dados : texp , vexp ,R = 5e62) Calcu le ln ( y i ) para uso na r e g r e s s ã o l i n e a r : lnvexp = log ( vexp ) ;3) Ca lcu le os c o e f i c i e n t e s a0 e a1 por meio o método dos mínimos quadrados . U t i l i z a r a função de r e g r e s s ã o l i n e a r reg_l in ( ) .No programa p r i n c i p a l chame a função por meio da d i r e t r i z : r eg_l in ( texp , lnvexp )4) Calcu le b a a p a r t i r de ln (b) = a0 : b = exp ( a0 )5) Ca lcu le C u t i l i z a ndo (−1/Rm) , onde m = a1 : C = (−1)/(R∗a1 )6)Gere um domínio l i n e a r i z ado , onde 0 < t < 30 ;7)Gere uma imagem l i e n a r i z a d a : v = b∗exp ( a1∗ t ) ;8) Escreve os r e su l t ado s de a1 , a0 , b e C num arquivo de sa ída .9) Plote g r a f i c o dos pontos e da função de r e g r e s s ã o .

Implementação da função definida pelo usuário reg_lin()

double reg_l in (x , fx )% função r e g r e s s ã o l i n e a r c a l c u l a os c o e f c i e n t e s a e b da equação l i n e a r% y = a∗x + b que melhor a ju s ta os n pontos do conjunto de dados (x , fx )%Esta função deve s e r i n s e r i d a no mesmo arquivo do programa p r i n c i p a lnx = length (x ) ;nfx = length ( fx ) ;i f ( nx ~= nfx ){

f p r i n t ( ’O número de e lementos de x deve s e r i g ua l ao numero de e lementos de fx . ’ )}e l s e {

Sx = sum(x ) ;Sfx = sum( fx ) ;Sxfx = sum(x .∗ fx ) ;Sxx = sum(x . ^ 2 ) ;

a = (nx∗Sxfx − Sx∗Sfx )/ ( nx∗Sxx − Sx^2) ;b = (Sxx∗Sfx − Sxfx∗Sx )/ ( nx∗Sxx − Sx^2) ;

}

Valor esperado para C = 1 .9968e−06 ≈ 2 µF

5

Sistemas Computacionais e Métodos Numéricos ICurso: Engenharia Elétrica Turma: 5EEAN

Problema 4

Um anemômetro de fio quente é um dispositivo usado para medir a velocidade de fluxo a partir doefeito de resfriamento causado pelo fluxo na resistência de um fio quente.

Os dados a seguir são obtidos em testes de calibração.

Teste 1 u(m/s) 1, 44 3, 81 6, 11 8, 63 11, 42 12, 63 14, 75 16, 78V (volt) 7, 18 7, 3 7, 37 7, 42 7, 47 7, 5 7, 53 7, 55

Teste 2 u(m/s) 20, 35 18, 03 16, 03 14, 39 13, 03 9, 97 7, 75 2, 49V (volt) 7, 58 7, 56 7, 55 7, 53 7, 51 7, 47 7, 44 7, 28

Exercício 1.

Determine os coeficientes A e B da função exponencial u = AeBV que faz o melhor ajuste dos dadospara cada teste cujos valores estão nas tabelas acima.

Exercício 2.

Trace um gráfico com os pontos do conjunto de dados de cada teste e os respectivos modelos deajuste.

Problema 5

No processo de fabricação de fibras eletroforéticas, o diâmetro d da fibra está relacionado à correnteI . Os seguintes dados são medidos durante a produção:

I(nA) 300 300 350 400 400 500 500 650 650d(µm) 22 26 27 30 34 33 33, 5 37 42

A relação entre a corrente e o diâmetro pode ser modelada com uma equação na forma d = a + b√I

. Use os dados para determinar as constantes a e b da equação que fazem o melhor ajuste dosdados.

6