Buscar

EQE112__Apostila_Cap4

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Introdução aos Processos Químicos 
109 
 
Capítulo 4 - INTRODUÇÃO AO USO DO MATLAB 
 
4. 1 - Objetivo 
 O objetivo deste Capítulo é permitir ao aluno dominar o conceito, a lógica e os 
comandos básicos presentes no Matlab. Pretende-se também familiarizar o aluno que 
nunca teve contato com programação com conceitos elementares presentes em 
diversas linguagens de computação científica. 
 É importante que a leitura seja acompanhada da realização de exercícios no 
próprio Matlab, permitindo assim uma melhor compreensão dos tópicos apresentados. 
Para orientar este estudo, há uma seqüência de exemplos ao longo do texto com 
tarefas computacionais com dificuldade crescente e compatíveis com o assunto recém 
abordado. 
 
4.2 - Introdução 
 Com o desenvolvimento da indústria de informática, máquinas cada vez mais 
poderosas passaram a estar disponíveis a um custo cada vez menor. Este fenômeno 
alterou de forma marcante os rumos das ciências da engenharia, permitindo precisão e 
velocidade no processamento de informações. Em virtude deste cenário, o domínio 
das principais ferramentas computacionais passou a ser um requisito básico para o 
engenheiro moderno. 
 Apesar da existência no mercado de um grande número de programas para a 
resolução dos mais diversos problemas de engenharia, um profissional deve conhecer 
os fundamentos de, pelo menos, uma linguagem de programação, uma vez que o 
desenvolvimento de ferramentas computacionais é uma atividade de grande 
importância nas áreas acadêmica, de pesquisa, de desenvolvimento e de engenharia 
básica. É comum a crença, principalmente entre iniciantes, de que os simuladores de 
processos comerciais são capazes de resolver todo e qualquer tipo de problema. Isto 
não é verdade, nenhum programa disponível tem utilização universal. É muito comum 
a necessidade de que o usuário, na solução de um problema específico de seu 
interesse, seja obrigado a programar módulos para serem acoplados aos programas 
comerciais, tornando-os assim passíveis de serem utilizados. 
Introdução aos Processos Químicos 
110 
 O Matlab (Matrix laboratory) é um ambiente, que permite o desenvolvimento 
de programas (rotinas) computacionais, semelhante a uma linguagem de programação 
(FORTRAN, PASCAL, BASIC, etc.). Ele dispõe ainda de poderosos recursos para a 
apresentação de resultados gráficos e processamento de matrizes. 
 Apesar do Matlab ser bastante versátil, o desenvolvimento de programas no 
ambiente Matlab é uma tarefa mais simples do que as análogas utilizando as 
linguagens de programação tradicionais. 
 
4.3 – Ambiente de Trabalho 
 Quando o Matlab é acionado, surge na tela do computador uma janela (janela 
de comando/command window) com um pequeno texto introdutório na parte superior. 
Logo abaixo, a esquerda, aparece o símbolo ( » ), com o cursor piscando ao lado. Essa 
linha é chamada linha de comando (command line). 
 É através da janela de comando que o usuário se comunica com o software, 
introduzindo as instruções através da linha de comando, com o acionamento da tecla 
ENTER. O símbolo ( » ) indica que o software está pronto para receber as instruções 
do usuário. 
• Exemplo 4.3.1: 
 Digite: » 238*436 
Nota: Não esqueça de pressionar, após a digitação, a tecla ENTER. Lembre-se que 
esta observação vale para todos os exemplos apresentados. 
 Observe que o resultado da operação de multiplicação digitada na linha de 
comando aparece logo abaixo dessa linha, precedida por: ans = . 
• Exemplo 4.3.2: 
 Digite: » clc (este comando apaga a tela) 
 
• Exemplo 4.3.3: 
 Digite: » 258/652 , 56*48 
A vírgula permite que mais de um comando seja introduzido de uma só vez. O Matlab 
executa os comandos da esquerda para a direita e apresenta os resultados, um acima 
do outro, na ordem de execução. 
 
Introdução aos Processos Químicos 
111 
4.4 - Acesso ao “Help” 
 A existência de um comando de ajuda (“help”) no Matlab permite ao 
estudante, uma vez dominando os comandos básicos do software, explorar ao longo 
do tempo uma quantidade cada vez maior de recursos, em um processo de auto-
aprendizado contínuo. 
 O comando “help” pode ser acessado através da barra de menu (como qualquer 
“software for Windows” convencional) ou diretamente da linha de comando, como 
indica o exemplo: 
• Exemplo 4.4.1: 
 » help quad 
 
4.5 - Operações Aritméticas 
 A linha de comando pode ser utilizada como uma calculadora científica, como 
nos Exemplos 4.3.1 e 4.3.3. No quadro a seguir são apresentados os símbolos que 
representam cada operação aritmética: 
Operação Símbolo Operação Símbolo 
Soma + Divisão / 
Subtração - Potenciação ^ 
Multiplicação * 
 
4.5.1 - Funções 
 O Matlab disponibiliza um grande número de funções matemáticas. Exemplos 
destas funções podem ser encontrados na tabela a seguir: 
Função Comando Função Comando 
Módulo de x abs(x) seno de x sin(x) 
Raiz quadrada de x sqrt(x) cosseno de x cos(x) 
Exponencial (base natural) exp(x) tangente de x tan(x) 
Logaritmo natural de x log(x) arco-seno de x asin(x) 
Logaritmo decimal de x log10(x) arco-cosseno de x acos(x) 
Resto de x/y rem(x,y) arco-tangente de x atan(x) 
 
 As funções indicadas são representadas por expressões com letras minúsculas, 
seguidas dos argumentos entre parênteses. Como será visto adiante, o Matlab vê 
diferença entre letras minúsculas e letras maiúsculas. Todos os comando Matlab são 
em letras minúsculas. 
Introdução aos Processos Químicos 
112 
 Outro ponto importante é que os argumentos das funções trigonométricas e os 
resultados de suas inversas são expressos em radianos. 
 Deve-se tomar cuidado para não fazer confusão ao utilizar as funções 
logarítmicas. Em textos, a notação usual para o logaritmo na base natural é ln(x) – a 
função correspondente no Matlab é log(x) - enquanto o logaritmo na base 10 é 
normalmente representado por log(x) – no Matlab log10(x). 
 
4.5.2 - Ordem dos Cálculos 
 Os cálculos aritméticos são realizados sempre segundo a seguinte ordem: 
 1) Operações dentro dos parênteses (interno → externo); 
2) Funções; 
3) Potenciação; 
4) Multiplicação e divisão; 
5) Soma e subtração. 
 Operadores de mesma hierarquia são efetuados da esquerda para a direita. 
 
• Exemplo 4.5.2.1: 
 Utilizando o Matlab, determine o valor da expressão: 
 
)
124
245(
))10ln(4(
)8,08,9( 


−
− = ? 
 
 Esta expressão matemática é escrita na forma adequada para o Matlab da 
seguinte forma: 
 » ((9.8-0.8)/(4-log(10)))^(245/124) 
e o seu resultado é igual a 27.0011 . 
 Observe que as vírgulas nas expressões para o Matlab são representadas por 
pontos, pois ele utiliza a forma inglesa de representar os números decimais. 
• Exemplo 4.5.2.2: 
 Determine o resultado das seguintes operações: 
a) 
47 45,23
256433
×
− b) ))2sen(ln( 
3
)234483( 13321,3 

 −
+ 
Os resultados são: a) 0.1606 ; b) 7.0567e+003 . 
Introdução aos Processos Químicos 
113 
Lembre-se que o resultado 0.1606 na realidade representa 0,1606. Observe também 
que a notação científica utilizada pelo Matlab não usa o símbolo x 10exp comum em 
textos. Assim: 
 1,2 x 106 ≡ 1.2e+006 = 1.2e6 no Matlab e 
 9,9 x 10-12 ≡ 9.9e-012 = 9.9e-12 no Matlab. 
 
4.6 - Variáveis 
4.6.1 Conceito de Variável 
 Uma variável pode ser considerada como um objeto armazenado na memória 
do computador. Uma variável é composta por um nome (cadeia de letras e/ou 
números necessariamente iniciada por uma letra) e o seu conteúdo (objeto armazenado 
naquela variável). Neste primeiro contato com o Matlab, será considerado que o 
objeto armazenado tem natureza numérica, podendo ser um escalar ou uma matricial. 
As variáveis ficam armazenadas no chamado espaço de trabalho do Matlab. 
 Na criação do nome de uma variável pode-se utilizar letras maiúsculas ou 
minúsculas, entretanto não se pode esquecer que o Matlab faz distinção entre elas, ou 
seja, a e A são variáveis diferentesno Matlab. 
 Uma vez que a variável armazena um valor numérico, ela pode participar 
plenamente de operações aritméticas, nas quais ela substitui o valor numérico nela 
armazenado. Por exemplo, se as variáveis A e B correspondem, respectivamente, aos 
valores numéricos 10 e 20, então: 
 » A + B 
é equivalente a: 
 » 10 + 20 
 
4.6.2 - Comando de Atribuição 
 Para armazenar um valor numérico em uma variável, utiliza-se o comando de 
atribuição. Este comando apresenta a seguinte estrutura: 
Nome da variável = Valor numérico 
 O valor numérico armazenado na variável pode estar representado por uma 
expressão aritmética ou até mesmo pela combinação de uma ou mais variáveis. 
Observe o exemplo a seguir: 
Introdução aos Processos Químicos 
114 
• Exemplo 4.6.2.1: 
 Qual é o valor da variável Casa ? 
 » A=3 , B=45+234 
 » Casa = sqrt(A+B) 
 » Casa=Casa*3 
 O resultado é igual a 50,3786. 
 Ao fazer o exemplo anterior, você observou que após inserir cada comando de 
atribuição o Matlab informa na janela de controle o resultado da operação realizada. 
Você pode evitar isto, adicionando após cada comando de atribuição o símbolo (;). 
Veja a diferença na janela de controle quando você entra as operações do exemplo 
4.6.2.1 da seguinte forma: 
 » A=3 ; B=45+234 ; 
 » Casa = sqrt(A+B) ; 
 » Casa=Casa*3 ; 
Note que após você inserir a última atribuição o Matlab não apresenta a solução. Isto 
ocorre em função do ponto e vírgula após o último comando de atribuição. Entretanto, 
ao final destas operações o valor numérico 50,3786 encontra-se armazenado na 
variável Casa. Você pode confirmar isto inserindo: 
 » Casa 
No exemplo, a não colocação do ponto e vírgula no final da última linha de comando 
faz com que o valor final armazenado na variável Casa seja apresentado na janela de 
comando. 
 
4.6.3 - Comandos de Entrada e de Saída 
 Os comandos de entrada e saída são responsáveis pela comunicação de dados 
entre o usuário e o espaço de trabalho do Matlab. 
 Ao trabalhar na janela de controle, a definição de um valor para uma variável e 
a sua inserção no espaço de trabalho é feita pelo usuário, utilizando o comando de 
atribuição (Seção 4.6.2). 
 Na elaboração de programas, o programador define a utilização de uma 
determinada variável, e pode conferir valores para ela através de comando de 
atribuição ou através do comando de entrada input. Ao rodar um programa, quando 
encontra este comando, o computador interrompe temporariamente a execução e 
Introdução aos Processos Químicos 
115 
apresenta uma mensagem na janela de comando solicitando que o usuário entre com o 
valor da variável. Após a inserção do valor, o programa volta a rodar 
automaticamente. 
 A sintaxe do comando input é a seguinte: 
Nome da variável = input('mensagem') 
• Exemplo 4.6.3.1: 
 » w = input('Entre com o valor da variável') 
O resultado da inserção deste comando é o aparecimento na janela de comando do 
texto entre ‘ ‘. Você deve então inserir o valor desejado. 
 Caso, em algum momento ao longo de um programa, seja necessário 
apresentar uma mensagem na tela, utilize o comando disp('mensagem'). Note que, de 
forma distinta do que ocorre com o comando input, o comando disp não para a 
execução do programa. 
 
• Exemplo 4.6.3.2: 
 » disp('Valores das variáveis Casa e w') , Casa , w 
 
• Exemplo 4.6.3.3: 
 Verifique a diferença entre os comandos: 
 » C=40 
 » D=50; 
 » C,D 
 
4.6.4 - Gerenciamento de Variáveis 
 Quando, em algum momento, é necessário determinar quais variáveis estão 
definidas no espaço de trabalho, é utilizado o comando who. 
• Exemplo 4.5: 
 » who 
 
 Uma vez que uma variável foi definida através do Matlab, ela ganha um 
espaço no espaço de trabalho e fica armazenada até o momento em que a janela de 
comando é fechada (término de uma seção de utilização do Matlab). Assim, quando 
uma tarefa no Matlab é finalizada e outra é logo iniciada na mesma sessão de trabalho, 
Introdução aos Processos Químicos 
116 
é indesejável que os valores das variáveis do trabalho anterior interfiram no novo 
trabalho. Utiliza-se então dos comandos clear ou clear all. A sintaxe destes comandos 
é: 
 » clear nome da variável (Apaga a variável identificada) 
 » clear all (Apaga todas as variáveis armazenadas) 
 
• Exemplo 4.6.4.1: 
 Execute a seguinte seqüência de comandos: 
 » A=30; 
 » A (existência de A confirmada pela indica- 
 ção de seu valor) 
 » clear A 
 » A (a variável A não existe mais no espaço 
 de trabalho) 
 
5 - Arquivos de Comandos 
 A entrada de informações através da linha de comando pode se tornar 
inconveniente, principalmente em grandes problemas, pois requer a introdução dos 
comandos um a um, seqüencialmente. Além disso, caso seja necessário repetir um 
procedimento, todos os comandos devem ser novamente digitados. 
 Para permitir a realização de tarefas mais complexas, o Matlab possibilita a 
criação de arquivos de comandos (“script files”). 
 Arquivos de comandos são arquivos texto onde é armazenada uma seqüência 
qualquer de comandos, que pode vir a ser executada a qualquer momento, quando 
necessário. Estes arquivos desempenham tarefa equivalente aos programas fonte 
utilizados nas linguagens de programação convencionais. Através de um arquivo de 
comandos é possível acionar outros arquivos de comandos. 
 Os arquivos de comandos devem ser escritos no bloco de notas (notepad - 
editor de texto disponível no Windows) e sempre gravados com a extensão “.m”. 
Versões mais recentes do Matlab já trazem um editor incorporado. 
 Para executar um arquivo de comandos, deve-se apenas digitar o nome do 
arquivo na linha de comando. No entanto, é necessário antes da execução do arquivo, 
Introdução aos Processos Químicos 
117 
indicar ao Matlab em que local da máquina (subdiretório) se encontra o arquivo. Para 
esta tarefa, é possível utilizar o comando path, ou, alternativamente, o comando cd. 
As respectivas sintaxes são: 
 » path(path,'endereço do subdiretório') 
 » cd endereço do subdiretório 
 
 A seguir é apresentado, passo a passo, o procedimento básico para a criação de 
um programa (arquivo de comandos): 
- Passo 1 
Inicialmente, deve-se identificar um subdiretório existente ou criar um novo 
subdiretório, onde serão colocados seus arquivos de trabalho, por exemplo 
subdiretório “prog”. 
- Passo 2 
Informe ao Matlab onde seus arquivos de comandos estarão localizados, por exemplo, 
 » path(path,'a:\prog') 
ou então, 
 » cd a:\prog 
- Passo 3 
Abra um arquivo novo no bloco de notas ou no editor do Matlab, quando este estiver 
disponível. 
- Passo 4 
Escreva neste arquivo os comandos do programa, como se estivesse na janela de 
comando. Os comandos são colocados linha por linha ou, quando escritos na mesma 
linha, devem estar separados por vírgula. 
- Passo 5 
Grave o arquivo de comandos com um nome apropriado, por exemplo, “trab.m” 
(nunca esquecer da extensão “.m”). Usando o editor do Matlab, a extensão .m é 
adicionada automaticamente. 
- Passo 6 
Passe para a linha de comando do Matlab e digite o nome do arquivo de comandos, 
sem a extensão. No exemplo em questão seria digitado: » trab . 
# Observação: 
 Após qualquer alteração realizada no programa, o arquivo deve ser novamente 
Introdução aos Processos Químicos 
118 
salvo. Deve-se sempre ter em mente que o Matlab não lê o arquivo da tela e sim o que 
encontra-se gravado no disco. 
 
# Algumas dicas: 
i) Introduza comentários nas listagens dos programas. Os comentários são linhas entre 
os comandos destinadas apenas a descrever a função de certos trechos do programa. 
Os comentários auxiliam no momento de corrigir possíveis erros (“bugs”), facilitando 
também que uma outra pessoa possa entender o programa. Para colocar um 
comentário utilize o símbolo “%” antes da linha. O Matlab não executa o que é escrito 
a direitado símbolo %. 
ii) Para evitar que na execução dos programas, variáveis anteriormente definidas 
perturbem a seqüência de comandos, sugere-se que no início do arquivo seja 
adicionado o comando clear all. Este comando nunca deve ser colocado no meio do 
programa, pois caso isto aconteça, haverá a eliminação de todas as informações 
geradas até aquele momento. 
iii) Quando se desenvolve um programa formado por vários arquivos de comandos, 
sugere-se criar um subdiretório só para o conjunto desses arquivos. Desta forma, cada 
tarefa executada no Matlab deve possuir um subdiretório próprio. Esta medida facilita 
o acesso aos arquivos, evitando confusões desnecessárias. 
 
 No exemplo a seguir é apresentado um arquivo de comandos (listagem de um 
programa) com uma estrutura típica. 
• Exemplo 4.5.1: 
 Escreva um arquivo de comandos que realize a conversão de temperaturas em 
°F, adicionadas via janela de comando, para °C e K. Este arquivo deve ser chamado 
de convtemp. 
 % Programa para a conversão de temperaturas 
 % Inicialização 
 clc , clear all 
 
 % Entrada de dados 
 Tf = input('Digite a temperatura em graus Fahrenheit'); 
 
Introdução aos Processos Químicos 
119 
 % Cálculos 
 Tc=(Tf-32)/9*5; 
 Tk=Tc+273.15; 
 
 % Apresentação dos Resultados 
 disp('Temperatura em graus Celsius'); 
 Tc 
 disp('Temperatura em Kelvin'); 
 Tk 
 
 Ao final da digitação o arquivo de ser salvo com o nome: convtemp.m. 
• Exemplo 4.5.2: (tente fazer e rode verificando se está certo) 
 Criar um programa para o projeto de tanques cilíndricos. O usuário deve 
introduzir o diâmetro e a altura do tanque e o programa deve calcular o volume e a 
área superficial total do tanque. 
 
6 - Matrizes e Vetores 
6.1 - Definição e Entrada de Matrizes e Vetores 
 Matrizes são arranjos bidimensionais de números. Nas matrizes, os valores 
numéricos são organizados em n linhas e m colunas (dimensão n x m). Vetores são 
matrizes formadas por apenas uma linha ou uma coluna (dimensão n x 1 ou 1 x m). 
 A introdução de um matriz no ambiente de trabalho pode ser feita diretamente 
pela definição de seus elementos individuais: 
 » A(i,j) = valor numérico 
onde (i,j) é a posição do elemento na matriz A , i representando a linha e j a coluna. 
 No entanto, é mais prático introduzir as matrizes de uma outra forma, como 
está representado abaixo: 
 » A = [ A11 A12 ; A21 A22 ] ou 
 » A = [ A11 , A12 ; A21 , A22 ] 
onde Ai j, representa o elemento na posição (i,j). Neste caso, todos os elementos são 
envolvidos por colchetes. O ponto e vírgula indica a mudança de linha e em uma 
determinada linha os elementos são separados por um espaço ou uma vírgula. 
Introdução aos Processos Químicos 
120 
• Exemplo 6.1.1: 
 Entre com a seguinte matriz: 
 B =
−



34 1
4 2
 
 
6.2 - Operações Matriciais 
 O Matlab possui a capacidade de realizar operações matriciais do mesmo 
modo que as operações aritméticas envolvendo escalares. Os símbolos das operações 
matriciais são apresentados na tabela a seguir: 
Operação Símbolo Operação Símbolo 
Soma + Transposição ' 
Subtração - Matriz Inversa inv(A) 
Multiplicação * 
 
• Exemplo 6.2.1: 
 Calcule as seguintes operações matriciais no Matlab: 
a) A B⋅ b) A C− c) ( ) ( )A A− ⋅1 
d) AT e) d A dT ⋅ ⋅ 
onde, 
A =




1 2
5 3
 B =




3 5 5
2 4 4
 


=
54
62
C d =




2
3
 
Resultados: 
 
a) 


373721
13137
 ; b) 


−
−−
21
41
 ; c) 


10
01
 ; d) 


32
51
 ; e) 73. 
Introdução aos Processos Químicos 
121 
6.3 - Operações Elemento a Elemento 
 Além das operações tradicionais entre matrizes, o Matlab dispõe do recurso 
das operações elemento a elemento. Quando aplicamos uma operação elemento a 
elemento a uma matriz, a operação é aplicada separadamente a cada elemento da 
matriz. Veja abaixo o exemplo da potenciação elemento a elemento: 
A =




1 2
3 4
 , A .^ 2 = 
1 4
9 16



 
 
 As principais operações elemento a elemento são: 
 
Operação Símbolo 
Multiplicação ·* 
Divisão ·/ 
Potenciação ·^ 
 
# Observações: 
i) Para realizarmos uma multiplicação ou divisão elemento a elemento entre duas 
matrizes, estas devem ter a mesma dimensão (deve existir correspondência entre os 
elementos). 
ii) As operações de soma e subtração convencionais já são naturalmente operações 
elemento a elemento, não necessitando assim de um caracter especial. 
 
 As funções matemáticas embutidas no Matlab (seno, exponencial, etc.) quando 
aplicadas a matrizes geram resultados do tipo elemento a elemento. 
• Exemplo 6.3.1: 
 Indicar o resultado das seguinte operações matriciais elemento a elemento: 
 a) A .* C b) sen(g) 
onde A e C são as mesmas matrizes do Exemplo 6.2.1, 
 A =




1 2
5 3
 


=
54
62
C e 


π
π
π
π
= 2
2
3
2
0g . 
 
Resultados: 
 a) 


32
51
 ; b) [ ]01010 − 
 
Introdução aos Processos Químicos 
122 
 Observe que C *. A C * A ≠ . Outro ponto importante é que o Matlab possui 
o valor de algumas variáveis muito utilizadas, como o número π . A variável que 
armazeno o seu valor é pi. 
 
6.4 - Manipulações de Matrizes e Vetores 
 O Matlab permite a manipulação de matrizes e vetores de maneira bastante 
flexível. Você pode alterar e compor matrizes e vetores através de elementos 
individuais, linhas, colunas ou até mesmo submatrizes. 
 Os principais recursos para esta manipulação são apresentados a seguir, através 
de alguns. 
6.4.1 - Vetores 
• Exemplo 6.4.1.1: 
 Digitando, 
 » x = 1:4 % Análogo a: x = [1:4] 
obtém-se, 
 x = 
 1 2 3 4 
ou seja, um vetor linha de 1 até 4, com os elementos separados por um incremento 
unitário. 
• Exemplo 6.4.1.2: 
 Digitando, 
 » x = 1:0.5:4 
obtém-se, 
 x = 
 1.0000 1.5000 2.0000 2.5000 3.0000 3.5000 4.0000 . 
O vetor continua tendo os seus elementos variando de 1 a 4, mas o incremento entre 
estes elementos passa a ser 0,5. 
• Exemplo 6.4.1.3: 
 Digitando, 
 » x = 0:2:10 
Introdução aos Processos Químicos 
123 
gera-se o vetor, 
 x = 
 0 2 4 6 8 10 
 Pode-se também criar novos vetores através da seleção de “partes” de um vetor 
existente: 
 » y = x(1:4) 
gera o seguinte vetor originado de x : 
 y = 
 0 2 4 6 
O vetor y contém do primeiro ao quarto elementos do vetor original x . Note que: 
 » y = x(2:5) 
gera o seguinte vetor originado de x : 
 y = 
 2 4 6 8 
 
6.4.2 - Matrizes 
• Exemplo 6.4.2.1: 
 Digitando, 
 » A=[ 2 3 ; 4 5 ] , B=[ 1 2 ; 4 6 ] 
obtém-se, 
 A = 
 2 3 
 4 5 
 B = 
 1 2 
 4 6 
 A partir destas duas matrizes é possível criar uma terceira, 
 » C = [ A , B ] 
gera no espaço de trabalho: 
 C = 
 2 3 1 2 
 4 5 4 6 
 
Introdução aos Processos Químicos 
124 
 Utilizando este conceito é possível compor matrizes complexas a partir de 
submatrizes mais simples. Observa a matriz formada pelo comando: 
 » F = [ A ; B ] 
Note que ela é diferente da matriz C criada no Exemplo 6.4.2.1. 
 
• Exemplo 6.4.2.2: 
 O caracter (:) também pode ser utilizado em matrizes de maneira equivalente 
àquela utilizada para vetores. Digitando, 
 » A=[ 1:4 ; 5:8 ] 
cria-se no espaço de trabalho: 
 A = 
 1 2 3 4 
 5 6 7 8 
 
 Parte dessa matriz pode ser utilizada na formação de uma nova matriz: 
 » B = A(:,1:3) % Igual a B = A(1:2 , 1:3) 
 B = 
 1 2 3 
 5 6 7 
 Note que a nova matriz contém todas as linhas da matriz original e apenas as 
três primeiras colunas. 
 
6.5 - Resolução de Sistemas Lineares 
 Através da representação matricial de um sistema linear, como o Matlab tem 
todos os recursos do cálculo matricial, é possível facilmentedeterminar a sua solução. 
 Considere um sistema linear genérico, com duas variáveis (x1 e x2) e duas 
equações: 
 
A x A x b
A x A x b
1 1 1 1 2 2 1
2 1 1 2 2 2 2
, ,
, ,
+ =
+ =
 
 Este sistema pode ser representado matricialmente da seguinte forma, 
 
A A
A A
x
x
b
b
1 1 1 2
2 1 2 2
1
2
1
2
, ,
, ,







 =



 ou seja, bx . A = 
Introdução aos Processos Químicos 
125 
 A solução utilizando cálculo matricial é facilmente obtida através da pré-
multiplicação dos dois lados da equação pela matriz inversa ( 1A − ) da matriz dos 
coeficientes ( A ). Assim: 
 b . A x b . A x . A . A -1-1-1 =⇒= 
 
 No Matlab esta operação é realizada pelo comando: 
 » x = inv(A) * b . 
 
 Uma forma alternativa de efetuar esta operação no Matlab é através do 
seguinte comando: 
 » x = A \ b % ≡ b ÷ A 
 
• Exemplo 6.5.1: 
 Resolva o sistema de equações: 
 
x y z
x y z
x y z
+ + =
− + =
+ + =
6
4 11
2 3 14
 
 A solução é: x = 1 ; y = 2 ; z = 3 . 
 
6.6 - Exemplos de Aplicações de Operações Matriciais 
• Exemplo 6.6.1: 
 Para facilitar o trabalho dos operadores de uma planta industrial, deseja-se 
montar uma tabela que relacione a altura de líquido em um determinado tanque com o 
seu volume. O tanque possui 2 m de diâmetro e altura máxima de 2 m. Preparar esta 
tabela considerando um intervalo de 10 cm entre seus elementos. 
# Sugestões: Utilize vetores coluna, operações elemento a elemento e composição de 
vetores para formar matrizes. 
Introdução aos Processos Químicos 
126 
• Exemplo 6.6.2: 
 Em uma unidade industrial três tanques cilíndricos (A, B e C) são 
periodicamente alimentados com nitrogênio. Os diâmetros e as alturas dos tanques são 
respetivamente: tanque A, 2 m e 3 m; tanque B, 1,5 m e 2 m e tanque C, 1,8 m e 2 m. 
Em um determinado momento, a temperatura nos três tanques é igual a 25°C. A 
instrumentação dos tanques indica as seguintes pressões: 1 atm, 2 atm e 3 atm, 
respectivamente. 
 Calcular a massa de gás em cada tanque. Utilize a equação dos gases ideais 
para descrever o comportamento do nitrogênio no interior dos tanques. 
 
7 - Gráficos 
7.1 - Gráficos Bidimensionais 
 A maneira mais prática para traçar gráficos bidimensionais é através da 
utilização do comando plot. Este comando, em sua forma mais simples, apresenta a 
seguinte sintaxe: 
 >> plot(x,y) 
onde x é um vetor contendo as abcissas e y é um vetor contendo as ordenadas dos 
pontos. Assim, as coordenadas dos pontos utilizados na construção do gráfico são (xi , 
yi ). 
• Exemplo 7.1: 
 Traçar o gráfico da função f(x) = x3 entre os valores de x = -2 e x = 2. 
# Sugestão: Lembre-se das operações elemento a elemento. 
Solução: 
 >> x = linspace(-2,2,50); 
 >> y = x .^3; 
 >> plot(x,y) 
Observações: 
 i) O gráfico é formado em uma janela especial que recebe o nome de Figure 
No.1. Esta janela pode ser manipulada como uma janela qualquer do Windows; 
 ii) Repita o exemplo criando o vetor x com somente cinco pontos. Ou seja, use: 
 >> x = linspace(-2,2,5); 
O que ocorre com o resultado obtido? Curvas formadas a partir de um número de 
Introdução aos Processos Químicos 
127 
pontos diferente têm formas diferentes, pois o Matlab une, automaticamente, os 
pontos utilizados para a construção da curva da função desejada por retas. 
 Através do comando plot também é possível definir a cor e/ou a forma de 
apresentar nos gráficos: 
 >> plot(x,y,'ct') 
onde c e t indicam, respectivamente, o código da cor e o código do símbolo a ser 
utilizado para marcar os pontos utilizados na construção do gráfico. Os códigos são 
apresentados na Tabela 7.1.1. Teste as diversas formas de representação (símbolos) 
para saber as possibilidades disponíveis. 
 
Tabela 7.1.1 – Códigos para Cores e Símbolos em gráficos Matlab 
Código Cor Código Símbolo 
y amarelo · pontos 
m magenta o círculos 
c azul claro x xis 
r vermelho + cruzes 
g verde * asteriscos 
b azul - linha contínua 
w branco : tracejado 
k preto -· traço-ponto 
 -- linha interrompida 
 
 É possível traçar duas ou mais curvas em um mesmo gráfico, com apenas um 
comando plot. A sintaxe para duas curvas é: 
 >> plot(x1,y1,'ct',x2,y2,'ct') 
onde as indicações dos códigos de cores e símbolos ('ct') é opcional. Quando os 
códigos não são informados é utilizado o procedimento padrão, ou seja, a linha 
contínua é utilizada. A cor utilizada é definida aleatoriamente. É possível também 
indicar somente um dos códigos. 
 Uma outra alternativa de sintaxe, quando todas as curvas apresentam a mesma 
variável independente (abscissa), é: 
 >> plot(x,[ y1 y2]) 
Introdução aos Processos Químicos 
128 
 
 Quando várias curvas são traçadas em um mesmo gráfico sem a indicação do 
código de cores, o Matlab vai colorindo cada curva de acordo com a ordem da tabela 
de cores (ver Tabela 7.1.1). 
 
• Exemplo 7.2: 
 Traçar os gráficos das curvas y = x2, w = x3, no intervalo entre -2 e 2. 
 
7.2 - Gráficos Tridimensionais 
7.2.1 Curvas 
 O procedimento para traçar curvas no espaço tridimensional é semelhante 
aqueles empregados para as curvas 2-D, bastando apenas utilizar o comando plot3, 
 >> plot3(x,y,z) 
 >> plot3(x,y,z,'ct') 
 >> plot3(x1,y1,z1,'ct',x2,y2,z2,'ct') 
 
• Exemplo 7.3: 
 Traçar a curva parametrizada: 
 x = t . sen(t) ; 
 y = t . cos(t) ; 
 z = t ; 
no intervalo [0,20π]. 
 
7.2.2 Superfícies 
 A criação de gráficos de superfícies é realizada através de um conjunto de 
etapas. Primeiro, deve-se definir os vetores das variáveis independentes, com a 
seguinte sintaxe: 
>> x= (limite inferior das variáveis x:incremento:limite superior das variáveis x); 
>> y= (limite inferior das variáveis y:incremento:limite superior das variáveis y); 
Note que os parênteses pode ser omitidos neste comando. 
 O próximo passo consiste em, a partir destes dois vetores, criar duas matrizes 
especiais através do comando meshgrid: 
 >> [X,Y]=meshgrid(x,y) 
Introdução aos Processos Químicos 
129 
 A matriz X consiste no vetor x repetido através das linhas e a matriz Y consiste 
no vetor y repetido em colunas. Estas matrizes servirão para a determinação do gráfico 
da superfície. 
 O próximo passo é calcular o valor da variável dependente, por exemplo: 
 >> Z=X.^2+Y.^2; 
 Para traçar o gráfico da superfície utilize o comando surf, que a seguinte 
sintaxe: 
 >> surf(X,Y,Z) 
 Além do comando surf, o Matlab dispõe de uma série de comandos 
equivalentes que permitem visualizar a superfície de diferentes maneiras. Estes 
comandos são: surfc, mesh, meshc, meshz, waterfall e contour3. Verifique a utilização 
destes comandos utilizando o help do Matlab e fazendo alguns exemplos. 
• Exemplo 7.4: 
 Traçar o gráfico da superfície do exemplo apresentado no texto, entre os 
intervalos x ∈ −[ , ]2 2 e y ∈ −[ , ]2 2 . 
 
 Para traçar curvas de nível das superfícies, utiliza-se o comando contour, 
 >> contour(X,Y,Z) . 
 
7.3 - Identificação dos Gráficos 
 Para complementar a representação gráfica de uma curva ou de uma superfície, 
existem uma série de comandos que permitem adicionar títulos e identificações dos 
eixos. 
7.3.1 - Títulos 
 Adiciona-se um título ao gráfico através do comando title, 
 >> title('Título Desejado') 
7.3.2 - Identificações dos Eixos 
 A identificação dos eixos x, y e z do gráfico é realizada respectivamente 
através do comandos xlabel, ylabel e zlabel, 
 >> xlabel('Eixo x') , ylabel(‘Eixo y’) , zlabel(‘Eixo z’) 
• Exemplo 7.5: 
 Refazer o Exemplo 7.1, colocando um título no gráfico e identificando os seus 
eixos. 
Introdução aos Processos Químicos 
130 
 
7.4 Organização para Apresentação de Gráficos 
 Quando um gráfico é traçado e, logo após, um segundo gráfico é construído, o 
último gráfico substitui o primeiro na janela de apresentação criada. 
 Caso seja necessário, a apresentação dos dois gráficos pode ser feita em janelasdiferentes, mantendo-se assim a possibilidade de visualização dos dois gráficos 
obtidos. O comando que eprmite isto é o figure. Observe a seqüência de comando a 
seguir: 
 >> plot(x1,y1) % este comando traça o primeiro gráfico 
 >> figure(2) % este comando prepara uma segunda janela 
 >> plot(x2,y2) % este segundo gráfico vai para a segunda janela 
 Para fechar uma janela, utiliza-se o comando close 
 >> close(n) % Fecha a janela n 
 >> close all % Fecha todas as janelas de gráfico abertas 
 
7.5 - Exemplo Ilustrativo 
• Exemplo 7.6: (Adaptado de “Fundamentos de Transferência de Calor e Massa”, 
Incropera, F. P. e De Witt, D. P.) 
 Quando um fluido escoa através de um tubo com temperatura de parede 
constante, a temperatura média do fluido ao longo do comprimento do tubo se 
aproxima gradativamente da temperatura da parede. 
 A equação que relaciona a temperatura média do fluido com a posição ao 
longo do comprimento de um tubo circular é: 
 



 π
−−−= x 
Cp m
h d exp )TeTp( Tp )x(T 
 
 Seja um exemplo cujos dados são apresentados a seguir. Apresente um gráfico 
que mostre o valor da temperatura média de fluido (T(x)) ao longo do comprimento 
do tubo (x). No mesmo gráfico deve também ser apresentado o valor da temperatura 
da parede (Tp(x)) ao longo do comprimento do tubo. Incluir um título e a 
identificação dos eixos. 
Dados do problema: 
Introdução aos Processos Químicos 
131 
Temperatura média do fluido na entrada do tubo: Te = 15°C; 
Temperatura da parede do tubo: Tp = 100°C; 
Diâmetro do tubo: d = 50 mm; 
Coeficiente de transferência de calor médio: h = 756 W/(m2 K); 
Vazão mássica do fluido: m = 0,25 kg/s; 
Calor específico do fluido, a pressão constante: Cp = 4178 J/(kg K); 
Comprimento total do tubo: L = 6 m. 
Obs: Apresente os resultados em kelvin. 
 
8 - Expressões Lógicas : Expressões Relacionais e Comandos 
Condicionais 
8.1 Expressões Relacionais 
 Expressões relacionais são utilizadas para comparar dois elementos. O 
resultado da comparação pode ser falso (0) ou verdadeiro (1) (variável booleana). Os 
operadores utilizados para compor as expressões relacionais são apresentados na 
Tabela 8.1.1. 
Tabela 8.1.1 – Operadores de Expressões Relacionais 
Operador Significado Operador Significado 
= = igual >= maior ou igual 
~= diferente < menor 
> maior <= menor ou igual 
 
• Exemplo 8.1: 
 Verifique o resultado das seguintes expressões relacionais: 
 2 > 3 ; 10+2==13 , (2+3)^2 ~= (2^2+3^2) . 
Introdução aos Processos Químicos 
132 
8.2 Expressões Lógicas 
 Expressões lógicas relacionam elementos do tipo verdadeiro (1) ou falso (0) – 
variáveis booleanas. O resultado de uma expressão lógica é também um resultado tipo 
verdadeiro/falso (1/0). Os principais operadores lógicos são apresentados na Tabela 
8.2.1. 
 
Tabela 8.2.1 – Operadores de Expressões Lógicas 
Operador Significado 
& and / e 
| or / ou 
~ not / não 
 
 Sejam A e B duas variáveis booleanas. Os resultados dos operadores lógicos 
envolvendo estas duas variáveis são mostrados na Tabela 8.2.2. 
 
Tabela 8.2.2 – Resultados de Operações Lógicas 
A B A & B A | B ~ A 
0 0 0 0 1 
0 1 0 1 1 
1 0 0 1 0 
1 1 1 1 0 
 
• Exemplo 8.2: 
 Verifique o resultado da expressão lógica a seguir: 
 not A and B sendo A = 0 e B = 1. 
 
8.3 Expressões Mistas 
 Expressões mistas utilizam operadores lógicos e relacionais simultaneamente. 
• Exemplo 8.3: 
 Qual o resultado das expressões abaixo: 
10 > 2 & 3 < 4 e ~(2^2~=4 or 3/5==0.6) 
 
Introdução aos Processos Químicos 
133 
8.4 Comandos Condicionais 
 Comandos condicionais do tipo if/else/end (if/then/else em outras linguagens) 
permitem, através da comparação entre dois elementos, direcionar os cálculos para 
caminhos distintos. No Matlab, esses comandos apresentam duas estruturas 
fundamentais: if-end e if-else-end, que são apresentadas a seguir: 
• Estrutura if-end: 
 if condição 
 seqüência de comandos 
 end 
Caso a condição (expressão relacional, lógica ou mista) seja verdadeira, o programa 
executa a seqüência de comandos. Caso seja falsa, o programa ignora a seqüência e 
passa para o comando posicionado imediatamente após o end. 
 
• Estrutura if-else-end: 
 if condição 
 seqüência de comandos 1 
 else 
 seqüência de comandos 2 
 end 
Se a condição (expressão relacional, lógica ou mista) for verdadeira, o programa 
executa a seqüência de comandos 1. Caso a expressão seja falsa, o programa executa a 
seqüência de comandos 2. Após realizar uma das duas seqüências, o programa passa 
para o comando posicionado imediatamente a seguir do end. 
 
 As seqüências de comandos no interior das estruturas if-else-end também 
podem incluir novos comandos if/else/end, gerando assim estruturas mais complexas. 
Como exemplo, tem-se: 
 if condição 1 
 if condição 1a 
 seqüência de comandos 1a 
 end 
 seqüência de comandos 1b 
 else 
Introdução aos Processos Químicos 
134 
 seqüência de comandos 2 
 end 
 
 Note que ao escrever estes comandos, é comum se posicionar cada grupo de 
comandos correspondentes iniciando em uma mesma coluna, de modo a tronar mais 
simples o entendimento da seqüência de cálculos programada. 
• Exemplo 8.4: 
 Observe este trecho de programa, que identifica se a produção de uma fábrica 
(prod) atingiu a meta (meta) ou não. Ele também identifica se a produção ficou abaixo 
do limite aceitável (lim), emitindo textos que comentam o resultado. 
 
 if prod>=meta 
 disp(‘Parabéns, a meta de produção foi atingida’) 
 else 
 disp(‘Produção não atingiu a meta desejada’) 
 if prod<lim 
 disp(‘Produção abaixo do limite aceitável. Realizar auditorias’) 
 end 
 end 
 
 Há outras formas de organizar comandos do tipo if/else/end que executam a 
tarefa do exemplo proposto. Proponha uma alternativa. 
 
• Exemplo 8.5: 
 Um tanque cilíndrico de dióxido de carbono resiste a uma pressão máxima de 
3 atmosferas. As dimensões do cilindro são: diâmetro igual a 2 m e altura igual a 1,5 
m. 
 Fazer um programa onde o usuário digite a temperatura no interior do tanque e 
a massa de gás que será adicionada. O programa deve informar se a operação é segura 
ou não. Verifique utilizando o programa desenvolvido, se a uma T = 27°C, uma massa 
de gás igual a 30 kg pode ser adicionada. 
 Utilize a equação dos gases ideais para descrever o comportamento do gás no 
interior do tanque. 
Introdução aos Processos Químicos 
135 
 
9 - Comandos de Repetição (for e while) 
9.1 - Comando for 
 O comando for causa a repetição de um trecho do programa um número de 
vezes que é previamente determinado. Sua estrutura é: 
• Estrutura for: 
 for contador = valor inicial:passo:valor final 
 seqüência de comandos 
 end 
 
 Uma estrutura for deve ser montada considerando que o programa executa as 
seguintes etapas: 
1) No início do comando for, o programa atribui ao contador (uma variável) o seu 
valor inicial definido no próprio comando; 
2) A seqüência de comandos é executada quantas vezes forem especificadas, ou seja, 
até o contador atingir o valor final especificado no programa. A atualização deste 
contador é efetuada automaticamente utilizando como incremento o valor do passo 
indicado no comando. Quando o valor do passo não é indicado, o Matlab considera o 
passo unitário. 
3) Quando o valor do contador ultrapassa o valor final especificado no comando for, o 
processo termina e o programa passa a executar o comando imediatamente após o end. 
 
 Quanto o valor do passo não for especificado, será considerado, 
automaticamente, igual a 1. 
• Exemplo 9.1: 
 Este programa calcula a produção média diária (med) a partir de um período de 
tempo definido pelo usuário (N): 
 N = input(`Digite o número de dias de acompanhamento da produção = ’); 
 soma=0; 
 for d = 1:N 
 disp(‘Dia ’) , d 
 prod = input(‘Digite a produção do dia indicado = ’); 
Introdução aos ProcessosQuímicos 
136 
 soma=soma+prod; 
 end 
 med=soma/N; 
 disp(‘A produção média diária é igual a ’) , med 
 
• Exemplo 9.2: 
 Séries infinitas são seqüências de somas de números. A utilização de séries 
apresenta grande importância em diversos campos da engenharia química, como, por 
exemplo, nos estudos de transferência de calor e da mecânica dos fluidos. 
 É possível calcular o valor de π com o auxílio de uma série: 
π = 6sn , quando n → ∞ ; sendo s kn k
n
=



=∑
1
2
1
 . 
 Determine o valor de π utilizando a série com a soma de seus 100 primeiros 
termos (n =100). 
 
 Há uma outra possibilidade de resolver o Exemplo anterior sem a utilização de 
uma estrutura for. Pesquise o comando sum. 
 
9.2 - Comando while 
 O comando while permite que um trecho do programa seja repetido, enquanto 
uma determinada condição permanecer verdadeira. A sua estrutura é: 
 while condição 
 seqüência de comandos 
 end 
 A execução deste comando segue as seguintes etapas: 
1) Verifica inicialmente se a condição é verdadeira. Caso seja verdade, segue para a 
seqüência de comandos, caso contrário a execução passa para o restante do programa, 
logo após o end; 
2) Executa a seqüência de comandos; 
3) Volta à etapa 1. 
Introdução aos Processos Químicos 
137 
• Exemplo 9.3: 
 Este trecho de programa é utilizado para determinar quantos reatores em série 
(N) são necessários para que uma corrente de produto atinja a concentração desejada 
(cdes). Considere que a concentração de saída de cada reator (cs) é determinada por 
uma função chamada reat, que utiliza como dado de entrada (argumento) a 
concentração de produto na corrente de entrada (ce). 
 Note que esta função reat não existe no Matlab. Mais adiante, será mostrado 
como o usuário pode definir uma função para depois utilizá-la. Nesse exemplo, é 
considerado que a função foi definida em um ponto anterior do programa. 
Programa: 
 cs=0; , N=0 
 while cs<cdes 
 N = N+1; , ce=cs; , cs = reat(ce); 
 end 
 disp(‘Número de reatores em série necessários: ’) 
 N 
 
• Exemplo 9.4: 
 Equações do tipo: 
 x f x para ii i= =−( ) , , ...1 1 2 3 
são muito comuns em algoritmos que utilizam métodos numéricos resolvendo 
problemas de engenharia. 
 Seja a seguinte equação recursiva, 
 x
xi i
=
−
−
1
3 1
2( )
 com x0 = 1 . 
(i) Determine o valor de xi para o qual o valor absoluto da diferença (xi-xi-1) se torna 
menor do que 10-4. 
(ii) Observe qual a relação entre o resultado do processo recursivo do item (i) e a 
equação: 
 x
x
−
−
=
1
3
02( )
 . 
Qual a conclusão que você chega? O que representa na realidade o valor de xi 
determinado no item (i). 
Introdução aos Processos Químicos 
138 
 
10 - Variáveis Indexadas 
10.1 - Conceito 
 Variáveis indexadas são variáveis formadas por um conjunto de elementos 
individuais, onde cada elemento apresenta uma posição definida no conjunto. Vetores 
e matrizes, tal qual foram apresentados na Seção 6, são exemplos de variáveis 
indexadas, onde a posição do elemento é indicada por um índice, no caso dos vetores, 
ou dois índices, no caso das matrizes. Nas linguagens de programação usuais são 
possíveis variáveis indexadas com mais de dois índices. 
 
10.2 Utilização 
 As variáveis indexadas permitem ao programador gerenciar uma grande 
quantidade de informações de maneira simples e organizada. Uma grande massa de 
dados pode ser introduzida no computador através de apenas uma variável indexada, 
possibilitando depois que os dados individuais possam ser manipulados indicando 
apenas a sua posição no conjunto (índices). 
 O exemplo a seguir ilustra a aplicação deste tipo de variável. 
• Exemplo 10.1: 
 Em um sistema de controle de estoque em uma indústria química, um 
programa recebe os níveis diários de aditivo em um tanque em um certo período, 
calcula a massa de aditivo disponível em cada dia, e devolve os dados de resposta 
indicando o dia, o nível do tanque, a massa de aditivo e um aviso nos dias em que a 
massa de aditivo estever abaixo do limite mínimo. 
 
 % Leitura das informações à respeito do nível diário de aditivo 
 Ndias=input(‘Digite o número de dias analisados’); 
 for i=1:Ndias 
 disp(‘Dia’) , i 
 nivel(i)=input(‘Digite o nível do tanque (m)’); 
 end 
 % Rotina para cálculo das massas de aditivo em cada tanque 
 for i=1:Ndias 
Introdução aos Processos Químicos 
139 
 massa(i)=pi*D^2/4*nivel(i)*dens; 
 end 
 % Saída dos resultados 
 for i=1:Ndias 
 disp(‘Dia’) , i 
 disp(‘Nível do tanque’) , nivel(i) 
 disp(‘Massa de aditivo’), massa(i) 
 if massa(i)<lim , disp(‘Estoque abaixo do limite mínimo’) , end 
 end 
 
Observação: 
 O emprego das operações elemento a elemento presentes no Matlab (Seção 
6.3) permite simplificar bastante a utilização das variáveis indexadas, eliminando 
muitas vezes a necessidade da utilização de laços for. É importante observar que este 
recurso normalmente não está disponível nas demais linguagens de programação. 
 
11 - Funções 
11.1 – Conceito e Estrutura 
 Funções (“function files”) são uma classe especial de arquivos de comandos. 
Sua mecânica de funcionamento é similar as funções definidas na matemática. As 
funções recebem um ou mais argumentos, e partir destes argumentos, procedem a 
execução de um conjunto de comandos, gerando na saída um ou mais resultados 
numéricos. A grande vantagem das funções é que, uma vez definidas, elas podem ser 
empregadas quantas vezes forem necessárias em um ou mais programas diferentes. 
 Com o objetivo de apresentar, na prática, como deve ser montado um arquivo 
de função, considere a criação de uma função destinada a determinar a pressão de um 
gás, a partir da temperatura e do volume, segundo a equação de estado dos gases 
ideais. 
 A função deve ser criada em um arquivo exclusivo para ela. Todo arquivo de 
função deve começar pelo comando function. Ao lado deste comando, escreve-se o 
valor numérico da saída da função (no nosso caso p, a pressão) igualado ao nome da 
função (eq), seguido pelos argumentos de entrada (T,V; respectivamente, temperatura 
e volume). 
Introdução aos Processos Químicos 
140 
 function p = eq(T,V) 
 Seguem-se então o conjunto de definições, operações matemáticas e comandos 
que permitirão a função determinar o valor numérico da saída. No exemplo em 
questão: 
 R=8314; 
 p=R*T/V; 
 Finalmente, um arquivo de função deve ser gravado necessariamente com o 
nome da função e a extensão “.m”. No exemplo acima, o arquivo deve ser gravado 
como “eq.m”. 
 É possível, agora, utilizar a função de cálculo da pressão de um gás (eq) na 
linha de comando, em um arquivo de comandos qualquer ou até mesmo em outra 
função. 
 Por exemplo, o comando: 
 PT = eq(273.15,22.4); 
calcula o valor da pressão de um kgmol de gás ideal para T = 273,15 K e V = 22,4 m3, 
armazenando o resultado na variável PT. 
 Lembrem-se que, para que o Matlab possa reconhecer a função criada, deve-se 
inicialmente indicar o “endereço” do arquivo (Seção 5). 
 
• Exemplo 11.1: 
 Criar uma função que faça a conversão de volume em ft3 para litros e m3. 
 
11.2 Variáveis Locais e Globais 
 Quando um arquivo de comandos convencional é executado, as variáveis 
envolvidas são manipuladas ao longo do programa, e, no final, continuam 
armazenadas em um espaço de memória gerenciado pelo Matlab (“workspace”). 
Tente, como exemplo, executar um arquivo de comandos e depois digite o comando 
who. 
 Funções, no entanto, operam de maneira diferente. As variáveis definidas no 
interior de uma função (variáveis locais) não são armazenadas após a execução da 
função, e também não interferem com as demais variáveis externas. Da mesma 
maneira, as operações matemáticas e os comandos utilizados no interior da função só 
reconhecem as variáveis internas à função. 
Introdução aos Processos Químicos 
141 
 
• Exemplo 11.2: 
 Limpe as variáveis da memória do Matlab (comando clearall), execute uma 
vez a função gerada no exemplo da Seção 11.1 e digite o comando who. 
 
 Caso seja necessário, é possível permitir que uma função reconheça uma ou 
mais variáveis externas. Neste caso utiliza-se o comando global, 
 global A B C 
onde A, B e C são nomes de variáveis. 
 O comando global deve ser incluído na função e também no arquivo de 
comando onde as variáveis globais aparecem. 
 Em teoria, é possível nunca usar o comando global, introduzindo todos os 
valores numéricos necessários para o cálculo da função, ou através do argumento, ou 
definindo-os no interior da própria função. Mas este pode não ser o procedimento 
mais prático sempre. Em um programa onde um grande número de parâmetros é 
calculado através de um arquivo de comandos principal e depois estes parâmetros são 
utilizados em várias funções diferentes, torna-se mais prático “distribuir” estes 
parâmetros através do comando global. 
 
12 - Bibliografia 
 
“Notas de Aula do Curso de Computação I” 
 Eduardo Paz e Moacyr Azevedo 
 
“Matlab - User`s Guide” 
 The MathWorks, Inc. 
 
“Matlab - Versão do estudante - Guia do Usuário” 
 Makron Books 
 
“Mini-Curso: Uma Introdução ao Mathematica” (Apostila) 
 Marcelo Castier 
	Operação
	» A(i,j) = valor numérico
	Operação
	Operação
	B =
	Tabela 7.1.1 – Códigos para Cores e Símbolos em gráficos Matlab
	Tabela 8.1.1 – Operadores de Expressões Relacionais
	N

Outros materiais