Baixe o app para aproveitar ainda mais
Prévia do material em texto
UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 1 Projeto 03 Método do Trapézio (Composto) Método de ⅓ Simpson (Composto) Método de ⅜ Simpson (Composto) Alunos: Arthur Douglas Nekson Professor: Harlei Miguel de Arruda Leite – DECSI-ICEA/JM João Monlevade, Minas Gerais 2016 UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 2 Sumário 1. Código Principal ........................................................................................................ 3 1.1 Regra do trapézio composta ............................................................................... 5 1.2 Regra de ⅓ de Simpson Composto .................................................................... 6 1.3 Regra de ⅜ de Simpson Composto .................................................................... 7 1.4 Impressão dos resultados ................................................................................... 8 2. Caso de Teste 01 ....................................................................................................... 9 3. Caso de Teste 02 ..................................................................................................... 11 4. Caso de Teste 03 ..................................................................................................... 13 UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 3 1. Código Principal A implementação dos métodos desejados foram realizados com o auxilio da ferramenta matemática MATLAB, há existência de um código principal com a chamada das funções responsáveis para a execução dos cálculos para cada método solicitado. clear clc Projeto = 3; fprintf('\n Projeto: %.1f.\n\n', Projeto); %Entrada da função entrada = input('Fornecer a função:\n f(x)= ', 's'); ftexto = strcat('@(x)', entrada); f = str2func(ftexto); %Entrada do Intervalo e dos m(subintervalo) ia = input('Fornecer o intervalo INFERIOR de integração:\n a = '); ib = input('Fornecer o intervalo SUPERIOR de integração:\n b = '); m = input('Fornecer o numero de SUBINTERVALOS:\n m = '); clc; fprintf('Escolha a opção desejada:\n 1 - Para integração com a REGRA DO TRAPEZIO COMPOSTA\n 2 - Para integração com a REGRA DE 1/3 DE SIMPSON COMPOSTA\n 3 - Para integração com a REGRA DE 3/8 DE SIMPSON COMPOSTA\n'); opcao = input('Opção: '); switch opcao case 1 disp('\n****** REGRA DO TRAPÉZIO (Composta) ******') I1 = I1composto(ia,entrada,ib,m,f); %sem restrição para m %função imprime dentro de IXomposto break; case 2 disp('\n*** REGRA DE 1/3 DE SIMPSON (Composta) ***') if(mod(m,2) == 0) %m deve ser multiplo de 2. I2 = I2composto(ia,entrada,ib,m,f); %função imprime dentro de IXomposto else fprintf('O valor de m = %i, não é multiplo de 2\n', m); end case 3 disp('\n*** REGRA DE 3/8 DE SIMPSON (Composta) ***') if(mod(m,3) == 0) %m deve ser multiplo de 3. I3 = I3composto(ia,entrada,ib,m,f); %função imprime dentro de IXomposto else fprintf('O valor de m = %i, não é multiplo de 3\n', m); end otherwise fprintf(' SELEÇÃO INVALIDA\n'); end UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 4 O código principal é composto inicialmente pela leitura dos seguintes itens: a função f(x) que deve ser em função da variável x, deve-se digitar somente a função, visto que o código já realiza a adequação da entrada para uma função de x, a próxima entrada do usuário é o intervalo inferior de integração, em seguida o intervalo superior e posteriormente é inserido o numero de subintervalos ao qual se deseja dividir a função para realizar a integração da mesma. Depois de informado pelo usuário a função, os intervalos e o numero de subintervalos, o programa disponibiliza a escolha do método a ser utilizado, trapézio, 1/3 de Simpson e 3/8 de Simpson, como opção de escolha de 1 a 3, respectivamente. Portanto sendo realizada a escolha do método de integração o programa entra em um caso especifico, que realiza a chamada da função que realiza o calculo solicitado, estas funções são expostas a seguir: UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 5 1.1 Regra do trapézio composta % Função de integração I1composto % Regra do trapézio composta % Fórmula de integração que utiliza um % polinômio interpolador de grau 1, e % subdividindo o intervalo [a,b], em m % subintervalos. % Parâmetros de entrada: % ia = intervalo de integração inferior % ib = intervalo de integração superior % m = numero de subintervalos % f = função a ser integrada(em função da variável x) % I1 = I1composto(ia,ib,m,f); function [I1] = I1composto(ia, entrada, ib, m, f) %Calculando o valor de h h = ((ib-ia)/m); %Criando o vetor xi xi = (ia:h:ib); i = length(xi); %Criando os coeficientes de cortes, regra do trapézio ci(1) = 1; ci(i) = 1; for(a=2:i-1) ci(a) = 2; end for(a=1:i) yi(a) = f(xi(a)); end calc = yi.*ci; I1 = (h/2)*(sum(calc)); Imprime(ib, entrada, ia, m, I1, h, i, xi, yi, ci) end UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 6 1.2 Regra de ⅓ de Simpson Composto % Função de integração I2composto % Regra: 1/3 de SIMPSON composta % Fórmula de integração que utiliza um % polinômio interpolador de grau 2, e % subdividindo o intervalo [a,b], em m % subintervalos, onde m deve ser muti- % plo de 2. % Parâmetros de entrada: % ia = intervalo de integração inferior % ib = intervalo de integração superior % m = numero de subintervalos, deve ser multiplo de 2 % f = função a ser integrada(em função da variavel x) % I2 = I2composto(ia,ib,m,f); function [I2] = I2composto(ia, entrada, ib, m, f) %Calculando o valor de h h = ((ib-ia)/m); %Criando o vetor xi xi = (ia:h:ib); i = length(xi); %Criando os coeficientes de cortes, regra do trapézio ci(1) = 1; for(a=2:2:i-1) ci(a) = 4; ci(a+1) = 2; end ci(i) = 1; for(a=1:i) yi(a) = f(xi(a)); end calc = yi.*ci; I2 = (h/3)*(sum(calc)); Imprime(ib, entrada, ia, m, I2, h, i, xi, yi, ci) end UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 7 1.3 Regra de ⅜ de Simpson Composto % Função de integração I3composto % Regra: 3/8 de SIMPSON composta % Fórmula de integração que utiliza um % polinômio interpolador de grau 3, e % subdividindo o intervalo [a,b], em m % subintervalos, onde m deve ser muti- % plo de 3. % Parâmetros de entrada: % ia = intervalo de integração inferior % ib = intervalo de integração superior % m = numero de subintervalos, deve ser multiplo de 3 % f = função a ser integrada(em função da variavel x) % I3 = I3composto(ia,ib,m,f); function [I3] = I3composto(ia, entrada, ib, m, f) %Calculando o valor de h h = ((ib-ia)/m); %Criando o vetor xi xi = (ia:h:ib); i = length(xi);%Criando os coeficientes de cortes, regra do trapézio ci(1) = 1; for(a=2:3:i-1) ci(a) = 3; ci(a+1) = 3; ci(a+2) = 2; end ci(i) = 1; for(a=1:i) yi(a) = f(xi(a)); end calc = yi.*ci; I3 = (3*h/8)*(sum(calc)); Imprime(ib, entrada, ia, m, I3, h, i, xi, yi, ci) end UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 8 1.4 Impressão dos resultados A impressão dos valores obtidos como resultado é realizado pela função ‘Imprime’, apresentada em todas as funções anteriores destinadas a realizar os cálculos de integração, esta exibe uma breve representação da integral informada pelo usuário, com o limite inferior e superior, a escolha dos subintervalos, a tabela solicitada e o valor obtido para a integral, tal função pode ser observada a seguir: % Função de Imprime % % Recebe como parâmetro os valores de intervalo inferior, % a função digitada, intervalo inferior, subintervalos, % o valor de integral, o passo, o tamanho do vetor formado % através do passo, o vetor xi, o vetor yi e o vetor ci. % % Parâmetros de entrada: % ia = intervalo de integração inferior % entrada = função digitada pelo usuário % ib = intervalo de integração superior % m = numero de subintervalos, deve ser múltiplo de 2 % I = O valor total da integral % h = O passo % i = Tamanho do vetor % xi = vetor x % yi = vetor yh % ci = Vetor de coeficientes % Imprime(ia, entrada, ib, m, I, h, i, xi, yi, ci); function Imprime(ia, entrada, ib, m, I, h, i, xi, yi, ci) fprintf('\n /%.3f', ib); fprintf('\n /%s, com m = %d', entrada, m); fprintf('\n /%.3f\n', ia); fprintf ('\nO Valor do paso h é: %f\n\n', h); fprintf(' i Xi Yi Ci\n'); for(a=0:1:i-1) fprintf(' %i %.4f %.4f %d\n', a,xi(a+1),yi(a+1),ci(a+1)); end fprintf('\n\n O valor da integral é: %.4f\n\n', I); end A função Imprime realiza a exibição de todos os valores desejados. UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 9 2. Caso de Teste 01 Para a realização do primeiro teste, foi utilizada a equação mostrada abaixo a qual foi aplicada à regra do trapézio: Esta função teve como entrada os seguintes itens: O titulo do projeto 03, a função f(x) = (x^3)*log(x), o intervalo inferior a = 1 e o intervalo superior b = 3 e numero de subintervalos m = 4 Posterior a isso ocorre a escolha do método o qual se deseja realizar a integração, neste caso a opção escolhida e a opção 1: REGRA DO TRAPÉZIO COMPOSTA. UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 10 UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 11 3. Caso de Teste 02 Para a realização do primeiro teste, foi utilizada a equação mostrada abaixo a qual foi aplicada à regra de ⅓ de Simpson: Esta função teve como entrada os seguintes itens: O titulo do projeto 03, a função f(x) =1/(1+(x^2)), o intervalo inferior a = 0 e o intervalo superior b = 1 e numero de subintervalos m = 4 Posterior a isso ocorre a escolha do método o qual se deseja realizar a integração, neste caso a opção escolhida e a opção 2: REGRA DE 1/3 DE SIMPSON COMPOSTA. UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 12 UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 13 4. Caso de Teste 03 Para a realização do primeiro teste, foi utilizada a equação mostrada abaixo a qual foi aplicada à regra de ⅜ de Simpson: Esta função teve como entrada os seguintes itens: O titulo do projeto 03, a função f(x) = log((x^3)+sqrt((exp(x))+1)) o intervalo inferior, a = 1 e o intervalo superior b = 4 e numero de subintervalos m = 6 Posterior a isso ocorre a escolha do método o qual se deseja realizar a integração, neste caso a opção escolhida e a opção 3: REGRA DE 3/8 DE SIMPSON COMPOSTA. UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E APLICADAS 14
Compartilhar