Exercícios Resolvidos de Entrar e salvar arquivos de dados

Ver Teoria

Enunciado

A fórmula computacional para a equação generalizada para o fator de compressibilidade Z de um gás é dada por

onde τ = T c / T   ( 0,4   ≤ τ ≤ 1 ) , r = R T c / P c ν , R é a constante do gás em ( M P a   m 3 ) / ( k g   K ) , T é a temperatura em K , P é a pressão em M P a , ν é o inverso da densidade em m 3 / k g , T c e P c são a temperatura e a pressão críticas, respectivamente, e os valores das 33 constantes A j são dados na tabela abaixo e podem ser recuperadas nesta planilha.

Baixe a planilha e no, MATLAB, crie uma função que calcula Z ( r , τ ) . Confira sua função, usando f o r m a t   l o n g   e , com os seguintes valores de teste:

Passo 1

Este exercício é para praticar a função x l s r e a d ( ) do MATLAB. Os valores das constantes A j para calcular o fator de compressibilidade Z , apresentados na tabela do enunciado, estão na planilha abaixo (que você pode acessar e baixar pelo link do enunciado):

A partir dos valores da planilha, você deve construir uma função para calcular Z e verificá-la com os três valores de teste do enunciado.

Passo 2

Antes de usar o MATLAB, salve a planilha em seu computador indo em:

A r q u i v o → F a z e r   d o w n l o a d → M i c r o s o f t   E x c e l   ( . x l s )

O print abaixo mostra onde você deve clicar para fazer o download.

Se você não alterar o nome do arquivo, ele ficará salvo como “constantes.xls”.

Passo 3

Em um script novo do MATLAB, crie uma função para calcular Z . Eu chamei a minha função de f a t o r _ c o m p r e s s a o , mas você pode chamar como quiser. Esta função deve ter duas entradas, r e τ , a partir das quais ela calcula o fator de compressibilidade Z :

Por isso, a minha função f a t o r _ c o m p r e s s a o tem duas entradas, r e t a u , e uma saída Z , que é calculada a partir da equação fornecida pelo enunciado.

A função que calcula Z deve ser salva na mesma pasta onde você salvou a planilha em Excel, pois é na função f a t o r _ c o m p r e s s a o que você carregará os dados de “constantes.xls”. Para isto, digite o seguinte comando na função:

O comando x l s r e a d carrega a planilha Excel de nome “constantes.xls” no MATLAB. Lembre de adaptar o comando ao nome da sua planilha, caso você tenha nomeado o arquivo de outra forma.

A função x l s r e a d ( ) vai criar uma matriz chamada X , contendo os valores numéricos da planilha, e uma matriz de células chamada Y , contendo o cabeçalho da planilha. A matriz X será uma matriz de 33 linhas, cada uma correspondendo a uma constante A j , e 2 colunas, sendo que a primeira coluna contém os índices j e a segunda coluna, as constantes A j .

Passo 4

Após incluirmos o comando para carregar a planilha no MATLAB, vamos criar dois vetores, um contendo a coluna de índices j e outro com as constantes   A j , com as seguintes linhas de código:

Na primeira linha de código, eu crio um vetor chamado J que contém a primeira coluna da matriz X . Logo, o vetor J é composto pelos índices j da tabela do enunciado e vai de 1 a 33 .

Na segunda linha de código, eu crio um vetor A que corresponde à segunda coluna de X , sendo A composto pelas constantes A j da tabela do enunciado, indo de A 1 a A 33 .

Passo 5

O próximo passo é implementar em f a t o r _ c o m p r e s s a o a equação dada pelo enunciado. Para isso, expanda os somatórios e substitua as constantes A 1 , A 2 , ... A 33 por A ( 1 ) ,   A ( 2 ) , . . . , A ( 33 ) . Isso quer dizer que, por exemplo, que a constante A 1 da equação corresponde ao primeiro elemento do vetor A , a constante A 2 ao segundo elemento de A , e assim por diante.

Substitua também o i dos expoentes dos somatórios pelos índices do vetor J correspondente. Por exemplo, no primeiro somatório, temos ∑ i = 1 6 A i τ i - 1   . Em i = 1 , usaremos A 1 , ou seja, A ( 1 ) . Para o expoente, substituiremos i por J ( 1 ) , logo, o termo do primeiro somatório correspondendo a i = 1 ficará com essa cara na nossa implementação no MATLAB:

A 1 * t a u ^ ( J 1 - 1 )

Lembrando que a entrada t a u   de f a t o r _ c o m p r e s s a o corresponde à letra grega τ .

Considerando tudo isso, é para a equação que calcula Z fique com essa cara na sua função:

Eu usei os ... para quebrar a linha de código e ficar mais fácil de ver se eu digitei a equação certinho, recomendo que você faça o mesmo =)

Passo 6

Devemos verificar nossa função para três valores de teste, mudando o formato dos números do MATLAB com o comando f o r m a t   l o n g   e :

Para isto, usaremos o Command Window. Digite no Command Window o comando f o r m a t   l o n g   e e, em seguida, calcule Z ( 1,1 ) com a função f a t o r _ c o m p r e s s a o que você criou, considerando r = 1 e t a u = 1 :

Pelo enunciado, temos que Z ( 1,1 ) = 0,70242396927 e com nossa função encontramos que Z = 0,7024239692890100 , uma diferença de 2,7 ∙ 10 - 9 % . Por enquanto, nossa função tá com uma precisão bem boa =)

Vamos testar agora Z ( 1 / 0,3 ; 1 ) , tendo como entrada da função f a t o r _ c o m p r e s s a o r = 1 / 0,3 e t a u = 1 :

Pelo enunciado, temos que Z ( 1 / 0,3 ; 1 ) = 0,29999999985 e com nossa função encontramos que Z = 0,2999999999775298 , uma diferença de - 4,2 ∙ 10 - 8 % . Outro resultado muito bom!

Finalmente, vamos testar Z ( 2,5 ; 0,5 ) , tendo como entrada de f a t o r _ c o m p r e s s a o r = 2,5 e t a u = 0,5 :

Pelo enunciado, temos que Z ( 2,5 ; 0,5 ) = 0,99221853928 e com nossa função encontramos que Z = 0,9922185392893363 , uma diferença de - 9,4 ∙ 10 - 10 % .

As diferenças entre os valores de teste e as respostas de nossa função são apenas residuais, por isso, podemos considerar que nossa função tá show!

Resposta

Ei, a resposta está no passo a passo :)