Fundamentos da Engenharia Quimica no MATLAB

Transcrição

Fundamentos da Engenharia Quimica no MATLAB
 ELEM
MENTUS CONS
SULTOR
RIA JR
Direttoria de
e Inform
mática
PROGR
RAMA DE TREINAM
MENTO EM
M
COMP
PUTAÇÃO CIENTÍFIC
CA – PTCC
C
FU
UND
DAM
MEN
NTO
OS D
DA
EN
NGE
ENH
HAR
RIA
®
Q ÍMIC
QU
CA NO MA
ATL
LAB
B
PTCC
RECIIFE
2009
9
UNIVERSIDADE FEDERAL DE PERNAMBUCO
CENTRO DE TECNOLOGIA E GEOCIÊNCIA
DEPARTAMENTO DE ENGENHARIA QUÍMICA
ELEMENTUR JR. CONSULTORIA
Programa de Treinamento em Computação Científica – PTCC
Av. Professor Artur de Sá, Recife – PE
Priscila Carvalho dos Santos
Diretora Presidente
Phillipi Rodrigo de Oliveira Souza
Diretor de Informática
PRODUZIDO PELA ELEMENTUS JR.CONSULTORIA
Phillipi Rodrigo de Oliveira Souza
Projeto
Gustavo de Almeida Castro
Phillipi Rodrigo de Oliveira Souza
Edição, projeto gráfico e produção
Gustavo de Almeida Castro
Phillipi Rodrigo de Oliveira Souza
Produção Artística
Gustavo de Almeida Castro
Priscila Carvalho dos Santos
Phillipi Rodrigo de Oliveira Souza
Arte final digital
Gustavo A. Castro
Phillipi Rodrigo de Oliveira Souza
Capa
Rayanna Alice
Priscila Carvalho dos Santos
Revisão gramatical
Este documento é parte integrante do material didático do Programa de Treinamento
em Computação Científica, PTCC, da Diretoria de Informática da ELEMENTUS JR.
Consultoria e tem por objetivo descrever os princípios fundamentais da programação em
ambiente MATLAB® direcionado à engenharia química. Criado pelo Diretor de Informática o
Sr. Phillipi Rodrigo de Oliveira Souza, com a orientação da Diretoria Executiva presidida pela
Sra. Priscila carvalho dos Santos e apoio das demais diretorias.
Apresentação
Desde o princípio, a tecnologia vem sendo um fator limitante para as
engenharias. Ela se desenvolve à medida que a tecnologia avança e a
tecnologia
, por sua vez, cresce proporcionalmente à ela como numa relação simbiótica.
Dentre os principais fatores responsáveis por tal fato, a informática tem um
papel de destaque. Com o desenvolvimento de computadores de maior
capacidade de armazenamento e processamento, problemas que até então
não tinham solução viável se mostram possíveis e os desenvolvimentos na
área da engenharia crescem exponencialmente.
Para a Engenharia Química e Química Industrial, tal desenvolvimento
vem sendo sentido em todas as suas áreas. Sistemas de Informação,
Biotecnologia, Fenômenos de Transporte, Controle de Processos, Reatores,
Automação, Processos Químicos e Operações Unitárias são alguns exemplos
de atuação da informática.
O MATLAB® é um programa de computador desenvolvido para assistir,
dentre muitas áreas das ciências exatas e humanas, a engenharia. Com uma
interface simples e prática suas ferramentas são uma poderosa arma para a
solução de problemas em Engenharia Química.
Além de recursos básicos de programação, o MATLAB® traz uma gama
de ferramentas que auxiliam estudantes, pesquisadores e profissionais da área
em suas atividades laborais conferindo, aos mesmos, caráter profissional.
É com esse pensamento que ELEMENTUS JR. Consultoria, através de
sua Divisão de Informática com seu Programa de Treinamento em Computação
Científica (PTCC), promove o curso Fundamentos da Engenharia Química no
MATLAB®.
O PTCC tem o objetivo de promover a cultura da Engenharia Digital
entre os membros do Departamento de Engenharia Química e Química
Industrial lotado no Centro de Tecnologia e Geociências da Universidade
Federal de Pernambuco e a comunidade externa.
O curso é direcionado aos estudantes e profissionais na área de
Engenharia Química e Química Industrial. Seu conteúdo está distribuído em
quatro módulos e uma carga horária de trinta horas.
Os módulos são divididos como segue:
Módulo 1 (Conceitos Básicos – Como Manipular?): traz ao leitor o primeiro
contato com a interface gráfica do programa, noções de aritmética de máquina
e conceitos operacionais da matemática matricial em MATLAB®.
Módulo 2 (Fundamentos da Programação – Como Programar?): introduz os
conceitos de programação no que diz respeito à estrutura e lógica de
programação voltada aos recursos do MATLAB®.
Módulo 3 (Manipulação de Dados – Como Trabalhar?): apresenta os
principais recursos do MATLAB® para a importação, manipulação e exportação
de dados das mais variadas formas.
Módulo 4 (Estudo de Casos – Como aplicar na Engenharia?): além de
todos os conceitos vistos em módulos anteriores, traz aplicações de
ferramentas para a resolução de problemas comuns à Engenharia Química,
sempre em casos reais.
Todos os módulos são acompanhados de vários exercícios, todos
realizados em sala de aula.
No fim desta apostila o leitor encontrará um CD com a versão eletrônica
deste documento, a versão eletrônica das apresentações em slides exibidas
durante as aulas e exercícios em extensão m com gabaritos sugeridos.
Ao leitor, desejamos boas vindas e boa Leitura.
ELEMENTUS JR. Consultoria
Recife, fevereiro de 2009
SUMÁRIO
Módulo 1: Conceitos Básicos – Como Manipular ?
Ambiente de Trabalho
Janela Command Window
Janela Workspace
Janelas Command History e Current Directory
Erros
Editor de Texto
Ajuda
2
3
4
5
5
7
7
Problema 1.1
10
Trabalhando com Matrizes
11
11
15
18
20
21
22
Trabalhando com Escalares
Trabalhando com Matrizes Multi-Elementares
Operações com Matrizes
Indexação de Vetores/Matrizes
Criação de Variáveis
Análise de Vetores
Problema 1.2
24
Considerações Finais
28
Módulo 2: Fundamentos de Programação – Como
Programar ?
Sub-Rotinas como Script Direto – Trabalhando no Editor
Expressões Booleanas
Estruturas de Seleção
30
31
32
Problema 2.1
Problema 2.2
33
36
Estrutura de Repetição
37
Problema 2.3
38
Sub-Rotinas como Funções (Trabalhando na janela de
comandos)
41
Problema 2.4
43
Considerações Finais
46
Módulo 3: Manipulação de Dados – Como Exibir ?
Função de Tratamento de Nome de Arquivos
Funções de Importação e Exportação
Função de Tratamento
Gráficos e Handle Graphics
48
48
50
51
Problema 3.1
53
Considerações Finais 54
Módulo 4: Estudo de Casos
CASO 1: Tanque Pulmão (Trabalhando com Estruturas de
Repetição)
CASO 2: Cálculo da Temperatura Teórica da Chama do
Propano (Trabalhando com Estruturas de Repetição)
CASO 3: Controladores Automáticos (ajustando Curvas)
CASO 4: CSTR Não-Isotérmico (Solução de SEL)
CASO 5: Reator CSTR (Trabalhando com EDO)
CASO 6: CSTRs em Série (Trabalhando com EDOs)
CASO 7: Reator HDT (Trabalhando com EDP)
Considerações Finais
56
63
69
71
75
80
83
88
Mód
du
ulo
o 1:
Co
onceitos Básic
B cos – Co
omo
Manipular ?
Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Ambiente de Trabalho
®
Após a sua inicialização, o MATLAB
M
exige um determina
ado intervalo de
temp
po para a leitura de seus arqu
uivos opera
acionais. Durante
D
essse proces
sso o
prog
grama se encontra
ará bloque
eado para
a quaisqu
uer ativida
ades. Se seu
computador possui
p
as configura
ações mínimas de hardware exigidas pela
grama, essse instante
e de tempo
o não passsará de alg
guns segun
ndos.
versão do prog
Dura
ante esse processo
p
u
uma
mensa
agem será
á exibida no lado esq
querdo da barra
b
de status indiccando que o software
e está inicia
alizando, fiigura 1.1.
Figu
ura 1.1 – me
ensagem de inicializaçã
ão na
ba
arra de statu
us.
Após co
oncluir esssa etapa o MATLAB
B® exibirá,, no mesm
mo local, outra
o
men
nsagem, de
essa vez disponibiliza
ando-o parra o uso, fiigura 1.2.
Fig
gura 1.2 – mensagem
m
de
d liberação na
ba
arra de status.
Seu am
mbiente de
esenvolved
dor, ou interface grráfica, é ssubdividida
a em
o barras e quatro janelas. As barras possuem con
nfiguraçõe
es imutáveis ao
cinco
conttrário das janelas que
e podem ser
s alterada
as a fim de
e proporcio
onar ao usuário
maio
or conforto
o e praticiidade. Como mostra
a a figura
a 1.3, a in
nterface po
ossui
quattro barras localizadas
l
s na parte superior e uma parte
e inferior.
2 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Figu
ura 1.3 – inte
erface inicia
al do MATLA
AB®.
A prime
eira barra (primeira de
d cima para baixo)) se encon
ntra a barrra de
título
os. Nela encontram
e
os o título
o do prog
grama. Aba
aixo da barra de tíítulos
temo
os a barra de menuss. Através dela pode
emos acesssar todas a
as ferrame
entas
dispo
oníveis. Lo
ogo abaixo
o temos a barra
b
de fe
erramentass e a barra
a de endere
eços.
Na barra
b
de fe
erramentass observam
mos atalho
os para as principaiss aplicaçõe
es do
prog
grama, já na barra de enderreços, os diretórioss podem sser acessados
atravvés de um
m sistema de
d endereçamento similar
s
ao do WINDO
OWS. Na parte
p
inferrior da interface enco
ontramos a barra de status. Ne
ela podemo
os saber qual a
situa
ação de op
peração do
o programa
a.
Jane
ela Comm
mand Wind
dow
Ainda na
n figura 1.3 podemo
os visualiz
zar quatro janelas dispostas la
ado a
lado. A janela da direita
a é denom
minada Com
mmand Window,
W
ou
u simplesm
mente
janela de com
mando. Ne
ela são executados
e
s os coma
andos prin
ncipais pa
ara a
realização de seus trabalhos. Se
S o sistema não estiver
e
executando uma
ativid
dade que utilize
u
toda
a sua mem
mória, você
ê irá encontrar um pro
ompt indicando
que o program
ma aguard
da suas in
nstruções, figura 1.4
4. Para lim
mpa-lá utiliiza o
c
comando [>> clc].
3 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Figura 1.4
4 – Comman
nd Window.
Jane
ela Works
space
Na parte
e superiorr esquerda, figura 1.3
3, temos a janela ressponsável pela
mem
mória temp
porária “visível” do programa
a, a Workkspace, fig
gura 1.5. Sua
mem
mória é tid
da como te
emporária uma vez que desligado o p
programa, seus
dado
os serão
o perdido
os. Nele podemos
s enconttrar todo
os os dados
dispo
onibilizado
os ao códig
go por meio dos com
mandos de
e atribuiçõe
es. Para lim
mpalá uttiliza o com
mando [>> clear].
Figura
a 1.5 – Work
kspace.
4 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Jane
elas Comm
mand Histtory e Currrent Direc
ctory
Abaixo da Worksspace temos duas janelas
j
divvididas po
or meio de
e um
ema de ab
bas. A jan
nela Comm
mand Histo
ory, figura 1.6, e a janela Cu
urrent
siste
Directory, figu
ura 1.7. A primeira
a é respo
onsável po
or listar o histórico
o de
comandos da Command
d Window. É subdivid
dida por da
ata e locad
da na mem
mória
perm
manente. A limpeza de
d seu hisstórico pod
de ser executada com
m comand
do de
righttclick, ou comando
c
d clique direito
de
d
exe
ecutado atrravés do b
botão diretto do
mou
use, emborra não seja aconselhada. Já a segunda
a janela, e
exibi o dire
etório
atua
al no qual os coman
ndos são executado
e
os, diretório
o esse igu
ual ao deffinido
pela barra de
d endere
eços. Nela
a serão exibidos todos oss arquivos
s ou
subd
diretórios contidos
c
n diretório escolhid
no
do, mesmo
o que esttes conten
nham
atrib
buições de sistema, oculto
o
ou somente
s
leitura.
F
Figura
1.6 – Command History.
Figura 1.7 – Curren
nt Diretory.
os
Erro
Assim como
c
todo software e hardwarre, o MATL
LAB® e o ccomputado
or no
qual foi insta
alado estã
ão sujeitoss à bugs
s (erros). Tais erro
os podem
m ser
dese
encadeado
os por prob
blemas de
e lógica intterna de programaçã
p
ão, ou porr erro
de operação
o
do usuário.
dos por pro
oblemas de
e lógica intterna de programaçã
ão do
Para errros causad
softw
ware, gera
almente erros
e
em código
c
Ja
ava, ou Ja
ava Scriptt, o MATL
LAB®
compila o messmo erro “viciando” a lógica de
d execuçção do sofftware. Ne
esses
caso
os é necesssário reinicciar o siste
ema.
Os erro
os causado
os por má
á operação do usuá
ário pode ser de qu
uatro
tiposs:
a.
a
b
b.
c
c.
d
d.
Sintaxe;
Argume
entos;
Interrup
pção;
Memória.
Os erro
os de sinta
axe ocorre
em quando
o o usuário insere u
um código
o não
reco
onhecido pelo compillador. São
o os erros mais simp
ples de serem corrig
gidos.
5 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Quando ocorre
em, na Co
ommand Window
W
sã
ão disponib
bilizadas a
as informa
ações
de erro
e
de sinttaxe, o ele
emento cau
usador do erro e, se
e o código estiver contido
num
ma função ou
o script, um
u link que
e leva direttamente à linha do có
ódigo no qual o
erro locado. São exe
emplos co
omuns: quantidade
q
e não prroporcional de
parê
ênteses, víírgulas ou pontos; matrizes
m
com
c
eleme
entos não discrimina
ados;
nom
mes de funçções digitados errone
eamente, dentre
d
outrros.
Os erro
os de argu
umentos ocorrem
o
qu
uando a quantidade
q
e ou o tipo de
argu
umento de
e entrada de funções foi mal
m
inserid
do. Por e
exemplo, uma
dete
erminada função re
equer três argume
entos de entrada e o usuário
dispo
onibiliza apenas
a
dois. Ou um
ma dada fu
unção requ
uer númerros reais como
c
argu
umentos de
e entrada e o usuário
o disponibiliza matrizzes.
Os errros de in
nterrupção ocorrem
m quando o usuárrio interro
ompe
abru
uptamente a compilaçção do cód
digo iniciad
do. Para ta
anto, basta
a digitar [>> ctrl
+ c] durante a compilaçã
ão.
O MATL
LAB® utilizza uma pa
arcela da memória
m
R
RAM
do co
omputador para
dos tempo
orários. Qu
uando a qu
uantidade de
d informa
ações exce
ede a
locação de dad
quan
ntidade de
e memória disponívell o sistema
a entra em
m colapso e a compilação
é intterrompida
a. Dentro desse
d
seg
guimento temos os erros
e
de m
memória. Caso
C
ocorrra, é necessário qu
ue o usuá
ário revise
e seu códiigo buscan
ndo otimiz
zar a
utilizzação mem
mória temporária.
Os erross de argum
mento e sin
ntaxe pode
em ser visu
ualizados n
na figura 1.8.
Figura 1.8 – Erro
os de sintax
xe e argume
entos.
6 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Edittor de Texto
O editor de textos do MAT
TLAB® é uttilizado pa
ara criação
o de funçõ
ões e
pts, e com
mpilação ap
penas de scripts. Sua vantagem em re
elação à ja
anela
scrip
Com
mmand Wiindow está no fato
o da faciliidade na correção dos erros
s de
digitação. Para
a abrir a ja
anela de edição
e
de texto
t
digite
e o comando [>> edit] na
Com
mmand Wiindow, ace
esse Barra
a de Menus/Desktop/Editor o
ou dê um click
duplo em qualq
quer arquivvo de exte
ensão m.
Figurra 1.9 – Jane
ela de ediçã
ão de texto, EDIT.
Como pode
p
ser visto na figura
f
1.9,, todas ass linhas são numerradas
ma linha só será co
ompilada se,
s e
auxiliando no controle de compillação. Um
erior já tiverr sido.
somente se, a linha ante
Ajud
da
Devido à enorme abrangê
ência do software nas diverrsas áreas
s da
ciência, a com
mplexidade
e de sua utilização torna-se inevitável. Até a ed
dição
destte documento, o MA
ATLAB® po
ossui mais de 500 co
omandos d
distribuídos
s em
maiss de 40 ca
aixas de fe
erramentass tornando
o-se evidente a impo
ossibilidad
de de
lemb
brança e co
ompreensã
ão de todo
os.
Sabendo dessa im
mpossibilid
dade o MA
ATLAB® vem
v
com u
um sistem
ma de
supo
orte ao usu
uário (HELP) que visa assisti-lo
o no que diiz respeito à utilizaçã
ão de
sua interface e ferramentas.
7 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
O Help pode serr acessado
o de duas
s formas: por uma janela pró
ópria,
figurra 1.10, ou através do
o prompt da
d janela de
d comandos, figura 1.11.
F
Figura
1.10 – Janela pró
ópria do Help.
Figura 1.11 – Help no
o prompt da
a janela de comando.
c
8 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Através do prompt, podem
mos acessar a biblio
oteca do help de fo
orma
gera
al, digitand
do o comando [>> help], ou
u o conteú
údo especcífico de cada
assu
unto digitando [>> help
h
“assunto”] como
o pode se
er visto na
a figura 1.11 e
figurra 1.12.
Figura 1.12
2 – Bibliotec
ca do Help no
n prompt de comando..
e
da
a janela prrópria do Help
H
click no
n ícone
na barrra de
Para a exibição
ferra
amentas. Ela
E é subd
dividida em
m duas jan
nelas princcipais. No lado esqu
uerdo
temo
os uma ja
anela divid
dida em quatro
q
aba
as no qua
al o conte
eúdo pode
e ser
busccado atravvés de bib
bliotecas (Contents)), indexação de palavras (Index),
asso
ociação de
e caracteres (Search Results) e exemploss demostra
ativos (Dem
mos).
No lado direitto temos a janela responsáv
vel pela exibição,
e
vvia HTML, dos
resu
ultados doss sistemas de busca, figura 1.13.
9 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
F
Figura
1.13 – Janela pró
ópria do Help.
As demonstrações podem ser
s acionad
das pelo prompt
p
de comando, pela
interrface gráfica especcífica (jane
ela própria) ou pe
ela interne
et, através
s da
hom
mepage da MATHWO
ORKS™.
Em am
mbos os casos
c
o usuário
u
en
ncontrará sintaxes de coman
ndos,
mplos ilustrativos e in
ndicações de referên
ncias biblio
ográficas.
exem
E
EXERCÍ
ÍCIO AP
PLICADO
O
blema 1.1
Prob
.
a. Durante
D
o curso voccê fará inúmeros exe
ercícios ap
plicados. P
Para que sejam
passsivos de resgate crie
c
um diretório
d
de
d nome “CURSO_
_MATLAB” no
ende
ereço que se segue:
C:\...\Deskktop
A pa
artir de hoje
e esse serrá o seu dirretório de trabalho
t
du
urante as a
aulas.
b. Descubra,
D
utilizando os recurso
os de ajuda, o que é o comand
do “ODE45
5”.
1
10 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Trabalhando
o com Matrizes
M
De form
ma não co
omercial os primeiro
os sistema
as de com
mputação fo
oram
dese
envolvidos com siste
ema de con
ntagem de
ecimal. Tal sistema, usado des
sde o
berçço da ciên
ncia, se mostrou a maneira
a mais ad
dequada d
de represe
entar
qualquer quan
ntidade e, dessa forrma, não se
s pensou
u inicialme
ente em uttilizar
qualquer outro
o tipo de aritmética
a em má
áquinas. No
N entanto
o, a aritm
mética
decimal não se
s adaptou
u de forma
a otimizada
a aos siste
emas elétrrico-eletrôn
nicos
dos circuitos, até então
o relativam
mente prim
mitivos. Ap
pós várioss trabalhos de
pesq
quisa cheg
gou-se ao sistema
s
arritmético mais
m
adequado, o sisttema aritm
mético
binário, utilizad
do por tod
do o mund
do. No sis
stema deciimal tínham
mos que gerar
g
assem os dez valore
es do siste
ema (de 0 à 9),
dez sinais disttintos que representa
já no
o binário precisamos
p
s apenas de
d dois (0 e 1). O sisstema biná
ário adapto
ou-se
de forma
f
extrraordinária
a, pois dois tipos de sinais sempre
s
fo
oram fáceis de
prod
duzir. Quan
ndo um sin
nal elétrico
o era emitid
do tínhamo
os a representação do
d 1,
quan
ndo não tín
nhamos o 0.
Com o sistema binário
b
todas as info
ormações eram resu
umidas em
m um
conjunto forma
ado por do
ois algarissmos. Mas
s como seria a melh
hor maneirra de
orga
anizar esse
e conjunto?
? Foi preciso uma maneira
m
que
e unisse p
praticidade, que
implicaria em velocidade
e de opera
ações, e adaptabilida
ade, já que
e tínhamos
s um
novo
o sistema de contage
em. O sisttema matricial foi a melhor
m
forma enconttrada
para
a armazen
namento e transmisssão de dados
d
e o motivo é simples
s. As
matrrizes estão
o sujeitas às
à diretrize
es básicas
s de um esspaço veto
orial e com
mo tal
podííamos apliccar todos os
o preceito
os desenvo
olvidos pela álgebra a
analítica.
Para prrogramar em
e MATLA
AB® o us
suário terá
á que conh
hecer algu
umas
prop
priedades da
d álgebra
a vetorial que
q serão mostradas
m
s ao longo desse módulo.
Com
mo a matrizz é o elem
mento maiss importan
nte na programação em m, alguns
recu
ursos foram
m criados para
p
simplificar a vid
da do usuá
ário no que
e diz respe
eito à
criaçção de cód
digos que utilizem
u
ma
atrizes.
Usarem
mos o termo
o variável de
d forma in
ntercalada para defin
nir as matrizes.
balhando com
c
Esca
alares
Trab
A álgeb
bra analíticca classifica escalare
es e matrizzes de form
ma diferen
nte e,
consseqüentem
mente co
om propriedades distintas. Teria então que
dese
envolvermo
os uma fo
orma de trrabalhar co
om duas plataforma
p
s? Não. Então
E
como resolverr esse inccômodo? A idéia foi simples. Basta trattar um escalar
como uma ma
atriz 1x1, uma
u
matrizz com um único elem
mento ou, informalmente,
matrriz de dime
ensão nula
a.
as regras
Operar com esses elementos nos leva a considerar
c
s de
operração de um
u escalar que, por sua
s vez, nã
ão conflita com as propriedade
es de
operração matrricial.
As exprressões são criadas respeitand
r
do uma hierarquia de
e prioridade
es de
execcução de operadores
o
s. Essa hie
erarquia po
ode ser ressumida segundo a ta
abela
1.1.
1
11 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Operaç
ção
()
^
/
\
*
+
─
Nome
Precedência
Potência
Divisão
o
Divisão
o à esquerd
da
Multipliccação
Soma
Subtraçção
Prio
oridade
1º
2º
3º
4º
5º
6º
7º
Tabela 1.1 – Prioridade
P
de operaç
ção.
Para praticar essa hierarq
quia de prioridades
p
s execute os segu
uintes
comandos no prompt.
>> 4 * 2 + 6
ans =
14
>> 4 * 2 + 6 / 3
ans =
10
Dica
a: se o com
mando a ser
s inserido
o for idêntico ou sem
melhante a outro inserido
ante
eriormente utilize o Command
C
History ou
u as setass de naveg
gação ↓ e ↑ do
seu teclado.
>> 4 * (2 + 6) / 3
ans =
10.6
>> 4 * (2 * 6 – 2) / 3
ans =
13.3
>> 4 * (2 * (6 – 2)
)) / 3
ans =
10.6
>> 2 ^ 2
1
12 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
ans =
4
>> 2 ^ 2 * 3
ans =
12
>> 2 ^ (2 * 3)
ans =
64
Dica
a: para inib
bir a visuallização do resultado das opera
ações insira ‘ ; ’ no fim de
cada
a comando
o.
>> 2 / 4
ans =
0.5
>> 2 \ 4
ans =
2
A potên
ncia de basse 10 é rep
presentada
a inserindo
o a letra “e”” ou “E” en
ntre a
nota
ação decim
mal e a potê
ência da ba
ase, sem espaços,
e
c
como
mostra a seguirr.
>> 3.141e2
3
ans =
314.1
>> 3.141E-2
3
2
ans =
0.03141
Para au
uxiliar os cálculos
c
e compreen
nder resulta
ados o MA
ATLAB® po
ossui
consstantes num
méricas prredefinidass, tabela 1.2.
1
13 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Constante
C
e
pi
i ou j
eps
realmin
realmax
Inf
NaN
Valor
3.14
415926535
58979...(π)
raiz imaginária
a(
)
prec
cisão numé
érica relativva
men
nor número
o real
maio
or número real
Infin
nito. Ex.: 1//0
Not a Number(não numé
érico). Ex.: 0/0
Tab
bela 1.2 – Constantes
C
s predefinid
das.
As consstantes Inff e NaN não
n
repres
sentam valores num
méricos em
m sua
ência. São
o apenas conceitos
c
d
desenvolv
idos pelo sistema e que prec
cisam
essê
ser interpretad
dos de forrma corretta. Para entendermo
e
os tais co
onceitos va
amos
fazer uma brevve revisão sobre aritm
mética de ponto flutu
uante.
A matemática operada por uma máq
quina proccessadora é diferentte da
mate
emática prrocessada por nossa
as mentes.. Ambos não
n conseg
guem qunttificar
mate
ematicame
ente o inffinito e o ínfimo uttilizando de
d outros recursos para
interrpretá-los, como co
onceitos matemático
m
os. No ca
aso dos processad
dores
lógiccos artificia
ais, essa capacidade
c
e é mais limitada,
l
p
pois
sua m
memória é mais
limita
ada. De fo
orma gera
al, nós pod
demos che
egar a um
m número tão grande ou
pequ
ueno quan
nto nós queiramos, enquanto
e
a máquina
a não. Por essa limittação
os processado
p
ores possu
uem um nú
úmero máx
ximo e mín
nimo alcan
nçável em seus
proccessamento
os.
Por essas implicações, na aritmética
a
de
d ponto flutuante, o
ou aritmétic
ca de
máq
quina, exisstem duas regiões no
n qual o sistema de
d contagem não varre:
v
unde
erflow e ovverflow.
A região
o de unde
erflow reprresenta va
alores que
e são muitto próximo
os de
zero
o (positivoss ou nega
ativos), ou seja, de valor
v
abso
oluto tão p
pequeno que a
máq
quina não consegue computarr. É o resu
ultado de uma opera
ação numérica
que é muito pe
equena para ser reprresentada com a ope
eração parra ser ofere
ecida
dor. Na re
egião do overflow
o
ocorre
o
o in
nverso, nú
úmeros qu
ue se
pelo computad
apro
oximam do
o “infinito” não são alcançados
a
s. É o resultado de uma operração
num
mérica que é muito grrande para
a ser repre
esentada com a operração forne
ecida
pelo computad
dor.
Figura 1.14
1
– Regiões de und
derflow e overflow.
o
Essas re
egiões pod
dem ser vissualizadas
s na figura 1.14 onde
e:
Mncc-: máximo número co
omputado negativo;
mncc-: mínimo número co
omputado negativo;
n
mncc+: mínimo número co
omputado positivo;
Mncc+: máximo
o número computado
c
o positivo.
1
14 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
O forma
ato de exibição de números na
n tela po
ode ser co
onfigurado pelo
comando form
mat. Embora tenha
a inúmeros
s formatoss, apenass quatro serão
s
impo
ortantes aos nossoss objetivoss imediato
os e podem ser exp
plorados como
c
mostra a seguir.
>> 0.333333
0
33333
ans =
0.3333
format short
s
e
>> f
>> 0.333333
0
33333
ans =
3.
.3333e-0
001
>> f
format long
l
>> 0.333333
0
33333
ans =
0
0.333333
333330000
00
>> f
format long
l
e
>> 0.333333
0
33333
ans =
333330000
000e-001
1
3.33333
format short
s
>> f
>> 0.333333
0
33333
ans =
0.3333
Trab
balhando com
c
Matriizes Multi--Elementa
ares
Matrizess ou variáveis dessse tipo podem
p
ser criadas com ou sem
incre
emento. Sem increm
mento será
á necessá
ário digitar todos os elemento
os da
matrriz, o que não
n ocorre com a cria
ação por in
ncremento.
1
15 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Como sabemos,
s
um matriz pode ser dividida em
e elemen
ntos de lin
nha e
®
coluna. No MA
ATLAB , pa
ara separa
ar elemento
os em colu
una utilizam
mos o “esp
paço”
ou “ , ”. Para separarmoss em linhass utilizamo
os o “ ; ”. Observe
O
a sseguir.
Para
a uma matriz ou veto
or linha:
>> A = [2 4 6]
A =
2
4
6
Para
a uma matriz ou veto
or coluna:
>> A = [2;4
4;6]
A =
2
4
6
a uma matriz ou veto
or misto:
Para
>> A = [1 2 3;4 5 6;7
6
8 9]
A =
1
4
7
2
5
8
3
6
9
Algumas matrizess, de tão utilizadas,, podem ser
s criadass com sim
mples
mo pode se
er observado a seguir.
comandos com
a uma matriz Identida
ade:
Para
>> I = eye(
(5)
I =
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
16 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
0
0
0
0
0
0
1
0
0
1
Para
a uma matriz Nula:
os(3,2)
>> Z = zero
Z =
0
0
0
0
0
0
Para
a uma matriz Unitária
a:
s(2,3)
>> U = ones
U =
1
1
1
1
1
1
a uma matriz Randôm
mica:
Para
>> W = rand
d(2,3)
W =
0.8147
0.9058
0.127
70
0.913
34
0.
.6324
0.
.0975
A matrizz randômicca retorna um vetor com núme
eros aleató
órios entre zero
m.
e um
ores/matriz
zes) por incremento
i
o seguimo
os a
Para criar variávveis (veto
segu
uinte sintaxxe:
nº inicial : incrementto : nº final
DIC
CA: se o inccremento for
f igual a 1, não pre
ecisa indicá
á-lo.
Este tip
po de con
nfiguração
o represen
nta a criação de u
uma seqüê
ência
num
mérica de valor
v
inicia
al igual ao
o nº inicia
al, valor final
f
igual ao nº fin
nal e,
interrcaladas por
p valoress cuja dife
erença e igual ao in
ncremento
o. Observ
ve na
prátiica a seguir.
>> A = 10:1
1:20
A =
1
17 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
10
19
1
11
12
13
3
14
15
16
17
18
20
>> A = 10:2
2:20
A =
10
1
12
14
16
18
4
8
5
10
20
>> A = [1:5
5; 2:2:10
0]
A =
1
2
2
4
3
6
Quando
o o incremento não é informad
do o sistem
ma admite como sen
ndo o
padrrão, ou seja, increme
ento de valor 1 (um).
Ope
erações co
om Matrize
es
Embora
a a aritmética de máq
quina seja, em parte,, diferente da habitua
al, as
o sujeitas as mesm
mas regras
s de opera
ação. Veja
a na prática a
matrrizes estão
segu
uir alguns casos
c
de operações
o
com matrizes.
Sejam as
a matrizess
>> A + B
??? Error using
u
==>
> plus
Matr
rix dime
ensions must
m
agr
ree.
>> B + C
ans =
5
-3
5
7
4
9
>> B * C
??? Error using
u
==>
> mtimes
s
Inne
er matri
ix dimens
sions mu
ust agree.
1
18 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
>> A * B
ans =
-8
-20
-32
11
1
2
29
4
47
10
22
34
O MAT
TLAB® disp
põe de outros operadores matemático
m
os que po
odem
faciliitar as ope
erações ma
atriciais como mostra
a a prática a seguir.
Sejam as
a matrizess
>> D = [1 2;
2 3 4]
D =
2
1
4
3
>> E = [5 6
6;7 8]
E =
5
6
7
8
>> D * E
ans =
19
43
22
2
5
50
é di
iferente
e de
>> D .* E
ans =
5
21
12
1
3
32
>> D / E
ans =
3.0000
2.0000
-2.000
00
-1.000
00
1
19 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
é differente de
>> D ./ E
ans =
0.2000
0.4286
0.333
33
0.500
00
>> D ^ 2
ans =
7
15
10
1
2
22
é di
iferente
e de
>> D .^ 2
ans =
1
9
4
16
1
exação de Vetores/M
Matrizes
Inde
A indexxação é um
ma forma de mapea
ar os elementos da m
matriz que
e são
úteiss à operaçção. Existe
em duas formas
f
de indexação
o: uni para
amétrica e poli
para
amétrica.
A uni paramétrica
p
a consiste apenas na
n indicaçã
ão da possição de fo
orma
ar, ou seja,, através de um único
o parâmetro como mostra
m
a prá
ática abaix
xo.
linea
Seja a matriz
m
>> A(1)
A
ans =
1
>> A(3)
A
ans =
7
2
20 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
>> A(5)
A
ans =
5
Na poli paramétrrica temoss a indica
ação de duas
d
coord
denadas do(s)
d
elem
mento(s), o primeiro lhe
l informa
a a linha no
n qual esttá contido, o segundo lhe
inforrma a colun
na. Veja a prática a seguir,
s
ainda com a mesma
m
ma
atriz A.
>> A(1,1)
A
ans =
1
>> A(2,1)
A
ans =
4
>> A(2,2)
A
ans =
5
ação de Va
ariáveis
Cria
Variável é um terrmo utilizado interna
amente pello MATLAB® para definir
objetos matem
máticos de forma ge
eral como, por exem
mplo, escalares, matrrizes,
imag
gens, sonss, células, dentre
d
outrros.
A criaçã
ão de variá
áveis é normalizada de
d acordo com a sinttaxe a seguir.
e o nome
e da variável fica a critério
o do usu
uário, emb
bora não seja
onde
reco
omendado a utilizaçã
ão de nom
mes comp
plexos. O nome dass variáveis não
pode
erá ser inicciado por números.
n
Exemplo
os de cria
ação de va
ariáveis po
odem ser observado
os na prátiica a
segu
uir.
2
21 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
>> var
v
= [1:
:5; 1:2:1
10]
var =
1
1
2
3
3
5
4
7
5
9
>> var
v
= cos
s(pi)
var =
-1
>> [zero,pol
lo,ganho] = resid
due([1],[1 1])
zero
o =
1
polo
o =
-1
ganh
ho =
[]
Análise de Ve
etores
Em alg
guns caso
os é nece
essário faz
zer um estudo
e
quantitativo e/ou
dades dass matrizes
s ou parte
e delas. E
Esses esttudos
qualitativo dass propried
pode
em ser feitos atravé
és de inúm
meros com
mandos. Alguns
A
delles podem
m ser
obse
ervados na
a prática a seguir.
a o número
o de eleme
entos:
Para
>> numel(A)
n
ans =
6
Para
a análise de dimensõ
ões:
>> size(A)
s
ans =
3
2
2
22 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Para
a o comprim
mento ou vetor
v
máximo:
>> length(A)
l
ans =
3
Para
a o número
o de dimen
nsões da matriz:
m
>> ndims(A)
n
ans =
2
Para
a a diagona
al da matriiz:
>> diag(A)
d
ans =
1
5
a a matriz triangular
t
i
inferior:
Para
>> tril(A)
t
ans =
1
4
7
0
5
8
Para
a uma matriz triangular superior:
>> triu(A)
t
ans =
1
0
0
2
5
0
2
23 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
E
EXERCÍ
ÍCIO AP
PLICADO
O
Prob
blema 1.2
.
Uma
a grande fo
ornalha ind
dustrial é suportada
s
por
p uma lo
onga colun
na de refratário,
com 1 m porr 1 m de lado. Durrante a op
peração em condiçõ
ões de regime
estacionário, a instalaçã
ão é de ta
al forma que três su
uperfícies da coluna
a são
man
ntidas a 500
0 K, enqua
anto a outrra é expostta a uma corrente
c
de
e ar para a qual
T∞ = 300 K e h = 10 W/m
W 2.K. Utilizando um
ma rede de
d malha ccom Δx = Δy =
0,25
5 m, de terrmine a disstribuição de temperratura bidim
mensional na coluna
aea
taxa de calor para a co
orrente de ar por un
nidade de comprime
ento da coluna.
(Incrropera et al,
a pág. 144
4)
Con
nsideraçõe
es:
1.
1
2
2.
3
3.
4
4.
Regime
e estacioná
ário.
Conduçção bidimensional.
Propried
dades constantes.
Sem ge
eração interna de calo
or.
Aná
álise: Redu
ução da rede de 12
2 pontos nodais
n
parra 8 atravvés do eix
xo de
sime
etria.
Dessa form
D
ma, utilizando as equações de diferençass finitas (nã
ão-estendidas),
os balanços de
e energia para
p
cada nó são dad
dos como:
s:
interrnos não-simétricos
Nó 1:
1 T2 + T3 + 1000 – 4T1 = 0
2
24 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
Nó 3:
3 T1 + T4 + T5 + 500 – 4T3 = 0
Nó 5:
5 T3 + T6 + T7 + 500 – 4T5 = 0
interrnos simé
étricos:
Nó 2:
2 2T1 + T4 + 500 – 4T
T2 = 0
Nó 4:
4 T2 + 2T3 + T6 – 4T4 = 0
Nó 6:
6 T4+ 2T5 + T8 – 4T6 = 0
s
de superfície
plana:
Nó 7:
7 2T5 + T8 + 2000 – 9T7 = 0
Nó 8:
8 2T1 + T4 + 500 – 9T
T8 = 0
Reorganizando
o e agrupa
ando as eq
quações temos:
Na forma
f
matrricial temoss:
Para re
esolver essse proble
ema usare
emos a técnica
t
da
a inversão
o de
matrrizes.
[A] . [T] = [C]
[A]-1 . [A] . [T] = [A]-1 . [C]
[I] . [T]
[ = [A]-1 . [C]
[T] = [A]-1 . [C]
Primeiro
o criamos a matriz de coeficientes e constantes
c
s. Em linha de
comando terem
mos
>> A = [-4 1 1 0 0 0 0 0;...
2 -4
4 0 1 0 0 0 0;...
2
25 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
1
0
0
0
0
0
0
1
0
0
0
0
-4 1 1 0 0 0;...
2 -4 0 1 0 0;...
1 0 -4 1 1 0;...
0 1 2 -4
4 0 1;...
0 0 2 0 -9 1;...
0 0 0 2 2 -9]
A =
1
-4
4
0
1
0
0
0
0
-4
2
1
0
0
0
0
0
1
0
-4
2
1
0
0
0
0
1
1
-4
0
1
0
0
0
0
1
0
-4
2
2
0
0
0
0
1
1
-4
0
2
0
0
0
0
1
0
-9
2
0
0
0
0
0
1
1
-9
>> C = [-100
00;-500;-500;0;-5
500;0;-2000;-1500]
]
C =
-1000
0
-500
0
-500
0
0
-500
0
0
-2000
0
-1500
0
Em seguida
s
multiplicamo
os pela ma
atriz de con
nstantes
>> T = inv(A
A)*C
T =
48
89.3047
48
85.1538
47
72.0651
46
62.0058
43
36.9498
41
18.7393
35
56.9946
33
39.0520
Os resu
ultados po
odem ser interpreta
ados considerando cada linha
a da
matrriz T como
o a temperratura fina
al de cada nó corresspondente ao númerro da
linha
a. Dessa forma,
f
na linha 1 te
eremos a temperatu
ura do nó 1, na linha 5
terem
mos a temperatura do
d nó 5 e assim
a
suce
essivamentte como mostra abaix
xo.
2
26 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
2
27 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 1: Con
nceitos Básicos
B
– Como Manipular
M
r?
C
Conside
eraçõe
es Finais
1 Explora
1.
ação do am
mbiente de
esenvolved
dor do softw
ware;
2 Organizzação na projeção,
2.
p
e
execução
e armazenagem de p
projetos;
3 Em casso de dúvid
3.
da consulte
e: 1º - HEL
LP; 2º - Ou
utras Fonte
es;
4 Exporta
4.
ação da lóg
gica matriccial fora do ambiente MATLAB®
®;
2
28 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Mód
du
ulo
o2
2:
F dame
Fund
entos de Progr
P ramaçção –
Co
omo Prog
grama
ar ?
Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
Sub
b-Rotinas
s como Script
S
Diireto – Trrabalhan
ndo no Editor
Durante
e este módulo verem
mos algun
ns conceito
os de pro
ogramação que
nos auxiliarão nas ativid
dades cotiidianas de
e um programador. A
Alguns de
esses
concceitos pod
dem ser tomados de forma geral pa
ara qualqu
uer platafo
orma
enqu
uanto outro
os serão específicos pra o MAT
TLAB®.
Nossos trabalhoss terão iníccio no editor de texxto do sofftware vistto no
dulo anterio
or. Para que
q
os trabalhos sejjam desen
nvolvidos d
de forma mais
mód
profiissional fa
aremos algumas co
onsideraçõ
ões sobre o desen
nvolvimento
o da
estru
utura de um
u program
ma em linha e sua disposição
o no que d
diz respeitto ao
ende
ereçamentto.
a.
a
b
b.
c
c.
d
d.
e
e.
Inicie se
eu “.m” sem
mpre com um cabeça
alho;
Não ultrrapasse o limite de im
mpressão;
Utilize diretórios
d
d
distintos
pa
ara projetos
s distintos;;
Utilize o menos po
ossível a memória
m
fix
xa. Utilize a RAM (tem
mporária);
Comentte o máxim
mo possíve
el seu coma
ando ou co
onjunto de comandos
s.
A consideração (a
a) deve ga
arantir ao usuário um
ma informação resumida
mitações e autoria do
d código.. Um exem
mplo pode
e ser
das funcionalidades, lim
alizado na figura 2.1.
visua
Figura 2.1 – Exemplo de cabeçalh
ho de início de código.
A consid
deração (b
b) permite que, numa
a eventual impressão
o, o código
o seja
exibido em su
ua estrutura originall. A (c) ga
arante que
e funções ou scriptts de
mesmos nom
mes não sejam
s
mottivos de conflitos lógicos
l
ou
u enganos
s de
cham
madas. Oss cálculos e as inform
mações gerradas dura
ante e com
mpilação po
odem
3
30 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
ser armazenad
a
das nas memórias
m
fixa e temp
porária. A utilização da fixa im
mplica
num
m registro de informações no disco rígido de se
eu computtador. Com
mo a
quan
ntidade de
e manipula
ações mattemáticas é grande, a quantid
dade de vezes
v
que se “risca”” o HD tam
mbém é, diminuindo
d
o a vida útil
ú do messmo. Por esse
motivo é acon
nselhável utilizar o mínimo
m
po
ossível a memória
m
ffixa segundo a
conssideração (d).
( Não se
erá raro o caso em que
q o usuá
ário estará em um có
ódigo
com mais de cem linha
as de com
mandos. Será que ao
a terminá
á-lo lembra
ará a
funccionalidade
e de todo
os? E, se
e lembrar,, por qua
anto temp
po guardará a
inforrmação consigo? Ima
agine agorra a situaçã
ão em voccê está lendo o códig
go de
outro
o usuário.. Não serria mais fácil
f
enten
ndê-lo se o mesmo estiver com
inforrmações que indique
e sua funccionalidade
e? Para faccilitar a leiitura do có
ódigo
de comandos
c
por parte
e do usuário autor ou
o outro usuário
u
é extremam
mente
reco
omendado a utilizaçã
ão de com
mentários in
ndicando a funcionalidade de cada
comando ou conjunto de
e comando
os segundo
o a conside
eração (e). No MATL
LAB®
os comentário
c
os são iniciados sem
mpre pelo símbolo
s
(%
%) como m
mostra o trrecho
retira
ado de um
m código co
omo exemp
plo.
ação de Variávei
V
is %%%%%%
%%%%%%%
%%%%%%%%%% Declara
R = 2;
Q = 600,5;
T = 575;
% taxa de
d reaçã
ão
% v
vazão
% tempera
atura
%% Fim da Declaraç
D
ção das Variávei
V
is %%%%%%
%%%%%%%%
%%%%
Exp
pressões
s Booleanas
Da form
ma mais sim
mples pode
emos dizerr que as exxpressões booleanas
s são
as estabe
elecidas para
p
definiir, simplific
car e ma
anipular fu
unções lóg
gicas
regra
base
eadas em afirmações
a
s que são verdadeira
v
as ou falsas.
Indepen
ndente da simbologiia utilizada
a na interfface usuá
ário-máquin
na, a
dição de verdadeiro
o ou falso
o, internam
mente à máquina,
m
é interpre
etada
cond
segu
undo o recconhecime
ento de dois caracterres: 0 (zerro) e 1 (um
m). No cas
so do
MAT
TLAB®, zerro implica numa
n
cond
dição falsa
a, vazia, nu
ula ou nil, a
ao contrárrio do
um que
q está re
elacionado
o à uma condição verrdadeira.
Os símbolos de teste e op
peradores booleano
os podem ser resum
midos
pela tabela 2.1 e tabe
ela 2.2, re
espectivam
mente. Embora posssua simbo
ologia
distin
nta, na ma
aioria dos casos, a lógica de tais opera
adores é e
encontrada
a em
qualquer plataforma de programaç
p
ção.
Símbolo
==
~=
<
>
<=
>=
Teste
Igual
Diferente
Menorr que
Maior que
Menorr ou igual
Maior ou igual
Ex
xemplo
A ==
= B (A igu
ual a B)
A ~=
~ B (A differente de B)
A < B (A men
nor que B))
A > B (A maiior que B)
A <=
< B (A ma
aior ou igu
ual a B)
A >=
> B (A me
enor ou igu
ual a B)
Tabela 2.1 – Testte de expres
ssões boole
eanas.
3
31 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
Símbolo
&
|
Opera
ador
E
OU
U
Exemplo de C
Composição
o
A & B (A e B verdadeiros
s)
A | B (A ou B vverdadeiros
s)
Tabela 2.2
2 – Operad
dores de exp
pressões bo
ooleanas.
Além desses clá
ássicos tesstes e op
peradores booleanoss o MATL
LAB®
dispo
onibiliza outros
o
ope
eradores que pode
em simplifficar, em alguns ca
asos,
redu
uzindo a qu
uantidade de coman
ndos a serrem digitad
dos. São cconhecidas
s, em
alguns casos como
c
funçõ
ões boolea
anas matric
ciais, pois são aplica
adas a mattrizes
e nã
ão a “escala
ares”. As mais
m
imporrtantes pod
dem ser ob
bservadas na tabela 2.3.
Função
F
isem
mpt
iseq
qual
isnu
umeric
isch
har
Teste reto
orna verdad
deiro se
matriz é vazia
as matrrizes forem
m numerica
amente iguais
matriz é numérica
a
matriz é alfanumé
érica
Exemplo
o
ise
empt(M)
ise
equal(M)
isn
numeric(M))
iscchar(M)
Tabe
ela 2.3 – Fun
nções boole
eanas matric
ciais.
Estruturas de
d Seleç
ção
Como o próprio nome
n
já diz,
d a estru
utura de seleção
s
tem
m a funçã
ão de
selecionar um dado ou conjunto de
d dados segundo
s
uma proprie
edade inerrente
ao mesmo
m
ou selecionarr uma funçção a ser executada.
e
O MATLA
AB® possui dois
tiposs de estrruturas de
e seleção: if/elseif/e
else, e switch/case
s
e/otherwise
e. O
prim
meiro é com
mum em outras
o
lingu
uagens de programa
ação. Tais estruturas
s são
implementadass utilizand
do as expressões booleanas
b
descritas anteriormente.
Sua estrutura e o significcado lógico
o de sua sintaxe são exibidos n
na figura 2.2.
Figu
ura 2.2 – Estrutura e sin
ntaxe lógica
a da estrutura de seleçã
ão if.
3
32 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
A aplica
ação desse
e tipo de estrutura
e
pode
p
ser ilustrada nos exemplos a
segu
uir. Para exxecutar os scripts pre
essione o botão F5 ou
o clique no botão
.
load
d DadosE
Estrutura
aDeSelec
cao1 % Carrega os
o dados do HD
if A == B
respost
ta = 'A = B'
eif A ==
= F
else
respost
ta = 'A = F'
e
else
respost
ta = 'A desconhe
d
ecido'
end
load
d DadosE
Estrutura
aDeSelec
cao1 % Carrega os
o dados do HD
if E == G
respost
ta = 'E = G'
else
eif E ==
= C
respost
ta = 'E e C são chars.'
else
e
respost
ta = 'E não
n
enco
ontrado.'
end
E
EXERCÍ
ÍCIO AP
PLICADO
O
Prob
blema 2.1
.
O sistem
ma supervisório de uma
u
unidad
de de LEIT
TO FLUIDIZADO rec
cebe,
em tempo rea
al, sinais que lhe permitem,
p
dentre ou
utros, a m
manipulação do
siste
ema de ala
armes da unidade, como mos
stra de forrma simplificada a figura
f
2.3. Dentro de
e um conjunto de atuações, o sistema
s
envia diversa
as mensag
gens
ao operador,
o
l
lhe
informando o mo
otivo pelo qual o ala
arme foi a
acionado. Além
A
das mensage
ens, o sistema dissponibiliza
a um cód
digo num
mérico qu
ue é
onhecido co
omo desattivador da unidade.
reco
Figura 2.3
3 – Diagram
ma esquemático do prob
blema 2.3.
3
33 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
Um doss sinais reccebidos pelo operado
or é o da te
emperatura
a no interio
or do
Leito
o (termopa
ar 12). Tal temperatu
ura não po
ode excede
er 1200 ºC
C. Crie partte do
códig
go do supe
ervisório re
esponsáve
el pelas aç
ções acima
a. (Caso re
eal: LACO 2007
“MO
ODIFICADO
O”).
Consstruir um código
c
com
m os seguin
ntes objetiv
vos:
1. Confirm
1
mação do sinal recebiido;
2 Análise do sinal re
2.
ecebido e atuações.
a
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
O Script "EstruturaD
"
DeSelecao2"
" tem o objetivo de iniciar o leitor na %
%
% est
trutura de seleção (i
if-elseif-e
else).
%
%
%
% Dat
ta de criaç
ção: 15 de setembro de
d 2008.
%
% Dat
ta da últim
ma atualiza
ação: 15 de
e setembro de 2008.
%
% Cri
iado e atua
alizado por
r: Phillipi
i Rodrigo de Oliveira souza.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
clc;c
clear
sinal
l = 'SS';
sinal
l = 1201;
% elimina o sinal an
nterior
ebimento do
o sinal: SS - sem sinal
% não rece
% recebime
ento do sin
nal de tem
mp. em ºC(a cada inst
tante)
%%%%%
% confirmaç
ção do sina
al recebido
o %%%%%
if si
inal == 'SS
S'
n
num_protc_s
seg = 1378;
;
% nº protc seg a ser gera
ado
e
errordlg('F
Falha de co
omunicação com Termopar 12.','ERRO')
else
% nº protc seg a ser gera
n
num_protc_s
seg = 1379;
;
ado
end
%%%%%
% análise do
d sinal re
ecebido e atuações
a
%%%%%
if si
inal <= 120
00
% nº protc seg a ser gera
n
num_protc_s
seg = 2378;
;
ado
elsei
if sinal > 1200
n
num_protc_s
seg = 2379;
;
% nº protc seg a ser gera
ado
w
warndlg('Te
emperatura do leito a
acima do permitido.','PERIGO')
end
A fim de
d explorar o proble
ema e obtter diferentes resposstas, proponha
os para a variável
v
“sinal”.
valores distinto
A 1: Para eliminar
e
“ssinal” come
ente sua attribuição: CRTL
C
+ R.
DICA
DICA
A 2: Para “descomen
“
ntar”: CRT
TL + T.
O diag
grama a seguir re
esume de forma simplificada
s
a o fluxo
o de
dade, o sup
pervisório e operador.
inforrmações entre a unid
3
34 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
Além da
d estrutu
ura if/else
eif/else, mais
m
comum em linguagem
m de
prog
gramação, o MAT
TLAB® offerece outra estrrutura de
e seleção
o, a
switcch/case/otherwise. Ao
A contrário da estru
utura anterrior, essa está limita
ada à
cond
dição de ig
gualdade e desiguald
dade, veja a seguir na
a figura 2.3
3.
Figura
a 2.2 – Estru
utura e sinta
axe lógica da
a estrutura de
d seleção s
switch.
A aplica
ação dessse tipo de estrutura pode ser ilustrada no exemp
plo a
segu
uir.
clea
ar;clc
A = 2;
swit
tch A
case
e 1
var = ‘Nú
úmero 1.‘
case
e 2
var = ‘Nú
úmero 2.‘
case
e 3
var = ‘Nú
úmero 3.‘
3
35 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
othe
erwise
var = ‘Nú
úmero não definido.
.‘
end
E
EXERCÍ
ÍCIO AP
PLICADO
O
Prob
blema 2.2
.
Resolva
a o exerccício da estrutura de seleçção (if-elseif-else), visto
ante
eriormente,, com a estrutura
a (switch-case-otherrwise). De
essa vez, tal
temp
peratura não
n
pode
e ser infe
erior a 900
9
ºC.(C
Caso real: LACO 2007
“MO
ODIFICADO
O”).
Figura 2.4
4 – Diagram
ma esquemático do prob
blema 2.3.
Consstruir um código
c
com
m os seguin
ntes objetiv
vos:
1. Confirm
1
mação do sinal recebiido;
2 Análise do sinal re
2.
ecebido e atuações.
a
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
O Script "EstruturaD
"
DeSelecao3"
" tem o objetivo de iniciar o leitor na %
%
% est
trutura de seleção (s
switch-case
e-otherwise).
%
%
%
% Dat
ta de criaç
ção: 21 de setembro de
d 2008.
%
% Dat
ta da últim
ma atualiza
ação: 21 de
e setembro de 2008.
%
% Cri
iado e atua
alizado por
r: Phillipi
i Rodrigo de Oliveira souza.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
clc;c
clear
% elimina o sinal an
nterior
sinal
l = 'SS'; % não rece
ebimento do
o sinal: SS - sem sinal
sinal
l = 889; % recebimen
nto do sina
al de temp. em ºC(a cada insta
ante)
%%%%%
% confirmaç
ção do sina
al recebido
o %%%%%
switc
ch sinal
case 'SS'
% nº protc seg a ser gera
n
num_protc_s
seg = 1378;
;
ado
e
errordlg('F
Falha de co
omunicação com Termopar 12.','ERRO')
other
rwise
n
num_protc_s
seg = 1379;
;
ado
% nº protc seg a ser gera
end
%%%%%
% análise do
d sinal re
ecebido e atuações
a
%%%%%
3
36 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
%$$$$
$$$$$$$$$$ POR QUE A ESTRUTURA ABAIXO NÃ
ÃO É EXECUTADA ? $$$$$$$$$$$$$$%
switc
ch sinal
case sinal >= 900
9
n
num_protc_s
seg = 2378;
;
% nº protc seg a ser gera
ado
case sinal < 90
00
n
num_protc_s
seg = 2379;
;
ado
% nº protc seg a ser gera
w
warndlg('Te
emperatura do leito a
abaixo do permitido.','PERIGO')
other
rwise
.
...
end
A fim de
d explorar o proble
ema e obtter diferentes resposstas, proponha
os para a variável
v
“sinal”.
valores distinto
DICA
A 1: Para eliminar
e
“ssinal” come
ente sua attribuição: CRTL
C
+ R.
DICA
A 2: Para “descomen
“
ntar”: CRT
TL + T.
OBS
SERVAÇÃ
ÃO: a estru
utura switch/case/oth
herwise não pode se
er utilizada com
exprressões bo
ooleanas de
d desigua
aldade. Ob
bserve a seguir
s
um código es
scrito
em estrutura
e
d seleção
de
o switch/case/otherwiise com a utilização de expres
ssões
booleanas de desigualda
d
ade.
Estrutura de
e Repetiç
ção
Como o próprio nome já no
os dá uma idéia, a esstrutura de
e repetição
o tem
o ob
bjetivo de repetir
r
um determinado comand
do seguind
do um crité
ério predeffinido
pelo programa
ador. Esse tipo de esstrutura ev
vita que o usuário do
o código tenha
esma tarefa
a inúmerass vezes. Mas,
M
como a máquina sabe quando
que repetir me
para
ar de repettir o coman
ndo? O critério de pa
arada é ba
aseado na seguinte idéia:
toda
a região forra do domíínio de rep
petição é co
onsiderada
a como reg
gião de parrada,
ou seja,
s
caso a expresssão de re
epetição na
n seja ma
ais verdad
deira, o có
ódigo
interrrompe o lo
oop.
3
37 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
Esse tipo
t
de estrutura utiliza expressões
e
s booleanas desc
critas
ante
eriormente e trabalha
a com retorno de execução
e
d funçõess. Neste caso,
de
c
qualquer retorrno diferen
nte de 0 (zero)
(
é considerad
c
o como vverdadeiro, e 0
®
(zero
o) é conssiderado fa
also. O MATLAB
M
trabalha com
c
duas estruturas de
repe
etição, a “fo
or” e a “while”.
A estruttura “for” repete
r
a execução
e
dos
d coman
ndos enquanto para todo
valor de sua variável
v
co
omeçando e termina
ando com valores prredefinidos
s e a
passsos increm
mentados por
p um valo
or também
m predefinid
do. Na figu
ura 2.4 tem
mos a
estru
utura de siintaxe e su
ua interpre
etação. Em
m seguida acompanh
he um exemplo
de aplicação.
a
Figurra 2.4 – Estrrutura e sintaxe lógica da
d estrutura
a de repetiçã
ão for.
for x = 1:15
y = sin(
(x*pi)
end
+ exp(x*2);
;
Observe
e que amb
bas variáve
eis são mu
ultidimensio
onais (veto
ores). Esse
e tipo
de estrutura
e
po
ode ser utilizado de forma
f
enca
adeada.
E
EXERCÍ
ÍCIO AP
PLICADO
O
blema 2.3
Prob
.
No prob
blema 1.1 foi discutid
do o perfil de tempe
eratura sob
bre a superfície
de uma
u
placa onde
o
a forma matriciial do siste
ema de equ
uações foi dado por
3
38 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
Utilizand
do a estruttura de rep
petição (for) crie a matriz
m
de co
oeficientes com
a me
enor quanttidade de linhas que você pude
er. (Incrope
era et al, pág. 144).
% cr
riação da diagonal principal
l
for i = 1:1:6
6
for j = 1:1:6
1
if i == j
A
A(i,j)
= -4;
end
end
end
for i = 7:1:8
8
for j = 7:1:8
7
if i == j
A
A(i,j)
= -9;
end
end
end
% cr
riação da primeira diagonal superior principal
l
for i = 1:2:8
8
for j = 1:1:8
1
if i == j-1
A
A(i,j)
= 1;
1
end
end
end
% cr
riação da segunda diagonal
d
s
superior
principal
p
for i = 1:1:8
8
for j = 1:1:8
1
if i == j-2
A
A(i,j)
= 1;
1
end
end
end
3
39 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
% cr
riação da primeira diagonal inferior principal
l
for i = 1:1:8
8
for j = 1:2:8
1
if i == j+1
A
A(i,j)
= 2;
2
end
end
end
% cr
riação da segunda diagonal
d
i
inferior
principal
p
for i = 1:1:6
6
for j = 1:1:6
1
if i == j+2
A
A(i,j)
= 1;
1
end
end
end
for i = 7:1:8
8
for j = 1:1:8
1
if i == j+2
A
A(i,j)
= 2;
2
end
end
end
A estru
utura “whille” repete a execução dos comandoss enquanto
o as
exprressões de
e teste, ou expressõe
es boolean
nas, retorn
nam condiçção verdad
deira.
Na figura
f
2.5 te
emos a esstrutura de sintaxe e sua
s interprretação. Em
m seguida
a
Figurra 2.5 – Estrrutura e sintaxe lógica da
d estrutura
a de repetiçã
ão for.
m = 2;
for I =1:10
for J = 1:10
while I < m
if I == J
A(I,J) = 2;
elseif ab
bs(I-J) ==
= 1
A(I,J) = -1;
else
A(I,J) = 0;
end
I = I + 1;
1
4
40 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
end
end
end
Assim como
c
a anterior,
a
essa estruttura pode ser utilizzada de fo
orma
enca
adeada.
Sub-Rotinas como
c
Fun
nções (Tra
abalhando na janela
a de comandos)
A execu
ução de um
m código pelo
p
simple
es script é uma forma provisória de
testa
armos sua
a aplicação
o. Embora
a seja, na maioria dos
d
casos, a forma mais
simp
ples de exxecução de
e comando
os, não é a forma mais
m
profisssional. Iss
so se
deve
e ao incôm
modo de abrir
a
o código todas as vezes que precissarmos de
e sua
depu
uração, exxpondo-o aos
a erros de
d manipullação, além
m da “polu
uição visua
al” ao
qual o usuário é exposto
o.
Existe outra form
ma de compilação mais proffissional. Essa form
ma é
eada na estrutura
e
d
denominad
da functio
on, ou sim
mplesmente função. De
base
form
ma mais sim
mplificada podemos definir um
ma função como uma
a seqüência de
comandos que
e:
1.
1
2
2.
3
3.
4
4.
5
5.
Aceita parâmetros
p
s de entrad
da;
Retorna
a parâmetrros de saíd
da;
Utiliza espaço
e
de memória próprio
p
parra armazen
nar vaiáveiis locais;
Pode se
er chamada por outra
as funções
s;
Seu texxto de ca
abeça pode ser exib
bido na ja
anela de comando pelo
comand
do help.
O MATL
LAB® recon
nhece internamente três classe
es de funçõ
ões:
1 built-in: função in
1.
nterna. Esttá impleme
entada em
m seu núcle
eo e não é ser
visualizá
ável (Ex.: sin);
s
2 MATLA
2.
AB ® m-file
e: função implementada em m-file.
m
É vvisível e ab
berto
para alterações (E
Ex.: polyfit));
3 User m-file:
3.
m
funçã
ão criada pelo usuárrio. Você pode
p
imple
ementar novos
n
®
recursos no seu MATLAB
M
criando funções para
a áreas esspecíficas.
o coman
ndos whic
ch para achar
a
seu diretório, e open para
Utilize os
visua
alizar o código.
As funçções aceitam múlttiplos parâ
âmetros de
d entrada e retorrnam
múlttiplos parâ
âmetros de
e saída (e
está é um
ma caracte
erística mu
uito peculiar e
extre
emamente
e prática do
o MATLAB®).
A sintaxxe básica de
d definição de funçõ
ões segue o formato a seguir:
4
41 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
onde
e:
•
•
•
•
•
a que indic
ca o início de
d definiçã
ão de funçã
ão (é
function: palavra reservada
grafada
a de azul);
PS1, PS
S2, . . ., PS
SN: parâmetros de sa
aída;
nome: nome da fu
unção;
E2, . . ., PE
EN: parâmetros de entrada;
PE1, PE
express
são 1, . . . ,express
são N: ex
xpressões que define
em as açõ
ões a
serem executadas
e
s pela funçção.
SERVAÇÃ
ÃO: a funçã
ão e o arqu
uivo m-file devem terr o mesmo nome.
OBS
Em rela
ação aos pa
arâmetros de saída, se a funçã
ão for cham
mada:
1 com me
1.
enos parâ
âmetros qu
ue o decla
arado, a função
f
retornará apenas
parâme
etros forneccidos;
2 com ma
2.
ais parâme
etros que o declarad
do, o MAT
TLAB® acu
usará erro (Too
many ou
utput argum
ments – pa
arâmetros de saída em
e excessso);
3 se nenh
3.
hum parâm
metro for in
ndicado, fu
unção reto
ornará ape
enas o valo
or do
primeiro
o parâmetrro.
A seguir temos um
m exemplo
o de criação
o de uma função:
f
func
ction [s,v
v] = muv(s
s0, v0, a, t)
s = s0 +v0*t + a/2*t.^
^2;
v = v0 + a*t;
A seguir temos o exemplo
o de como
o uma fun
nção deve ser cham
mada,
mandos.
sempre na janela de com
>> [s,v] = mu
uv(10, 2, 3.5, 60)
A:
DICA
1. O núme
1
ero de arqu
uivos deve ser igual ao
a número
o de funçõe
es;
2 Utilize fu
2.
unções differentes pa
ara objetivo
os diferenttes;
OBS
SERVAÇÃ
ÃO: Os com
mandos na
argin (núm
mero de arrgumentoss de entrad
da) e
narg
gout (núm
mero de arrgumentoss de saída
a) podem ser usado
os combinados
com estruturass condicion
nais de pro
ogramação
o para elim
minar bugs de operad
dor.
Como já
á foi dito, o MATLAB
B® armazena suas va
ariáveis em
m uma áre
ea da
mem
mória que pode
p
ser visualizada
v
a pelo work
kspace. Ass funções trabalham com
variá
áveis loca
ais, isto é,
é ficam arrmazenada
as em áre
eas de me
emória pró
ópria,
independente do worksp
pace. Os escopos das variávveis do w
workspace e as
áveis locaiss podem ser
s definida
as da segu
uinte forma
a:
variá
•
•
Variáveis do workkspace não
o são recon
nhecidas dentro
d
das funções;
Variáveis locais de
e funções não são re
econhecida
as no MAT
TLAB®.
4
42 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
Parâme
etros de en
ntrada e saída são a forma (in
nterface) m
mais adequada
®
para
a troca de dados enttre o worksspace do MATLAB
M
e ambienttes interno
os de
funçções. Outra
a forma de
e compartilhamento de
d troca de
e dados en
ntre works
space
e fu
unções são as vaiá
áveis glob
bais. Variiáveis cria
adas no w
workspace são
reco
onhecidas por qualqu
uer função
o que explicite sua ca
ategoria co
omo globa
al em
seu código.
Para de
eclarar um
ma variável como glo
obal basta
a escreverr, no códig
go, a
palavra global seguida da(s) variávvel(is) a se
erem declaradas.
DICA
A: como as variáveiss globais podem
p
ser reconhecidas por qu
ualquer fun
nção,
evite
e declarar variáveis com
c
nomes de fácil conflito
c
como, “x”, ”m
m” ou ”i”. Utilize
U
os comandos whos,
w
clea
ar e isglob
bal para ge
erenciar va
ariáveis glo
obais.
E
EXERCÍ
ÍCIO AP
PLICADO
O
Prob
blema 2.4
.
A reduçção do FeS
S2 a FeS é processada em um reator tub
bular que opera
o
em reator de leito transsportado sob
s
escoamento ide
eal, a 495°°C e 1 atm. A
transsferência de
d massa externa é desprezíve
el e granullometria e distribuiçã
ão de
temp
pos de residência da
as partícula
as no reato
or são forne
ecidas na ttabela aba
aixo:
RA
AIO (µm)
% PESO
θR(s)
0,05
5
0,10
0
84
4
0,10
0,30
66
0,15
0
0
0,40
5
57
0,20
0,20
45
Dados: k = 0,0
019 cm/min
n; DH2/FeS = 3,6.10-6 cm2/s; kmH2 = 7,29.1
104 cm/s.
DIDO: Deciidir que eta
apa ou etapas são co
ontroladora
as.
PED
Solu
ução Analítica
esistências:
Cálcculo das re
4
43 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
RTM =
1
kH 2
2
RRQ =
=
1
=1,37.10 −5 s / cm
4
7,29.10
2
R
4 4 x 60
Ro
= 2o = =
=1266,31.103 s / cm
2
−3
R .k Ro
k 1,9.10
.k
4
Ro / 2
R ( R − R ) R o ( R o − R o / 2)
Ro
= o o
=
=
=
Ro
Ro
R.D H 2 / FeS
D H 2 / FeSS
F
. D H 2 / FeS
. D H 2 / FeSS
2
2
2
R DIF
Para
a o 1° raio:
Ro
0,05.10 −4
RDIF =
=
=1,389 s / cm
c
DH 2 / FwS 3,6.10 −6
Para
a o 4°raio:
Ro
0,20.10 −4
RDIF =
=
= 5,555 s / cm
c
DH 2 / FwS 3,6.10 −6
Com
mo Rrq >>
> Rdif >> Rtm, a etapa
e
controladora é a reaçã
ão química
a na
supe
erfície do sólido.
s
O proble
ema acima
a pode serr disposto em
e MATLA
AB® da seg
guinte form
ma:
func
ction [Res
sp] = redu
ucao1(k,D_
_H2_FeS,km
m_H2,R)
% Cá
álculo das
s Resistên
ncias %
Rtm = 1/km_H2
2;
Rrq = 4/k;
Rdif
f = (R*1e-4) / D_H2
2_FeS;
max_
_Rdif = ma
ax(Rdif);
% raio máximo
m
univ
versal = [Rtm Rrq max_Rdif];
m
; % concat
tenação da
as resistê
ências
maio
or = max(u
universal);
% maior valor ent
tre as res
sistências
s
% Ex
xibição da
as Respost
ta dado um
m critério
o condicio
onal %
if m
maior == universal(
u
(1)
Resp = 'R
Resistênci
ia à Trans
sferência de Massa.
.';
else
eif maior == univer
rsal(2)
Resp = 'R
Resistênci
ia à Reaçã
ão Química
a.';
else
eif maior == univer
rsal(3)
Resp = 'R
Resistênci
ia à Difus
são na Cam
mada de Ci
inzas.';
end
Ou aind
da, com a utilização
u
d múltipla
de
as funções::
func
ction [Res
sp] = redu
ucao2(D1,D
D2,D3,D4)
4
44 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
% De
eclaração de Variáv
veis Globa
ais %
glob
bal
k D_H
H2_FeS km_
_H2 R Rtm Rrq Rdif
% At
tribuição de Valore
es às Vari
iáveis %
k = D1;
D_H2
2_FeS = D2
2;
km_H
H2 = D3;
R = D4;
% Ch
hamada de funções auxiliares
a
s ou Sub-R
Rotinas %
res_
_tm % res
sistência à transfe
erência de
e massa
res_
_rq % res
sistência à reação química
res_
_dif % res
sistência à difusão
o na camad
da de cinz
zas
max_
_Rdif = ma
ax(Rdif);
% raio máximo
m
univ
versal = [Rtm Rrq max_Rdif];
m
; % concat
tenação da
as resistê
ências
maio
or = max(u
universal);
% maior valor ent
tre as res
sistências
s
% Ex
xibição da
as Respost
ta dado um
m critério
o condicio
onal %
if m
maior == universal(
u
(1)
Resp = 'R
Resistênci
ia à Trans
sferência de Massa.
.';
else
eif maior == univer
rsal(2)
Resp = 'R
Resistênci
ia à Reaçã
ão Química
a.';
else
eif maior == univer
rsal(3)
Resp = 'R
Resistênci
ia à Difus
são na Cam
mada de Ci
inzas.';
end
Onde as sub-rrotinas res_
_tm, res_rq
q e res_diff são, respe
ectivamente:
func
ction res_
_tm
glob
bal km_H2 Rtm % dec
claração de
d variáve
eis globai
is
Rtm = 1/km_H2
2; % cálcu
ulo da rsi
istência
func
ction res_
_rq
glob
bal k Rrq % declara
ação de va
ariáveis globais
g
Rrq = 4/k; % cálculo da
d rsistên
ncia
func
ction res_
_dif
glob
bal D_H2_F
FeS R Rdif
f % declar
ração de variáveis
v
globais
Rdif
f = R / D_
_H2_FeS; % cálculo da rsistê
ência
4
45 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?
C
Conside
eraçõe
es Finais
1 Criação
1.
o de um ca
abeçalho in
nformativo;
2 Comen
2.
nte o máxim
mo possíve
el o código
o;
3 Utilize o mínimo possível
3.
p
a memória fixa;
f
4 Use fun
4.
nções distintas para finalidades
s distintas;
5 O melh
5.
hor código é o menorr e mais rápido;
4
46 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Mód
du
ulo
o3
3:
M ipulaçção de
Mani
d Dados
D
s– C
Como
o
Tra
abalh
har ?
Módu
ulo 3: Man
nipulação
o de Dado
os – Com
mo Traba
alhar ?
Fun
nção de Tratamen
T
nto de Nome de Arquivos
A
s
Na gran
nde maioria dos cassos, os da
ados nece
essários à execução
o das
sub--rotinas nã
ão se encontram disp
poníveis de
e forma exxplícita. Alg
gumas vez
zes é
nece
essário um
m tratamento prévio de
d determiinadas info
ormações para garan
ntir a
compilação de
e códigos. Da mesma
a forma qu
ue importa
ar os dadoss, é importtante
tamb
bém exporrtar. Embo
ora o MATL
LAB® ofere
eça diversa
as formas de importtação
man
nipulação e exportaçção de dad
dos, verem
mos apena
as as maiss importanttes à
nosssa área.
Inicialmente traba
alharemos com as fu
unções de tratamentto de nom
me de
uivos, seguido por funções de exporttação e importação
i
o, funções
s de
arqu
trata
amento dad
dos e por último,
ú
Han
ndle Graph
hics.
filep
parts: retorrna informa
ação do arrquivo com
mo caminho
o, nome e extensão.. Sua
sinta
axe e exem
mplo de aplicação podem ser visualizadoss a seguir.
Fun
nções de
e Importa
ação e Ex
xportaçã
ão
dlmrread: lê um
ma matriz de
d um arquivo ASCII.
dlmw
write: gravva uma ma
atriz de um
m arquivo ASCII.
A
4
48 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 3: Man
nipulação
o de Dado
os – Com
mo Traba
alhar ?
load
d: lê variávveis do tipo
o “.mat” (formato biná
ário proprie
etário).
save
e: grava va
ariáveis do
o tipo “.matt”.
Outras funções de impo
ortação e exportação, assim
m como suas
resp
pectivas de
escrições podem
p
ser encontradas na tabe
ela 3.1.
Exteensão Descrição
D
o Fu
unção Retorn
no MATT CSV DAT DLM TAB XLS Fo
ormato MA
ATLAB N
Nº separado
s por ‘ , ’ Teexto formattado N
Números de
limitados N
Números tab
bulados Planilha do M
MS‐Excel loaad cvvsread im
mportdata dlmread dlmread xlssread WK1
1 Planilha do LLotus 123 wkk1read CDF** FITS** Common Data Format C
Fllexible Imag
ge Transporrt Syystem H
Hierarchical data Forma
at Fo
ormato AVI(animação)) Fo
ormato BM
MP Fo
ormato JPEG Fo
ormato GIF F
Fo
ormato Fo
ormato XDW
W Fo
ormato CUR
R Fo
ormato ICO
O Fo
ormato RASS (raster Sum
m) Fo
ormato PBM
M Fo
ormato PGM
M Fo
ormato PPM
M Fo
ormato AU
U (áudio Sun
n) Fo
ormato SND (áudio Su
un) Fo
ormato WA
AV (áudio MSS) cd
dfread fittsread Variáveiss no arquivo
o Matriz n
numérica Matriz n
numérica
Matriz n
numérica
Matriz n
numérica
Matriz n
numérica e ccell‐
array Matriz n
numérica e ccell‐
array cell‐arraay e registro
o CDF
Formato
o FTIS hd
dfread avviread Formato
o HDF Formato
o MATLAB m
movie im
mread Matrizess de cores (ttrue color) e índice (mapeam
mento) au
uread Dados de freqüênciia waavread Dados de freqüênciia HDF** AVI BMP
P JPEG
G GIF TIFF XDW
W CUR ICO RAS PBM
M PGM
M PPM AU SND WAV
V T
Tabela
3.1 – funções ge
erais para im
mportação e exportação
o de dados. (*) Padrão de
d
arquivo
os para troc
ca de dados criado pela
a NASA.
4
49 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 3: Man
nipulação
o de Dado
os – Com
mo Traba
alhar ?
Caso nã
ão se tenha certeza qual
q
tipo de dados a serem ma
anipulados, use
a fun
nção importdata. Esssa função recebe qualquer extensão da ttabela ante
erior.
Mas, se ela recebe
r
qu
ualquer exxtensão en
ntão porqu
ue utilizar as outras
s? A
funçção importd
data é um
ma função genérica e como tal não contém toda
as as
cara
acterísticass de armazzenamento
o que cada
a uma tem
m individua
almente. Como
C
ela possui um
m código de armazzenamento
o padrão, pode ser possível um
traba
alho a mais para con
nseguir exttrair o que se deseja..
Fun
nção de Tratamen
T
nto
Há caso
os que pre
ecisaremoss exportar dados para visualiza
ação no prompt
de comando
c
(janela de
e comando
os), mas nem
n
semp
pre a form
matação que o
MAT
TLAB® disp
põe é adeq
quada à sittuação.
Para ressolver esse
e problema
a iremos trrabalhar co
om o coma
ando ou função
ntf. Podem
mos definir as atribuições de
essa funçã
ão como a gravação de
fprin
dado
os em um arquivo forrmatado. Sua
S sintaxe
e pode serr observada a seguir..
Caracte
eres são uttilizados nos flags co
omo contrroladores d
de alinham
mento
e sin
nal. Eles esstão resum
midos na ta
abela 3.2.
Caraactere ‐ + 0 Descriçção Alinham
mento à esquerda Sempree impre sin
nal dos nú
úmeros Preenche espaço
os com ‘0’ em vez dee ‘ ’ Exemplo %
%‐5.2d %
%+5.2d %
%05.2d Tabela 3.2
2 – Caracterres dos flags do coman
ndo fprintf.
O parâm
metro T de
efine o núm
mero de díg
gitos à esq
querda do ponto dec
cimal.
Para
a definição
o do númerro de dígito
os à direita
a temos o parâmetro
o de entrad
da P.
O pa
arâmetro C define a identificaçã
i
ão de nota
ação como mostra a ttabela 3.3..
Fo
ormato %c %s %d %f %e Notação N
Caracterre Cadeia d
de caractere Decimal Ponto flu
utuante Exponen
ncial Exemp
plo fprintf(‘%’c,’’a’) fprintf(‘%’s,’’abc’)
fprintf(‘%’5..3d,’pi’)
fprintf(‘%5.3
3f’,’pi’)
fprintf(‘%’5..3e,’pi’)
Resultado a abc 3.142e+000 3.142 3.142e+000 Tabela 3..3 – Caracte
eres de identificação de
e notação.
5
50 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 3: Man
nipulação
o de Dado
os – Com
mo Traba
alhar ?
Alguns caracteress especiaiss podem ser
s utilizad
dos para a
atribuir fun
nções
extra
as ao fprin
ntf. São postos semp
pre após o primeiro conjunto
c
de
e parâmetros e
pode
em ser ressumidos na
a tabela 3.4
4.
Caraactere \b \f \n \r \t \\ \” %% Nom
me backkspace form
m feed new line carriage return
n horizzontal tab backkslash quottation marrk percent characcter Descriçção Retorno de caracctere Avanço
o de linha Pula lin
nha Retorno de linhaa Tabulaçção horizo
ontal Caracteere barra invertida Caracteere aspa ““ Caracteere porcen
ntagem %
% Tabe
ela 3.4 – Carracteres esp
peciais do fp
printf.
Grá
áficos e Handle
H
G
Graphics
Agora mostrarem
m
mos os reccursos disp
poníveis no
n MATLA
AB® de criação
nipulação de
d figuras para a aprresentação
o de resultados em fformato grá
áfico.
man
O co
onjunto dessses recurrsos é deno
ominado Handle
H
Gra
aphics.
Para efe
eitos de otimização
o
de resulta
ados é sug
gerido que
e a geraçã
ão de
gráfiicos seja organizada
o
segundo os
o passos a seguir:
so 0 – Pre
eparação dos Dados (leitura e tratamento
t
o);
Pass
Pass
so 1 – Seleção da
d janela ou sub--janela de
e exibição
o (chamad
da e
conffiguração da
d figure);
Pass
so 2 – Cha
amada dass funções de
d criação dos gráficcos em 2D e/ou 3D;
Pass
so 3 – Con
nfiguração dos gráficcos.
A seguir veremos um exemp
plo que seg
gue os passsos anterriores.
Pass
so 0
x = -2*pi:0.1:2*
*pi;
y = x.*cos(2*x)
x
);
Pass
so 1
figurre
5
51 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 3: Man
nipulação
o de Dado
os – Com
mo Traba
alhar ?
figurre('Name','Phillipi Sou
uza’)
figurre('Name','Phillipi Sou
uza','Numb
ber‘,'off')
figurre('Name','Phillipi Sou
uza','Numb
ber','off','Co
olor',‘c')
Para ma
ais atribuiçções consu
ulte as prop
priedades da figure n
no help.
Pass
so 2
plot((x,y)
plot((x,y,’+’)
plot((x,y,’r+’)
Cores, marcadore
m
es e tipo de
e linhas po
odem ser re
esumidos n
na tabela 3.5.
3
Cor y (am
marelo)
m (m
magenta)
c (azzul‐claro)
r (ve
ermelha)
g (ve
erde)
b (azul)
w (b
branca)
k (preta) Marcad
dor . (ponto
o)
o (círcu
ulo)
x (x’s)
+ (cruz))
* (estreela)
s (quad
drado)
d (losan
ngo)
v (triângulo p/ baaixo)
^ (triân
ngulo p/ cima) TTipo de Lin
nha : (pontilhaado)
‐
‐. (ponto‐t
traço)
‐
‐‐ (tracejad
do)
s
solid (sólid
da) Tabela 3.5 – Cores, marcadore
es e tipos de
e linhas.
Pass
so 3
grid
grid
legend('curva'))
grid
legend('curva'))
xlabel('eixo x')
grid
legend('curva'))
xlabel('eixo x')
ylabel('eixo y')
5
52 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 3: Man
nipulação
o de Dado
os – Com
mo Traba
alhar ?
O MATLAB® posssui inúmeras estrutu
uras de exxibição grá
áfica. Algu
umas
delas podem ser
s encontrradas na ta
abela 3.6.
Coman
ndo loglo
og sem
milog(i) impulse step
p bode polaar nich
hols nyqu
uist zppllot resid
d sim Atribuiçção Valor loggarítmico de x e y. Valor loggarítmico de x e lineear para yy.
Respostta ao impu
ulso. Respostta ao degrau. Diagram
ma de BOD
DE.
Gráficoss com eixo
os de coorrdenadas p
polares. Diagram
ma de Nich
hols. Diagram
ma de Nyquist. Zeros e pólos de ffunções trransferênccia. Análise de correlaações e co
orrelaçõess cruzadas. Simulação de modelos mattemáticos. Tabe
ela 3.6 – esttruturas de exibição
e
grá
áfica.
E
EXERCÍ
ÍCIO AP
PLICADO
O
blema 3.1
Prob
.
Acessse graf1.m
m em seu diretório
d
pa
articular.
Utilizze o máxim
mo de reccursos visttos nesse módulo. (V
Você terá 10 minuto
os, 5
para
a cada usuário)
5
53 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 3: Man
nipulação
o de Dado
os – Com
mo Traba
alhar ?
C
Conside
eraçõe
es Finais
1 O tratam
1.
mento prévvio dos dad
dos pode agilizar
a
os resultadoss;
2 Não é necessárrio conheccer todo o Handle Graphicss (sua áre
2.
ea é
haria Quím
mica);
Engenh
3 O tipo de
3.
d saída attribuída aos dados de
epende da
a objetivida
ade do projjeto;
4 Se a saída
4.
s
retorrnar resulta
ados incoe
erentes, o erro está,, com absoluta
certeza
a, no algoriitmo de criação dos dados;
d
5
54 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Mód
du
ulo
o4
4:
Estudo
o de Cassos
Módu
ulo 4: Esttudo de Casos
C
Através dos três módulos anteriores
a
o leitor te
eve para ssi as princ
cipais
inforrmações de
d ambiente e intterface, programaçã
ão, cálculo
o vetorial em
aritm
mética de máquina, e importa
ação, expo
ortação e manipulaçção de da
ados.
Esse
es conheciimentos, no
n entanto, são gerais para qua
alquer área
a da ciência no
qual o MATLAB® pode se
er utilizado
o.
O módu
ulo 4 destte curso vem
v
definir nosso estudo
e
em MATLAB
B® na
Enge
enharia Química.
Q
T
Tem
como
o base os
o conceito
os vistos anteriorm
mente
pode
eremos entender
e
a ferram
as
mentas que o softw
ware disp
ponibiliza para
solucionar nosssos proble
emas profisssionais.
Veremo
os agora so
oluções pa
ara problem
mas cotidia
anos em no
osso laborr, tais
o de EDOs, solução
o de EDP,, solução de SELs, dentre ou
utros.
como, solução
Nosssos estudo
os estão divididos em
m vários estudos
e
de casos apresentados
s até
o fim
m do curso.
CA
ASO 1: Tanque Pulm
mão
(Traba
alhando
o com Estrutturas de
d Repe
etição)
Um tanque no qu
ual um líqu
uido incom
mpressível (densidad
de constan
nte) é
3
bom
mbeado a uma
u
vazão
o variável, F0 (m /s). Esta taxa
a de entra
ada pode variar
v
com o tempo devido a trocas em
m operaçõe
es de conttra correntte. A alturra do
do no tanq
que vertica
al cilíndrico
o é h (m). A vazão de saída do tanque
eé F
líquid
(m3/s).
/
e que F0, h e F são variáveis como tempo e conseqüentemente,
Sabe-se
são funções do
d tempo t. Conseqüentemente nós usamos as n
notações F0(t),
h(t) e F(t). Líq
quidos parttindo da ba
ase do tan
nque ao lo
ongo do du
uto horizon
ntal e
desccarrega no
o topo de
e outro ta
anque. Am
mbos os tanques ssão aberto
os à
atmo
osfera.
Figura 4.1.1 – Tanqu
ue Pulmão
5
56 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
E
Este
é um simples exemplo
e
de
e aplicação
o de equações do m
movimento para
siste
emas macrroscópicoss. Para a Figura
F
4.1.1vamos to
omar a linh
ha de saída
a por
2
L (m
m) e sua respectiva área
á
de seçção transversal por At (m ). A á
área do tanque
é considerada constante
e e igual a A (m2).
A parte de
este processso que é descrita pelo
p
balançço de força
as é o flux
xo do
fluido
o líquido através
a
do tubo. Ele terá
t
uma massa
m
dada
a por:
(4
4.1.1)
E
Esta
masssa terá uma
a velocidad
de v (m/s) dada por:
(4
4.1.2)
Assumindo
A
o que o líq
quido é inccompressív
vel e se de
esloca integralmente com
velocidade con
nstante, se
e comporttando com
mo se fosse
e um corp
po sólido. Se o
fluxo
o for turbu
ulento, as equaçõess (4.1.1) e (4.1.2) seriam uma
a aproximação
ruim
m.
A quantida
ade de líqu
uido do tubo não irá
á variar com o tempo
o. Mas, se
e nós
quisermos mudar a vazã
ão de saíd
da do fluid
do, a veloccidade do líquido pre
ecisa
ser mudada. E para tro
ocar a vellocidade ou
o o mom
mento de u
um líquido
o nós
deve
emos exerccer uma fo
orça sobre o líquido.
A direção
o de interresse nesste problema é a horizontal desde então
e
assu
umimos qu
ue o tubo
o é horizo
ontal. A fo
orça aplica
ada sobre
e o líquido
o na
extre
emidade esquerda
e
d tubo é a pressã
do
ão hidráulicca do líqu
uido no tanque
dada
a por:
(4
4.1.3)
e g é a ace
eleração devido à grravidade e é 9,81 m//s2 se o tan
nque estive
er no
onde
nível do mar. A pressão
o estática no interio
or do tanque e no fiim da linha de
saída são igu
uais assim
m, nó não
o precisam
mos incluí--los. Apen
nas uma força
f
emp
purrando na
a direção oposta
o
(da
a direita pa
ara a esque
erda), a força de atritto do
fluido
o líquido. Seu
S valor pode
p
ser dado
d
por:
(4
4.1.4)
Sabendo que a re
elação bássica que é usada para escreve
er as equa
ações
de movimento
m
o para um sistema. Na forma
a mais gerral, onde a massa pode
varia
ar com o te
empo, temo
os
(4
4.1.5)
onde
e vi é a ve
elocidade na
n direção i em (m/s) e Fji é a j-ésima
j
forrça atuand
do na
direçção i.
Substitu
uindo as de
emais equa
ações na equação
e
(4
4.1.5), temos
5
57 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
(4
4.1.6)
(4
4.1.7)
Para descrever o sistema
a complettamente, uma equação tota
al da
conttinuidade no
n líquido no tanque
e também é requerid
da. Nesse caso pode
emos
ter
(4
4.1.8)
Nós pre
ecisamos de um método
m
numérico pa
ara resolve
er essas duas
ações diferrenciais orrdinárias acopladas. A equação
o (4.1.7) é não linea
ar por
equa
caussa do term
mo v2. Dim
mensões físicas,
f
va
alores de parâmetro
p
s e dados
s em
regim
me de esta
acionarieda
ade são da
ados pela Tabela
T
4.1.1.
Tuboo:
di = 3 m
A = 7,06 m2
L = 3000 m
A = 113 m2
h=7m
Tanq
que:
di = 12 m
Valores em Estado Estacion
nário:
F = 35,1 m3/ss
h = 4,72 m
v = 4,97 m/ss
Parââmetros:
R = 1 380 00
Re
00
Fator de
d Atrito = 0,0123
0
Kat = 2,81
2
x 10-2 N//(m/s)2
Tabella 4.1.1 – dadoos paramétricoos do problem
ma Tanque de Fluxo
F
gravitaccional.
Usando
o a relação
o F = v . At e subs
stituindo oss valores numéricos
s dos
âmetros na
as equaçõe
es (4.1.7) e (4.1.8), te
emos:
parâ
(4.1.9)
(4.1.10)
A segu
uir temoss o códig
go que fornece
f
e resoluçã
ão integrando
num
mericamente duas EDOs
E
aco
opladas de
escritas anteriormen
a
nte com duas
cond
dições iniciais de vazzão e nível no tanque: (1) quan
ndo a vazã
ão inicia é 50%
da máxima
m
e (2) quando
o a vazão inicial é 67%
6
da má
áxima. No
o tempo igu
ual a
zero
o, a vazão no tanque é levada ao
a máximo
o segundo o seu limitte, 35,1 m3/s.
funct
tion [h1,h2
2] = gravit
tytank(v0_1
_1,h0_1,v0_
_2,h0_2,tem
mpo_sim,deltat)
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
% "gr
ravitytank"
" é uma fun
nção que si
imula um tanque de fluxo por g
gravidade. %
5
58 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
%
%
râmetros de
e entrada:
% Par
%
%
%
%
v0_1 ->
%
> vazão de entrada co
om 67% da vazão mássica.
%
%
h0_1 ->
> nível ini
icial.
%
%
v0_2 ->
> vazão de entrada co
om 50% da vazão mássica.
%
%
h0_2 ->
> nível ini
icial.
%
%
tempo_s
sim -> temp
po de simul
lação.
%
%
deltat -> passo de
d tempo.
%
%
%
% Par
râmetros de
e saída:
%
%
%
%
h1 -> resposta
r
em
m nível da vazão v0_
_1.
%
%
h2 -> resposta
r
em
m nível da vazão v0_
_2.
%
%
%
% Cri
iado e atua
alizado por
r: Phillipi
i R. O. Souza.
%
% Dat
ta de criaç
ção: 22 de agosto de 2008.
%
% Dat
ta da últim
ma atualiza
ação: 23 de
e agosto de 2008
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
clc
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
de variáveis
%
%
D
Declaração
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
%
%
%
%
%
v0_
_1 = 3.40;
%
h0_
_1 = 2.05;
%
%
v0_
_2 = 2.50;
h0_
_2 = 2.05;
%
tem
mpo_sim = 800;%
8
%
del
ltat = 1;
m/s %
m %
m/s %
m %
s %
s %
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
%
Valor Inicial
I
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
v1(1)
)
h1(1)
)
v2(1)
)
h2(1)
)
=
=
=
=
v0_1;
h0_1;
v0_2;
h0_2;
%
%
%
%
m/s %
m %
m/s %
m %
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
%
Resol
lvendo usan
ndo Euler Explicito
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
fprin
ntf('******
***********
***********
*********************\n');
*\n');
h2
v2
fprin
ntf(' Tempo
o
v1
h1
fprin
ntf('******
***********
***********
*********************\n');
i = 1;
1
while
e i <= (tem
mpo_sim + 1)
1
dv1dt(i) = (0.0107*h1
d
1(i)) - (0.
.00205*v1(i)^2);
d
dh1dt(i)
= 0.311 - (0
0.0624*v1(i
i));
v
v1(i+1)
= v1(i)
v
+ del
ltat*dv1dt(
(i);
h
h1(i+1)
= h1(i)
h
+ del
ltat*dh1dt(
(i);
dv2dt(i) = (0.0107*h2
d
2(i)) - (0.
.00205*v2(i)^2);
d
dh2dt(i)
= 0.311 - (0
0.0624*v2(i
i));
v
v2(i+1)
= v2(i)
v
+ del
ltat*dv2dt(
(i);
h
h2(i+1)
= h2(i)
h
+ del
ltat*dh2dt(
(i);
tempo(i+1) = i - 1;
t
%2.4f |\n',...
%2.0f
f
fprintf('|
%
%2.4f
%2
2.4f
%2.4f
tempo(i
i),v1(i),h1
1(i),v2(i),
,h2(i));
f
fprintf('----------------------------------------------\n');
i = i + del
ltat;
end
5
59 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
%
Exibiçã
ão Gráfica
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
plot(
(tempo,h1,'
'r')
hold on
plot(
(tempo,h2,'
'b')
grid on
xlabe
el('Tempo (s)');
(
ylabe
el('Nível do
d Tanque (m)');
(
legen
nd('67% da vazão tota
al','50% da
a vazão total');
ylim(
([0 9]);
hold off
end
Como pode
p
ser observado
o
é utilizado
o o algoritm
mo Expliciito de Eule
er de
meira ordem
m. As variá
áveis que nós estam
mos resolve
endo são v e h.Para
a o iprim
ésim
mo passo te
emos
(4.1.11)
(4.1.12)
Os novo
os valores de h e v no (i+1)-és
simo passo
o são calcculados usando
Eule
er com passso de tempo deltat.
(4.1.13)
(4.1.14)
Os resu
ultados pod
dem ser visualizados
s no promp
pt ou graficcamente, como
c
mostra a Figurra 4.1.2.
6
60 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
Figura 4.1.2
2 – resposta
a temporal do
d sistema para
p
diferentes sinais d
de excitação
o.
Observe
e que o fatto de apliccarmos um
ma vazão de alimenta
ação maiorr não
h
um escoamen
nto de desc
carga maio
or. Isto é d
devido à inércia
significa que haverá
m
de lííquido no tubo.
t
da massa
Con
nteúdo Adicional
Algoritm
mos explíccitos envo
olvem cálculos exp
plícitos de
e derivada
as e
em interações. Dois método
os popularres e de fácil
passsadas de tempo se
utilizzação são
o descritoss a seguir: Euler e Runge-K
Kutta de quarta ordem.
Existem muito
os outros algoritmo
os na literratura. Mu
uitos são extremam
mente
complexos, difíceis
d
pa
ara progra
amar e depurar
d
e outros extremam
mente
ineficientes pa
ara resoluçã
ão práticoss de proble
emas em engenharia
e
a Química.
Algo
oritmo de Euler
E
O maiss simples método numérico
n
de
d integra
ação é co
onhecido como
c
Méto
odo de Euller. Assum
ma que nóss desejamo
os resolverr a EDO
(4.1.15)
e f(x,t) é, em geral, uma funçção não liinear. Preccisamos a
agora sabe
er as
onde
cond
dições inicciais de x, ou seja, qual o valor de x parra um dado
o tempo in
nicial.
Ou ainda
a
(4.1.16)
6
61 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
Agora se
s nós movvermos um
ma janela temporal
t
d passo Δ
de
Δt para t = t1 =
Δt, nós
n podem
mos ter uma estimativva de um novo
n
valorr de x em t = Δt, x(Δtt), de
uma
a extrapolação linear usando a taxa inicia
al de variaçção de x (a
a derivada de x
em t = 0). O novo
n
valorr de x(xt) é aproxima
adamente igual ao vvalor antig
go de
x(x0) mais o prroduto da derivada
d
d x, vezes
de
s o passo de
d tempo:
(4.1
1.17)
(4.1
1.18)
6
62 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
CASO 2: Cálculo da
a Temp
peraturra Teórrica da
a
Chama
a do Prropano
o
(Traba
alhando
o com Estrutturas de
d Repe
etição)
Quando
o o sistem
ma é uma
a substânc
cia homog
gênea com
m compos
sição
consstante, a rega de fases in
ndica que
e, Fixando
o os valo
ores de duas
prop
priedades intensivas, o seu esttado fica estabelecido. Conseq
qüentemen
nte a
enerrgia interna
a molar ou
u específicca de uma substância pode se
er represen
ntada
como função de
d duas ou
utras variávveis de esttado. Esco
olhemos arrbitrariamente a
peratura e o volume molar ou específico,
e
U = U(T,V
V). Onde,
temp
((4.2.1)
ou ainda
a
((4.2.2)
A últtima parce
ela pode se
er igualada
a a zero em
m duas circcunstânciass:
•
•
Em qua
alquer proccesso a vollume consttante, quallquer que sseja a
substân
ncia.
Sempre
e que a ene
ergia intern
na for inde
ependente do volume
e, qualquerr que
seja o processo.
p
F
Finalmente
e,
(4.2.3)
(4.2.4)
A avalia
ação dessa integral requer o conhecime
ento da de
ependênciia da
capa
acidade ca
alorífica co
om a temp
peratura. Essa
E
depe
endência é normalm
mente
forne
ecida pela equação empírica
e
(4
4.2.5)
onde
e C ou D é igual a zero
z
dependendo da
a substânccia conside
erada. Com
mo a
Razã
ão CP/R é adimensional as un
nidades de
e CP são governada
g
as pela esc
colha
6
63 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
do R.
R A avaliação da inte
egral é efe
etuada com
m a substittuição de u
uma expre
essão
para
a CP como uma função da tem
mperatura, seguida de
e uma inte
egração formal.
Pata
a limites de
d temperratura de T0 e T, o resultado é con
nvenientem
mente
repre
esentado como:
c
(4.2.6)
Identificcamos a grandeza em
e colchettes como <CP>H/R, onde <CP>H é
defin
nida como uma capa
acidade callorífica média:
(4
4.2.7)
Consseqüentem
mente a eq
quação da entalpia po
ode ser esscrita como
o:
(4.2.8
8)
Expllicitando T:
(4
4.2.9)
Um valo
or inicial para
p
T permite a av
valiação de
d <CP>H. A substitu
uição
ornece um
m novo valo
or para T a parir do
o qual se pode reav
valiar
dessse valor fo
<CP>H. A interração conttinua até que
q haja co
onvergênccia para um
m valor fina
al de
T.
As reações em qu
uestão, seg
gundo os trabalhos de
d L. P. de Araújo e S.
S M.
A. Alves,
A
são
a)
a
b
b)
c
c)
, para oss quais,
Reação (a)
Reação (b)
Reação (c)
6
64 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
Dessa forma
f
a entalpia glob
bal é dada por,
Para a temperatur
t
ra da cham
ma teórica (temperatu
ura máxim
ma alcançad
da) é
proccurada, vam
mos consid
derar que a reação é completa
a e adiabáttica (Q = 0).
0 Se
as variações de
d energia e cinética e potencia
al forem de
esprezíveis, e se We = 0,
o ba
alanço glob
bal de enerrgia do pro
ocesso se reduz a ΔH
H = 0. Com
mo o objettivo é
calcu
ular a tem
mperatura final,
f
qualq
quer trajetó
ória entre os dados inicial e fin
nal é
convveniente. A trajetória escolhida
a pode ser visualizad
da no diagrrama da Figura
4.2.1
1.
Fiigura 4.2.1 - quando um
m mol de etileno queima
ado é a base
e para todos
s os cálculo
os.
A variaçção de enta
alpia deve ser indepe
endente da
a trajetória
a,
(4.2.10)
onde
e todas as entalpias são na ba
ase de um mol de C3H8 queima
ado. A variação
de entalpia
e
doss produtoss , quando eles são aquecidos
a
de 298,15 K até T, é:
é
(4.2.12)
onde
e definimo
os
prod
dutos total:
como a capacidade
c
e calorífica
a média d
da corrente de
.
(4.2
2.13)
6
65 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
Nesse caso,
c
o prrocedimen
nto mais simples é somar
s
as equações
s das
capa
acidades caloríficas
c
médias do
os produto
os, cada qu
ual multiplicado pelo
o seu
devid
do número
o de moless. Como C = 0 para cada
c
produ
uto gasoso
o da reação
o em
quesstão temoss que
(4.2
2.14)
Os dado
os das con
nstantes po
odem ser resumidos
r
segundo a Tabela 4.2.1.
Com
mponente
CO
CO2
N2
NO
O2
A
3,37
76
5,45
57
3,28
80
3,38
87
3,63
39
B (103)
0,557
1,045
0,593
0,629
0,506
C (10
( 6)
0
0
0
0
0
D (10-55)
-0,031
-1,157
7
0,040
0,014
-0,227
7
Tabe
ela 4.2.1 - co
onstantes da
as capacida
ades calorífiicas dos pro
odutos (gases) no estad
do de
gás ideal.
Dessa forma as equaçõess (4.2.12) e (4.2.14
4) são combinadas e T
explicitado gerrando a equação
(4.2.15)
Conside
erando o ar
a uma mistura gaso
osa com 21%
2
de oxxigênio e 79%,
7
0
temo
os para a quantidade
q
e teórica de
e ar a 25 C.
Fiigura 4.2.2 - digrama es
squemático da combustão no queimador para
a a quantidade
teóriica de ar a 25
2 ºC.
O código impleme
entado nessse caso é dado a se
eguir:
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
% Uni
iversidade Federal de
e Pernambuc
co
%
% Cen
ntro de Tec
cnologia de
e Geociênci
ia
%
% Dep
partamento de Engenha
aria Químic
ca
%
% Lab
botatório de
d Controle
e e Otimiza
ação de Processos - LACO
%
% Cri
iado e Atua
alizado por
r: Phillipi
i Rodrigo de Oliveira Souza
%
% Dat
ta da criaç
ção: 12 de abril de 2007
2
%
% Dat
ta da últim
ma atualiza
ação: 12 de
e abril de 2007
%
%
%
e da combustão do gá
% Cál
lculo da te
emperatura da chama provenient
p
ás propano.%
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
6
66 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
clear
r;clc
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
% Cál
lculo do Ca
alor(Entalp
pia) Padrão
o da reação de combustão:
%
%
%
%
C3H
H8(g) + 7/2
2O2(g) -------> 3CO2(g) + 4H2O(g)
%
%
CO(g) + 1/2O2(g) --------> CO2(g)
%
%
N2(g)
) + O2(g)--------> 2NO(g)
%
%
%
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
fprin
ntf('
Dados Gerais\n');
fprin
ntf('
------------\n');
fprin
ntf('\n');
fprin
ntf('C3H8(g
g) + 7/2O2(
(g) -------> 3CO2(g) + 4H2O(g) \n');
fprin
ntf('CO(g) + 1/2O2(g)
) -------->
> CO2(g) \n');
fprin
ntf('N2(g) + O2(g)--------> 2NO
O(g) \n');
fprin
ntf('\n');
DHo_F
For298_CO2_
_g = -393.5
509;
DHo_F
For298_H2O_
_g = -241.8
818;
DHo_F
For298_C3H8
8_g = 104.6
680;
DHo_F
For298_CO_g
g = -110.52
25;
DHo_F
For298_NO_g
g = 90.250;
;
DHo_F
For298_N2_g
g = 33.180;
;
DHo_C
Comb298_a = 3*DHo_For
r298_CO_g + 4*DHo_For298_H2O_g
g - DHo_For
r298_C3H8_g
g;
DHo_C
Comb298_b = DHo_For29
98_CO2_g - DHo_For298_CO_g;
DHo_C
Comb298_c = 2*DHo_For
r298_NO_g - DHo_For298_N2_g;
DHo_C
Comb298 = DHo_Comb298
D
8_a + DHo_C
_Comb298_b + DHo_Comb298_c;
fprin
ntf(...
'
'DHo_Comb29
98_a = 3*DH
Ho_For298_C
_CO_g + 4*DHo_For298_
_H2O_g DHo_F
For298_C3H8
8_g\n'...
)
);
fprin
ntf(...
'
'DHo_Comb29
98_b = DHo_
_For298_CO2
2_g - DHo_
_For298_CO_
_g\n'...
)
);
fprin
ntf(...
'
'DHo_Comb29
98_c = 2*DH
Ho_For298_N
_NO_g - DHo_For298_N2_g\n'...
)
);
fprin
ntf('\n');
fprin
ntf(...
'
'DHo_Comb29
98 = DHo_Co
omb298_a + DHo_Comb298_b + DHo_Comb298_c
c\n'...
)
);
fprin
ntf('DHoCom
mb298 = %2.
.4f J\n',DH
Ho_Comb298);
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%Cálc
culo da Cap
pacidade Ca
alorífica média
m
da corrente de
d produto total, CPH
H%
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
% Const
tantes da eq.:
e
C/R = A + BT + CT^2 + DT^-2 %
A_CO2
2 = 5.457;
A_CO = 3.376;
A_H2O
O = 3.470;
A_O2 = 3.639;
A_N2 = 3.280;
A_NO = 3.387;
B_CO2
2 = 1.045*1
10^-3;
B_CO = 0.557*10
0^-3;
B_H2O
O = 1.450*1
10^-3;
B_O2 = 0.506*10
0^-3;
6
67 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
B_N2 = 0.593*10
0^-3;
0^-3;
B_NO = 0.629*10
D_CO2
2 = -1.157*
*10^5;
D_CO = -0.031*1
10^5;
D_H2O
O = 0.121*1
10^5;
D_O2 = -0.227*1
10^5;
D_N2 = 0.040*10
0^5;
D_NO = 0.014*10
0^5;
R = 8.3145;
8
To = 298.15;
Taux = 299;
Taux_
_ex = 299;
erro = 0.00001;
;
T = 300;
3
T_ex = 300;
%
%
%
%
%
%
%
J/mol.K
K %
K %
K %
K %
K %
K %
K %
% A quantidade
q
teórica de
e ar a 25ºC
C %
n_CO2
2 = 1;
% mol %
n_CO = 2;
% mol %
n_H2O
O = 4;
% mol %
n_NO = 2;
% mol %
fprin
ntf('\n');
fprin
ntf('quanti
idade teóri
ica de ar a 25ºC.\n');
Soma_
_nA = (n_CO
O2*A_CO2) + (n_H2O*A_
_H2O) + (n_CO*A_CO) + (n_NO*A_
_NO);
Soma_
_nB = (n_CO
O2*B_CO2) + (n_H2O*B_
_H2O) + (n_CO*B_CO) + (n_NO*B_
_NO);
Soma_
_nD = (n_CO
O2*D_CO2) + (n_H2O*D_
_H2O) + (n_CO*D_CO) + (n_NO*D_
_NO);
fprin
ntf('\n');
fprin
ntf('Temper
ratura(T)
K
ºC\n');
i = 0;
0
while
e abs(T - Taux)
T
> err
ro
i = i + 1;
MCPH = R*(Soma_
_nA+(Soma_n
_nB/2)*To*(T
T/To+1)+(Soma_nD/2)/((T/To)*To
o^2))/1000;
Taux = T;
T = To
T - (DHo_C
Comb298/MCP
PH);
ToC = T - 273;
ToC_v
vetor(i) = ToC;
i_vet
tor(i) = i;
;
fprin
ntf('
%2.0f
%2.4f
%2.4f\n',i,T,T
ToC);
end
6
68 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
CA
ASO 3: Contro
oladore
es Automátic
cos
(ajusta
ando Curvas)
C
)
No troccador de calor
c
tipo “camisa”
“
de
d um reator CSTR é injetado
o um
fluido
o de aquecimento. O engenhe
eiro responsável pela
a automaçã
ão de seu setor
sabe
e que precisará de um contrrolador que atue so
obre a vazzão do líq
quido
aque
ecedor com
m a finalidade de altterar a tem
mperatura do
d produto
o no interio
or do
tanq
que. Para que
q
seu controlador
c
r realize ta
al operação, ele neccessita de uma
relaçção matem
mática entrre as variávveis contro
olada e ma
anipulada. Para tanto ele
deve
e realizar uma estimação ba
aseada em
m dados amostrado
os do sisttema
(iden
ntificação ou
o modela
agem empíírica). Com
mo estão disponíveis
d
s poucos dados
(den
ntro de seu
u intervalo
o de opera
ação), será
á necessárria uma prrecisão de
e sua
parte
e na estimação do modelo
m
(equação), já que o successo do controladorr está
direttamente lig
gado a preccisão da equação es
stimada.
V
Vazão 3
0,1
(m /min)
Temp
peratura 91,99
9
(ºC)
0,2
2
0,3
0,4
0,5
0,6
6
0,7
93,4
45
96,10
97,12
97,35
9
99,6
63
98,46
0,8
0,9
99,28 10
00,97
Precisamos saberr que tipo de
d equação será neccessário pa
ara satisfaz
zer o
ara isso va
amos visua
alizar os da
ados numa
a figura grá
áfica.
conttrolador. Pa
figur
re('Number'
','off','Na
ame','Teste
e Gráfico (CASO 3)','Color','w
w')
plot(
(V,T,'ro')
grid
title
e('Teste Gr
ráfico (CAS
SO 3)')
xlabe
el('Vazão (m^3/s)')
(
ylabe
el('Tempera
atura (ºC)‘
‘)
6
69 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
Observe
e que uma
a reta parece satisfaz
zer o probllema. Poré
ém, lembre
e que
a te
emperatura
a máxima alcançada
a pelo pro
oduto é a temperattura do líq
quido
aque
ecedor. Asssim para V → ∞, T → Taq.
Para esstimar a eq
quação polinomial ne
ecessária vamos
v
utilizar o comando
poly
yfit.
Onde: x = variá
ável relacio
onada à ab
bscissa do
o plano orto
ogonal;
y = variá
ável relacionada à ordenada do plano orttogonal;
n = orde
em do polinômio a se
e ajustar.
Apliccando:
funct
tion [poli]
] = caso3(n
n)
clc
% Car
rregar os dados
d
de ob
bjetos stru
uct.
V = load('V');
l
V = V.V;
V
T = load('T');
l
T = T.T;
T
% Est
timar os pa
arâmetros do
d polinômi
io
poli = polyfit(
(V,T,n);
% cri
iar uma res
sposta do polinômio
p
% est
timado dado
o o parâmet
tro de entr
rada
pfit = polyval(
(poli,V);
% exi
ibição gráf
fica entre os dados de
d
% ide
entificação
o e os dado
os gerados pelo
% pol
linômio aju
ustado
plot(
(V,T,'ro',V
V,pfit)
Após a aplicação do código teremos o seguinte resultado:
7
70 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
CASO
O 4: CSTR Não
o-Isoté
érmico
(Solução de
e SEL)
Um pro
oduto polim
mérico R se decom
mpõe em monômero
m
s dos qua
ais o
prod
duto P é o principal segundo uma reaçã
ão de prim
meira ordem, exotérm
mica,
irrevversível e em
e fase líquida
R →
P
deve
e ser cond
duzida em
m uma rea
ator tipo CSTR
C
enccamisado. Um comp
posto
inertte é adicio
onado ao reator em
m quantida
ades equiimolares e
em relação ao
reag
gente R. Dada as informaçõ
ões a seg
guir, deterrminar a temperatu
ura e
convversão de A alcançad
da.
Dado
os:
•
•
•
•
•
•
•
•
•
•
•
Regime de operação estacioná
R
ário;
C
Calor
espe
ecífico do inerte: 215
5 cal/mol .ºC
C;
C
Calor
espe
ecífico de R e P: 46 cal/mol
c
.ºC
C;
V
Vazão
molar de alim
mentação de A: 80 mo
ol/min;
UA: 9 500 cal/mol.K;
T
Temperatu
ura ambien
nte: Ta = 29
98 K;
k = 4,56 x 10
1 -3 min-1;((à 350 K)
E = 33 000
0 cal/mol.K
K;
τ = 85 min;
D = -15 000 cal/moll;
DH
T0 = 400 K;
K (tempera
atura de en
ntrada)
A equaçção de projjeto segun
ndo balanço de masssa é dado p
por
Como se
s trata de uma ração
o de prime
eira ordem na fase líq
quida a tax
xa de
a por
reaçção é dada
Sendo um reatorr não-isoté
érmico, a constante
c
de velocid
dade pode
e ser
c
base
e a Lei de Arrhenius,
A
e taxa é re
eescrita co
omo
escrrita tendo como
Utilizand
do a definição de tem
mpo espac
cial temos:
7
71 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
Podemo
os ainda re
earranjar de
d forma a isolar a co
onversão e
em único te
ermo
obte
endo assim
m, a primeirra equação
o de nosso
o sistema liinear de eq
quações:
Ou ainda
a
Pelo Ba
alanço de Energia
E
tem
mos a segu
uinte equa
ação:
Tomand
do valores para:
•
•
•
Δcp = 0;
0
ΘI = 1;
TA,0 = T1,0.
Ficamos com
Ou ainda
a
que é a segunda equaçã
ão do nossso sistema de equaçõ
ões lineare
es.
Para so
olucionar esse sisttema utiliz
zamos o comando fsolve. Esse
ntaxe
comando é utiilizado parra resolver problemas de SELss. A seguirr veja a sin
que envolve ta
al comando
o.
7
72 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
onde
e:
•
•
•
equações = função de
e
d contenh
ha o vetor de
d equaçõ
ões;
C
Chute
Iniccial = va
alor estima
ado para as variá
áveis dado
o na
in
nteração zero;
z
o
opções
= opções
o
de do coman
ndo (Ex.: crritério de p
parada).
O vetor de equações pode
p
ser esscrito como
o:
Desssa forma sugerimos
s
o seguinte
e código pa
ara solucio
onar nosso problema:
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
A função "c
caso4" solu
ucionar o problema
p
do CASO 4 do
d quarto m
módulo do %
%
%
c
curso
de MA
ATLAB. Maio
ores detalh
hes, ver apostila.
%
%
%
% Cri
iado e Atua
alizado por
r Phillipi R. O. Souza.
%
% Dat
ta da criaç
ção: 14 de janeiro de
e 2009.
%
% Dat
ta da últim
ma atualiza
ação: 14 de
e janeiro de 2009.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion caso4
clc
Chute
eInic = [50
00 0.2];
opcoe
es = optims
set('TolX',
,1e-4);
sol = fsolve('r
reator',Chu
uteInic,opc
coes);
% Chute inicial
% opções de convergênc
cia
% chamada da função so
olução
% dec
claração da
as variávei
is de saída
a
Conve
er = sol(2)
);
Temp = sol(1);
% Saí
ída no prom
mpt.
clc
fprin
ntf('Result
tados da Si
imulação do
o Reator CSTR.\n');
fprin
ntf('......
...........
...........
..............\n');
fprin
ntf('\n');
fprin
ntf('Conver
rsão = %4.4
4e',Conver)
);
fprin
ntf('\n');
fprin
ntf('Temper
ratura = %4
4.4f',Temp)
);
fprin
ntf('\n');
7
73 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
A função "r
reator" aux
xilia a fun
nção "caso4".
%
%
%
% Cri
%
iado e Atua
alizado por
r Phillipi R. O. Souza.
%
% Dat
ta da criaç
ção: 14 de janeiro de
e 2009.
%
% Dat
ta da últim
ma atualiza
ação: 14 de
e janeiro de 2009.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion F = re
eator(x)
% dec
claração de
e parâmetro
os constant
tes
tau = 85;
DH = -15000;
k0 = 4.56e-3;
E = 33000;
3
T0 = 400;
TR = 298;
FA0 = 80;
FI0 = 80;
Ta = 300;
R = 1.987;
1
UA = 9500;
Mi = FI0/FA0;
cpi = 215;
cpa = 46;
cpb = 46;
% cri
iação do ve
etor equaçõ
ões
F = [x(2)
[
- ((t
tau*k0*exp(
((E/R)*((1/
/TR)-(1/x(1))))) /
(1+(t
tau*k0*exp(
((E/R)*((1/
/TR)-(1/x(1
1)))))));
x(2) - (((
(UA*(Ta-x(1
1))/FA0) + (cpa + Mi*cpi) + (x(1)-T0)) / (-(DH)))];
A so
olução será
á exibida no
n prompt como:
c
ultados da
a Simulação
o do Reato
or CSTR.
Resu
.......................................
Convversão = 8.4931e-00
8
02
Tem
mperatura = 290.5481
1
>>
7
74 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
CASO 5:
C
5 Reato
or CST
TR
(Trrabalha
ando com
c
ED
DO)
Um tanque de mistura perffeita, CST
TR, cuja re
eação quím
mica ocorrre na
fase líquida cujo
c
componente A reage irre
eversivelm
mente a uma velocidade
espe
ecífica k prroduzindo o compone
ente B.
A →B
Dado a concentra
ação do componente A, CA, na corrente d
de alimenta
ação,
em moles
m
de A por unid
dade de vo
olume. Ass
sumindo que
q areaçã
ão se comp
porta
como uma cin
nética de primeira
p
orrdem, a tax
xa de consumo do rreagente A por
unidade será diretamen
nte proporccional à concentraç
c
ão de A iinstantânea no
tanq
que.
A equaçção da con
ntinuidade para a esp
pécie quím
mica A do ssistema é:
Onde:
•
•
•
Fluxo de
e A que en
ntra no sisttema = F0CA0;
Fluxo de
e A que sa
ai do sistem
ma = FCA;
Taxa de
e formação
o de A da reação
r
= ─ VkCA.
O sinal de menoss no termo
o da reação indica que o comp
ponente A está
send
do consum
mido. As un
nidades de
e todos os
s termos esstão em: m
moles de A por
unidade de tem
mpo. Para que isso ocorra,
o
a unidade
u
de
e k deve se
er o invers
so da
unidade de tem
mpo.
A taxa de
d acúmulo
o é dada por:
p
7
75 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
Combinando todas as equaçções na eq
quação da continuida
ade:
Ou ainda,
Conssiderando que o siste
ema opera
a em batela
ada, F = F0 = 0:
Observe
e que po
odemos escrever
e
a concen
ntração em função
o da
convversão.
54 s-1; V = 25 m3;
Dado: k = 0,05
Qual o perfil de co
onversão ao
a longo do
d tempo para
p
este ssistema? Prove
P
que a tempera
atura influencia na co
onversão.
Para re
esolvermos a equaçã
ão utilizam
mos o coma
ando ode4
45:
Onde:
•
•
•
•
•
T = vetor coluna
c
de pontos
p
de tempo;
Y = soluçã
ão(cada linha é soluç
ção no tempo para ca
ada ponto T);
‘equações
s’ = função
o que conte
enha as eq
quações diiferenciais;
I.I. = Intervvalo de inte
egração;
C = Condições inicciais.
C.I.
A função que con
ntém as eq
quações diferenciais
d
s deve con
nter a seguinte
sinta
axe:
7
76 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
Onde:
•
•
pendente;
VI = varriável indep
VD = va
ariável dep
pendente;
Assim o código
o sugerido
oé
•
para funçã
ão principal:
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
A função "c
caso5" solu
ucionar o problema
p
do CASO 5 do
d quarto m
módulo do %
%
%
c
curso
de MA
ATLAB. Maio
ores detalh
hes, ver apostila.
%
%
%
% Cri
iado e Atua
alizado por
r Phillipi R. O. Souza.
%
% Dat
ta da criaç
ção: 15 de janeiro de
e 2009.
%
% Dat
ta da últim
ma atualiza
ação: 15 de
e janeiro de 2009.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion caso5
clc
% cha
amada da fu
unção de re
esolução da
a EDO
[T,XA
A] = ode45(
('reator',[
[0 110],0);
;
% Exi
ibição gráf
fica
figur
re('Name','
'CASO 5','N
Number','of
ff','Color','w')
plot(
(T,XA)
xlabe
el('Tempo (s)')
(
ylabe
el('Convers
são (%)')
title
e('Caso 5')
)
grid
•
p
para
função
o de equaçções:
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
A função "r
reator" dar
r suporte à função "caso5".
%
%
%
%
% Cri
iado e Atua
alizado por
r Phillipi R. O. Souza.
%
% Dat
ta da criaç
ção: 15 de janeiro de
e 2009.
%
% Dat
ta da últim
ma atualiza
ação: 15 de
e janeiro de 2009.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion dxAdt = reator(t
t,xA)
k = 0.054;
0
V = 2
25;
dxAdt
t = k*(1-xA
A(1));
7
77 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
Para avvaliar a in
nfluência d
da temperratura esccolhemos a
arbitrariam
mente
maiss dois valo
ores distintos para k:
k 0,098 e 0,023. Em
m seguida
a aplicamo
os os
proccedimentoss anterioress:
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
A função "c
caso5" solu
ucionar o problema
p
do CASO 5 do
d quarto m
módulo do %
%
%
c
curso
de MA
ATLAB. Maio
ores detalh
hes, ver apostila.
%
%
%
% Cri
iado e Atua
alizado por
r Phillipi R. O. Souza.
%
% Dat
ta da criaç
ção: 15 de janeiro de
e 2009.
%
% Dat
ta da últim
ma atualiza
ação: 15 de
e janeiro de 2009.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion caso5_
_temp
clc
globa
al k_aux
% Declara
ação de var
riáveis globais
k = [
[0.054 0.09
98 0.023]; % Variação
o de k
for i = 1:3
k
k_aux
= k(i
i);
% Utilizaç
ção de um k por vez
[
[T,XA]
= od
de45('reato
or_temp',[0
0 150],0);
X
XA_aux{i}
= XA;
% concaten
nação das converções
T
T_aux{i}
= T;
% concaten
nação dos tempos
end
% Sep
paração das
s variáveis
s para exib
bição gráfica
XA1 = XA_aux{1,
,1};
T1 = T_aux{1,1}
};
XA2 = XA_aux{1,
,2};
7
78 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
T2 = T_aux{1,2}
};
XA3 = XA_aux{1,
,3};
T3 = T_aux{1,3}
};
% Exi
ibição gráf
fica
figur
re('Name','
'CASO 5','N
Number','of
ff','Color','w')
plot(
(T1,XA1,'k'
')
hold on
plot(
(T2,XA2,'k-.')
plot(
(T3,XA3,'k.
.-')
xlabe
el('Tempo de
d Residênc
cia (s)')
ylabe
el('Convers
são (%)')
title
e('Caso 5')
)
legen
nd('k = 0,0
054','k = 0,098','k
0
= 0,023','Location','best')
grid
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
%
A função "r
reator_temp
p" dar supo
orte à função "caso5_temp".
%
%
%
% Cri
iado e Atua
alizado por
r Phillipi R. O. Souza.
%
% Dat
ta da criaç
ção: 15 de janeiro de
e 2009.
%
% Dat
ta da últim
ma atualiza
ação: 15 de
e janeiro de 2009.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion dxAdt = reator_t
_temp(t,xA)
globa
al k_aux
% Dec
claração de
e variáveis globais
% Dec
claração de
e variáveis
s
V = 25;
2
% cri
iação da eq
quação dife
erencial
dxAdt
t = k_aux*(
(1-xA(1));
7
79 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
CA
ASO 6: CSTRs
C
s em Sé
érie
(Tra
abalha
ando co
om EDOs)
Esse ca
aso é uma extensão do caso 5 onde um determinado produto
oBé
prod
duzido enq
quanto o reagente
r
A é consu
umido. Agora consid
dere que essa
convversão oco
orre em trê
ês tanquess de misturra perfeita locados em série, co
om a
reaçção ocorren
ndo segun
ndo uma cinética de primeira
p
orrdem. Con
nsideremos
s que
as te
emperatura
as e os vo
olumes doss tanques são distinttos, porém
m constante
es. A
denssidade é asssumida co
onstante através
a
do sistema.
Com esssas conssiderações em men
nte, nós podemos
p
fformular nosso
n
mod
delo. Se o volume e a densidade de cada tanque são
s consta
antes, a massa
m
total em cada tanque tam
mbém é. Assim,
A
a eq
quação tota
al da continuidade pa
ara o
meiro reatorr é:
prim
ou
Anallogamente
e, o balanço
o de masssa total nos
s tanques 2 e 3 é dad
do por:
Onde F é defin
nido em terrmos de un
nidade com
mo (m3/min
n).
Para o nosso casso apenas a equação
o da contin
nuidade se
erá necess
sária.
Com
mo o sistem
ma é biná
ário e nós conhecem
mos a masssa total d
do materia
al em
cada
a tanque, apenas
a
um
m compone
ente é requerido parra a equaçção. Ou A ou B
pode
em ser usa
ados. Se nós,
n
arbitra
ariamente escolherm
mos A, as equações para
cada
a tanque sã
ão (cada te
ermo tem unidade
u
de
e kg.mol de A/min):
8
80 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
Send
do
e rearran
njando ma
atematicam
mente:
Cond
dições inicciais (t = 0)):
•
•
•
•
CA1 = 0,,4
CA2 = 0,,2
CA3 = 0,,1
CA0 = 1,,8
c
as va
ariáveis de
e soluções
s e de equações, além de ou
utras,
Nesse caso
são colocadass de forma matricial. Acompanh
A
he o código
o a seguir:
•
Para a função
f
prin
ncipal:
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
A função "c
caso6" solu
ucionar o problema
p
do CASO 6 do
d quarto m
módulo do %
%
%
c
curso
de MA
ATLAB. Maio
ores detalh
hes, ver apostila.
%
%
%
% Cri
iado e Atua
alizado por
r Phillipi R. O. Souza.
%
% Dat
ta da criaç
ção: 15 de janeiro de
e 2009.
%
% Dat
ta da últim
ma atualiza
ação: 15 de
e janeiro de 2009.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion caso6
clc
[T,CA
A] = ode45(
('reator',[
[0 15],[0.4
4 0.2 0.1]);
% Exi
ibição gráf
fica
figur
re('Name','
'CASO 6','N
Number','of
ff','Color','w')
plot(
(T,CA(:,1),
,'k')
hold on
plot(
(T,CA(:,2),
,'k-.')
plot(
(T,CA(:,3),
,'k.-')
xlabe
el('Tempo de
d Residênc
cia (s)')
ylabe
el('Convers
são (%)')
title
e('Caso 6')
)
legen
nd('C_A_1',
,'C_A_2','C
C_A_3','Loc
cation','best')
grid
•
Para a função
f
de equações:
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
%
A função "r
reator" dar
r suporte à função "caso6".
%
%
8
81 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
% Cri
iado e Atua
alizado por
r Phillipi R. O. Souza.
%
% Dat
ta da criaç
ção: 15 de janeiro de
e 2009.
%
% Dat
ta da últim
ma atualiza
ação: 15 de
e janeiro de 2009.
%
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion dCAdt = reator(t
t,CA)
CA0 = 1.8;
tau = 2.0;
k1 = 0.5;
k2 = 0.5;
k3 = 0.5;
% cri
iação do ve
etor equaçã
ão diferenc
cial
t = [(1/tau
u)*(CA0-CA(
(1)) - k1*C
CA(1);
dCAdt
(1/tau
u)*(CA(1)-C
CA(2)) - k2
2*CA(2);
(1/tau
u)*(CA(2)-C
CA(3)) - k3
3*CA(3)];
8
82 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
CASO 7:
C
7 Reattor HDT
T
(Trrabalha
ando com
c
ED
DP)
Os com
mbustíveis fósseis são
s
a base energéttica da hu
umanidade
e. No
enta
anto, esse monopólio
o energético traz co
onsigo con
nseqüências ambien
ntais,
algumas veze
es, catastrróficas. Pa
ara reduzir o impa
acto que e
essa atividade
prom
move ao meio
m
ambiente, dentre
e outras aç
ções, está a redução
o de compo
ostos
sulfu
urados e nitrogenad
n
os no óleo diesel. Esse
E
proccesso é co
onhecido como
c
HDT
T (do inglêss, Hidrotra
atamento de
d Diesel). Consiste apenas na
a passagem
m de
uma
a corrente gasosa de
e hidrogên
nio através
s do óleo, contido n
num reatorr tipo
Leito
o Gotejante na pre
esença de
e catalisadores. Oss compostos sulfurrados
reag
gem produ
uzindo H2
2S, os nitrogenado
n
os, NH3, além da
a redução
o de
compostos aro
omáticos.
Nosso problema
p
consiste em
e identific
car o perfil de temp
peratura de
e um
reato
or HDT. Esse
E
proble
ema é basseado em parte do artigo (Me
ederos, F. S. e
Anch
heyta, J., "Mathem
matical Modeling
M
and
a
Simu
ulation of Hydrotre
eating
Reactores: Co
ocurrent versus Conte
ercurrent Operations
O
s", ScienceDirect, 200
07).
Segundo Medeross e Ancheyyta, através de um balanço de massa na fase
gaso
osa podem
mos equacionar a corrrente de hidrogênio como:
Onde
e:
•
•
•
•
•
•
•
•
•
•
•
= holldup da fasse gasosa;;
R = con
nstantes ge
eral dos ga
ases (m3.Pa/mol.K);
TG = tem
mperatura na fase ga
asosa ();
G
p H2 = pressão
p
de
e gás hidrg
gênio (Pa);
t = temp
po (s);
uG = vellocidade superficial da
d fase gas
sosa (cm/ss);
z = com
mprimento (altura)
(
do reator (cm
m);
L
k H2 = coeficiente
c
erência de
e massa do
o H2 na interface ga
asosa
de transfe
(cm/s);
aL = áre
ea superficcial da interrface líquid
da (cm-1);
HH2 = co
onstante de Henry (P
Pa.cm3/mo
ol);
L
C H2 = concentraç
c
ção molar na
n fase líquida (mol/ccm3).
8
83 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
Observe
e que a eq
quação an
nterior deté
ém duas informaçõe
es importantes,
amb
bos em seus termos diferencia
ais. No lad
do esquerd
do da igua
aldade o te
ermo
diferrencial noss informa o perfil de pressão
p
do
o gás hidro
ogênio ao longo do te
empo
de atividade
a
do
o processo
o. No lado direto, ess
se perfil é dado ao lo
ongo do re
eator,
em termos esspaciais. Esse
E
tipo de equaç
ção é classsificado ccomo Equação
Diferrencial Parrcial, EDP..
Para re
esolver essa equaçã
ão utilizam
mos o com
mando pd
depe. Supondo
arbittrariamente
e que os parâmetro
os sejam dados de
e forma que a equação
ante
erior pode ser
s escrita como:
O pdepe resolve equações
e
d
diferenciais
s parciais que
q
contenham a seg
guinte
estru
utura:
Para
a
e .
Para o nosso
n
caso
o observe que:
8
84 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
Dessa forma,
f
o có
ódigo suge
erido é
•
para a função
f
prin
ncipal:
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
A função "c
caso7" solu
ucionar o problema
p
do CASO 7 do
d quarto m
módulo do %
%
%
c
curso
de MA
ATLAB. Maio
ores detalh
hes, ver apostila.
%
%
%
% Cri
iado e Atua
alizado por
r Phillipi R. O. Souza.
%
% Dat
ta da criaç
ção: 15 de janeiro de
e 2009.
%
% Dat
ta da últim
ma atualiza
ação: 15 de
e janeiro de 2009.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion caso7
clc
m = 0;
0
z = 1:1:10;
1
t = 0:0.035:10;
0
;
sol = pdepe(m,@
@HDT,@HDTci
i,@HDTcc,z,
,t);
pH2 = sol(:,:,1
1);
% Grá
áfico de su
uperfície (3D)
(
figur
re('Name','
'Perfis sim
multâneos',
,'Number','off')
surf(
(z,t,pH2)
title
e('Perfis simultâneos
s
s')
grid
xlabe
el('Comprim
mento (cm)'
')
ylabe
el('Tempo (s)')
(
zlabe
el('Pressão
o de H_2')
% Per
rfil ao lon
ngo do reat
tor
figur
re('Name','
'Perfil ao longo do reator
r
no instante final','Num
mber','off')
plot(
(z,pH2(end,
,:))
grid
title
e('Perfil ao
a longo do
o reator no
o instante final')
xlabe
el('Comprim
mento (cm)'
')
ylabe
el('Pressão
o de H_2')
•
para a função
f
que
e contém a equação:
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
%
A função "H
HDT" dar su
uporte à fu
unção "caso7".
%
%
%
% Cri
iado e Atua
alizado por
r Phillipi R. O. Souza.
%
% Dat
ta da criaç
ção: 15 de janeiro de
e 2009.
%
% Dat
ta da últim
ma atualiza
ação: 15 de
e janeiro de 2009.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion [c,f,s
s] = HDT(z,
,t,u,DuDz)
c = 513.19;
5
f = 1
102.56 * u;
;
s = 50.89*(u/10
5
0 - 0.57);
8
85 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
•
para a função
f
que
e contém a condição inicial:
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
%
A função "H
HDTci" dar suporte à função "caso7".
%
%
%
% Cri
iado e Atua
alizado por
r Phillipi R. O. Souza.
%
% Dat
ta da criaç
ção: 15 de janeiro de
e 2009.
%
% Dat
ta da últim
ma atualiza
ação: 15 de
e janeiro de 2009.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion u0 = HDTci(z)
H
u0 = 4.2;
•
para a função
f
que
e contém a condição inicial:
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%
%
A função "H
HDTcc" dar suporte à função "caso7".
%
%
%
% Cri
iado e Atua
alizado por
r Phillipi R. O. Souza.
%
% Dat
ta da criaç
ção: 15 de janeiro de
e 2009.
%
% Dat
ta da últim
ma atualiza
ação: 15 de
e janeiro de 2009.
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion [pl,ql
l,pr,qr] = HDTcc(zl,u
ul,zr,ur,t)
pl = ul - 4.2;
ql = 0;
pr = ur;
qr = 0;
8
86 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
8
87 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC Módu
ulo 4: Esttudo de Casos
C
C
Conside
eraçõe
es Finais
1 O MATLAB® realiza apena
1.
as o que é pedido – se ele e
errou, é po
orque
você errrou;
2 Todas as
2.
a sub-rotin
nas do sofftware foram criadas de forma g
genérica;
3 Existe sempre
3.
s
ma
ais de um código
c
que
e execute a mesma ta
arefa;
4 O melho
4.
or código é sempre o mais simples;
5 Você trabalha com ENGEN
5.
NHARIA. Seus
S
cálcu
ulos são pesados. Utilize
U
um prog
grama ade
equado.
8
88 ELEM
MENTUS JR. C
Consultoria ⋅ PTCC