Anda di halaman 1dari 95

 

ELEM MENTUS CONS SULTORRIA 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 2
Janela Command Window 3
Janela Workspace 4
Janelas Command History e Current Directory 5
Erros 5
Editor de Texto 7
Ajuda 7

Problema 1.1 10

Trabalhando com Matrizes 11


Trabalhando com Escalares 11
Trabalhando com Matrizes Multi-Elementares 15
Operações com Matrizes 18
Indexação de Vetores/Matrizes 20
Criação de Variáveis 21
Análise de Vetores 22

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 30


Expressões Booleanas 31
Estruturas de Seleção 32

Problema 2.1 33
Problema 2.2 36
Estrutura de Repetição 37

Problema 2.3 38

Sub-Rotinas como Funções (Trabalhando na janela de


41
comandos)

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 48


Funções de Importação e Exportação 48
Função de Tratamento 50
Gráficos e Handle Graphics 51

Problema 3.1 53

Considerações Finais  54

Módulo 4: Estudo de Casos

CASO 1: Tanque Pulmão (Trabalhando com Estruturas de


56
Repetição)
CASO 2: Cálculo da Temperatura Teórica da Chama do
63
Propano (Trabalhando com Estruturas de Repetição)
CASO 3: Controladores Automáticos (ajustando Curvas) 69
CASO 4: CSTR Não-Isotérmico (Solução de SEL) 71
CASO 5: Reator CSTR (Trabalhando com EDO) 75
CASO 6: CSTRs em Série (Trabalhando com EDOs) 80
CASO 7: Reator HDT (Trabalhando com EDP) 83

Considerações Finais 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
temppo 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 configuraações mínimas de hardware exigidas pela
versão do prog grama, essse instante
e de tempo o não passsará de alg guns segun ndos.
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 – meensagem 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
arra de status.
ba

Seu ammbiente de esenvolveddor, ou interface grráfica, é ssubdividida a em


cincoo barras e quatro janelas. As barras possuem con nfiguraçõe es imutáveis ao
conttrário das janelas que
e podem ser
s alterada as a fim de
e proporcio onar ao usuário
maioor confortoo e praticiidade. Como mostra a a figuraa 1.3, a in nterface po
ossui
quattro barras localizadas
l s na parte superior e uma partee inferior.

2                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 primeeira 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 proggrama. Abaaixo 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. Loogo 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
proggrama, 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
ontramos a barra de status. Ne
inferrior da interface enco ela podemo os saber qual a
situaação de op peração doo programaa.

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 direitaa é denom
minada Com mmand Window,
W ou
u simplesmmente
janela de commando. Ne ela são executados
e s os coma andos prinncipais 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
comando [>> clc].
c

3                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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, figgura 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 commandos de e atribuiçõe
es. Para lim
mpa-
lá uttiliza o com
mando [>> clear].

Figura
a 1.5 – Work
kspace.

4                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 poor meio de e um
ema de ab
siste bas. A jan
nela Commmand Histo ory, figura 1.6, e a janela Cu urrent
Directory, figu ura 1.7. A primeiraa é respo onsável po or listar o históricoo de
comandos da Command d Window. É subdivid dida por da ata e locadda na mem mória
permmanente. 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, eexibi o dire
etório
atuaal no qual os coman ndos são executado
e os, diretórioo esse iguual ao deffinido
pela barra de d endere eços. Nelaa serão exibidos todos oss arquivos s ou
subddiretó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 instaalado estã ão sujeitoss à bugs s (erros). Tais erro os podemm ser
dese encadeadoos por prob blemas de e lógica intterna de programaçã
p ão, ou porr erro
de operação
o do usuário.
Para errros causaddos por pro oblemas de e lógica intterna de programaçãão do
softwware, geraalmente 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
casoos é 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 Sintaxe;
b
b. Argume entos;
c
c. Interrup
pção;
d
d. Memória.

Os erro
os de sinta
axe ocorreem quando o o usuário insere u
um códigoo não
reco
onhecido pelo compillador. São
o os erros mais simp
ples de serem corrig
gidos.

5                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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
numma função ou o script, um
u link quee 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 elemeentos não discrimina ados;
nommes de funçções digitados errone eamente, dentre
d outrros.
Os erro os de argu umentos ocorrem
o quuando a quantidade
q e ou o tipo de
argu umento de e entrada de funções foi mal m inseriddo. 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árioo 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 iniciaddo. Para taanto, basta
a digitar [>> ctrl
+ c] durante a compilaçã ão.
O MATL LAB® utilizza uma paarcela da memória
m R
RAM do co
omputador para
locação de dad dos tempo orários. Qu
uando a qu uantidade ded informa ações exce ede a
quan ntidade de e memória disponívell o sistema a entra emm 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 revisee 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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
scrip mpilação ap penas de scripts. Sua vantagem em re elação à ja
anela
Commmand 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
Commmand Wiindow, ace esse Barraa de Menus/Desktop/Editor o ou dê um click
duplo em qualqquer 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
auxiliando no controle de compillação. Um ma linha só será co ompilada se,
s e
somente se, a linha ante
erior já tiverr sido.

Ajud
da

Devido à enorme abrangê ência do software nas diverrsas áreas s da


ciência, a commplexidadee 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ídoss em
maiss de 40 caaixas de fe
erramentass tornando o-se evidente a impo ossibilidadde de
lembbrança e co
ompreensã ão de todo
os.
Sabendo dessa im mpossibilid
dade o MA ATLAB® vemv com u um sistem ma de
supoorte ao usu
uário (HELP) que visa assisti-lo
o no que diiz respeito à utilizaçã
ão de
sua interface e ferramentas.

7                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

O Help pode serr acessado o de duass formas: por uma janela pró
ópria,
figurra 1.10, ou através do
o prompt da d comandos, figura 1.11.
d janela de

F
Figura 1.10 – Janela pró
ópria do Help.

Figura 1.11 – Help no


o prompt da
a janela de comando.
c

8                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

Através do prompt, podemmos acessar a biblio


oteca do help de fo orma
gera do o comando [>> help], ou
al, digitand údo especcífico de cada
u o conteú
assuunto digitando [>> help
h “assunto”] comoo 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..

Para a exibição
e da
a janela prrópria do Help
H click no
n ícone na barrra de
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),
assoociação dee 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
resuultados doss sistemas de busca, figura 1.13.

9                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 interneet, através
s da
hommepage da MATHWO ORKS™.
Em ammbos os casosc o usuário
u en
ncontrará sintaxes de coman ndos,
exemmplos ilustrativos e in
ndicações de referên
ncias biblio
ográficas.

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
endeereç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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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
deseenvolvidos com siste ema de con ntagem deecimal. 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 inicialmeente em uttilizar
qualquer outro o tipo de aritmética a em má áquinas. NoN entanto o, a aritmmética
decimal não se s adaptou u de forma a otimizadaa aos sisteemas elétrrico-eletrôn nicos
dos circuitos, até então o relativam mente prim mitivos. Appós várioss trabalhos de
pesqquisa cheg gou-se ao sistema
s arritmético mais
m adequado, o sisttema aritmmético
binário, utilizad
do por tod do o mund do. No sisstema deciimal tínham mos que gerar
g
dez sinais disttintos que representa assem os dez valore es do sisteema (de 0 à 9),
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 sempres fo
oram fáceis de
prodduzir. Quan ndo um sin nal elétrico
o era emitiddo tínhamo os a representação do d 1,
quanndo 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
orgaanizar esse e conjunto?? Foi preciso uma maneira
m quee unisse ppraticidade, que
implicaria em velocidade e de opera ações, e adaptabilida ade, já quee tínhamos s um
novoo sistema de contage em. O sisttema matricial foi a melhor
m forma enconttrada
paraa armazen namento e transmisssão de dados d e o motivo é simples s. As
matrrizes estão o sujeitas às
à diretrize es básicass de um esspaço veto orial e commo tal
podííamos apliccar todos oso preceito os desenvo olvidos pela álgebra aanalítica.

Para prrogramar em
e MATLA AB® o us suário terá
á que conhhecer alguumas
proppriedades da
d álgebra
a vetorial que
q serão mostradas
m s ao longo desse módulo.
Commo a matrizz é o elemmento maiss importan nte na programação em m, alguns
recuursos 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 termoo variável de
d forma in ntercalada para defin
nir as matrizes.

balhando com
Trab c Esca
alares

A álgeb
bra analíticca classifica escalare
es e matrizzes de form
ma diferennte e,
consseqüentem mente co om propriedades distintas. Teria então que
deseenvolvermo os uma fo orma de trrabalhar coom 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.
Operar com esses elementos nos leva a considerar c as regras s de
operração de um
u escalar que, por sua s vez, nã ão conflita com as propriedadees de
operração matrricial.
As exprressões são criadas respeitand
r do uma hierarquia dee prioridade
es de
execcução de operadores
o s. Essa hieerarquia po
ode ser ressumida segundo a ta abela
1.1.

1
11                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

Operaçção Nome Prio


oridade
() Precedência 1º
^ Potência 2º
/ Divisão
o 3º
\ Divisão
o à esquerd
da 4º
* Multipliccação 5º
+ Soma 6º
─ Subtraçção 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 sers 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

ans =

>> 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 =

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 auuxiliar os cálculos


c e compreen nder resulta ATLAB® po
ados o MA ossui
consstantes num
méricas prredefinidass, tabela 1.2.

1
13                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

Constante
C e Valor
pi 3.14415926535 58979...(π)
i ou j raiz imaginária a( )
eps preccisão numé érica relativva
realmin men nor número o real
realmax maioor número real
Inf Infin
nito. Ex.: 1//0
NaN 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
essê ência. São o apenas conceitos
c d
desenvolv idos pelo sistema e que prec cisam
ser interpretad dos de forrma corretta. Para entendermo
e os tais co
onceitos vaamos
fazer uma brevve revisão sobre aritm mética de ponto flutuuante.
A matemática operada por uma máq quina proccessadora é diferentte da
mate emática prrocessada por nossa as mentes.. Ambos nãon 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 mmemória é mais
limita
ada. De fo orma gera al, nós poddemos 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 alcannçável em seus
proccessamento os.
Por essas implicações, na aritmética
a de
d ponto flutuante, oou 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ãoo de unde erflow reprresenta vaalores que e são muitto próximoos de
zeroo (positivoss ou nega ativos), ou seja, de valor
v absooluto 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
pelo computad dor. Na re egião do overflow
o ocorre
o o in
nverso, núúmeros qu ue se
aprooximam do o “infinito” não são alcançados
a s. É o resultado de uma operração
nummé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 coomputado positivo;
Mncc+: máximoo número computado
c o positivo.
1
14                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

O formaato 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
ortantes aos nossoss objetivoss imediato
impo os e podem ser exp plorados como
c
mostra a seguir.

>> 0.333333
0 33333

ans =

0.3333

>> f
format short
s e
>> 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
3.33333 000e-001
1

>> f
format short
s
>> 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
emento. Sem increm
incre mento seráá necessáário digitar todos os elemento
os da
matrriz, o que não
n ocorre com a cria ncremento.
ação por in

1
15                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 , paara separaar elemento os em colu una utilizammos o “esppaç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


Para or misto:

>> A = [1 2 3;4 5 6;7


6 8 9]

A =

1 2 3
4 5 6
7 8 9

Algumas matrizess, de tão utilizadas,, podem ser


s criadass com sim
mples
comandos com
mo pode se
er observado a seguir.

a uma matriz Identida


Para ade:

>> I = eye(
(5)

I =

1 0 0 0 0
0 1 0 0 0
0 0 1 0 0

1
16                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

0 0 0 1 0
0 0 0 0 1

Para
a uma matriz Nula:

>> Z = zero
os(3,2)

Z =

0 0
0 0
0 0

Para
a uma matriz Unitária
a:

>> U = ones
s(2,3)

U =

1 1 1
1 1 1

a uma matriz Randôm


Para mica:

>> W = rand
d(2,3)

W =

0.8147 0.127
70 0.
.6324
0.9058 0.913
34 0.
.0975

A matrizz randômicca retorna um vetor com núme


eros aleató
órios entre zero
m.
e um
Para criar variávveis (veto
ores/matriz
zes) por incremento
i o seguimo
os a
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 represennta a criação de u uma seqüê ência
nummé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. Observve na
prátiica a seguir.

>> A = 10:1
1:20

A =

1
17                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

10 1
11 12 13
3 14 15 16 17 18
19 20

>> A = 10:2
2:20

A =

10 1
12 14 16 18 20

>> A = [1:5
5; 2:2:10
0]

A =

1 2 3 4 5
2 4 6 8 10

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

Emboraa a aritmética de máq


quina seja, em parte,, diferente da habitua
al, as
matrrizes estão
o sujeitas as mesmmas regras s de opera ação. Veja a na prática a
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 5 4
-3 7 9

>> B * C
??? Error using
u ==>
> mtimes
s
Inne
er matri
ix dimens
sions mu
ust agree.

1
18                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

>> A * B

ans =

-8 11
1 10
-20
- 2
29 22
-
-32 4
47 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 =
1 2
3 4

>> E = [5 6
6;7 8]
E =
5 6
7 8

>> D * E

ans =

19 22
2
43 5
50

é di
iferente
e de

>> D .* E

ans =

5 12
1
21 3
32

>> D / E

ans =

3.0000 -2.000
00
2.0000 -1.000
00

1
19                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

é differente de

>> D ./ E

ans =

0.2000 0.333
33
0.4286 0.500
00

>> D ^ 2

ans =

7 10
1
15 2
22

é di
iferente
e de

>> D .^ 2

ans =

1 4
9 16
1

exação de Vetores/M
Inde Matrizes

A indexxação é um ma forma de mapea ar os elementos da m matriz quee são


úteiss à operaçção. Existeem duas formas
f de indexação
o: uni paraamétrica e poli
paraamétrica.
A uni paramétrica
p a consiste apenas nan indicaçã
ão da possição de fo orma
ar, ou seja,, através de um único
linea o parâmetro como mostra
m a prá
ática abaix
xo.

Seja a matriz
m

>> A(1)
A

ans =

>> A(3)
A

ans =

2
20                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

>> A(5)
A

ans =

Na poli paramétrrica temoss a indica ação de duas


d coorddenadas 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 =

>> A(2,1)
A

ans =

>> A(2,2)
A

ans =

ação de Va
Cria ariáveis

amente pello MATLAB® para definir


Variável é um terrmo utilizado interna
objetos matemmáticos de forma ge mplo, escalares, matrrizes,
eral como, por exem
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
onde e da variável fica a critério o do usuuário, emb
bora não seja
omendado a utilizaçã
reco ão de nom
mes comp plexos. O nome dass variáveis não
pode
erá ser inicciado por números.
n
Exemplo os de criaação de va
ariáveis po
odem ser observadoos na prátiica a
segu
uir.
2
21                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

>> var
v = [1:
:5; 1:2:1
10]

var =

1 2 3 4 5
1 3 5 7 9

>> var
v = cos
s(pi)

var =

-1

>> [zero,pol
lo,ganho] = resid
due([1],[1 1])

zero
o =

polo
o =

-1

ganh
ho =

[]

Análise de Ve
etores

Em algguns caso os é nece essário faz


zer um estudo
e quantitativo e/ou
qualitativo dass proprieddades dass matrizes
s ou parte
e delas. E
Esses esttudos
pode
em ser feitos atravé és de inúm
meros com mandos. Alguns
A delles podemm ser
obse
ervados na a prática a seguir.

a o número
Para o de eleme
entos:

>> numel(A)
n

ans =

Para
a análise de dimensõ
ões:

>> size(A)
s

ans =

3 2

2
22                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 =

Para
a o número
o de dimen
nsões da matriz:
m

>> ndims(A)
n

ans =

Para
a a diagona
al da matriiz:

>> diag(A)
d

ans =

1
5

a a matriz triangular
Para t i
inferior:

>> tril(A)
t

ans =

1 0
4 5
7 8

Para
a uma matriz triangular superior:

>> triu(A)
t

ans =

1 2
0 5
0 0

2
23                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 foornalha ind


dustrial é suportada
s por
p uma lo onga colunna 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 suuperfícies da colunaa são
manntidas 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 ded malha ccom Δx = Δy =
0,25
5 m, de terrmine a disstribuição de temperratura bidimmensional 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. 1444)

Con
nsideraçõe
es:

1.
1 Regimee estacioná
ário.
2
2. Conduçção bidimensional.
3
3. Propried
dades constantes.
4
4. Sem geeraçã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:

interrnos não-simétricos
s:

1 T2 + T3 + 1000 – 4T1 = 0
Nó 1:

2
24                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

Nó 3:
3 T1 + T4 + T5 + 500 – 4T3 = 0
5 T3 + T6 + T7 + 500 – 4T5 = 0
Nó 5:

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

de superfície
s 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]
[ = [A]-1 . [C]
[I] . [T]
[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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

1 0 -4 1 1 0 0 0;...
0 1 2 -4 0 1 0 0;...
0 0 1 0 -4 1 1 0;...
0 0 0 1 2 -4
4 0 1;...
0 0 0 0 2 0 -9 1;...
0 0 0 0 0 2 2 -9]

A =

-4 1 1 0 0 0 0 0
2 -4
4 0 1 0 0 0 0
1 0 -4 1 1 0 0 0
0 1 2 -4 0 1 0 0
0 0 1 0 -4 1 1 0
0 0 0 1 2 -4 0 1
0 0 0 0 2 0 -9 1
0 0 0 0 0 2 2 -9

>> C = [-100
00;-500;- 500;0;-2000;-1500]
-500;0;-5 ]

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 comoo 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 abaixxo.

2
26                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 1: Con
nceitos Básicos
B – Como Manipular
M r?

2
27                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
Mód
du
ulo
o22:
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

Durantee este módulo verem mos algunns conceito os de proogramação que


nos auxiliarão nas atividdades cotiidianas de
e um programador. A Alguns deesses
concceitos pod dem ser tomados de forma geral pa ara qualqu uer platafo orma
enquuanto outroos serão específicos pra o MATTLAB®.
Nossos trabalhoss terão iníccio no editor de texxto do sofftware vistto no
móddulo anterio or. Para que
q os trabalhos sejjam desen nvolvidos dde forma mais
aremos algumas co
profiissional fa onsideraçõões sobre o desen nvolvimento o da
estru
utura de umu program ma em linha e sua disposição o no que d diz respeitto ao
endeereçamentto.

a.
a Inicie se
eu “.m” semmpre com um cabeça alho;
b
b. Não ultrrapasse o limite de immpressão;
c
c. Utilize diretórios
d d
distintos pa
ara projetoss distintos;;
d
d. Utilize o menos po ossível a memória
m fix
xa. Utilize a RAM (temmporária);
e
e. 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
das funcionalidades, limmitações e autoria do
d código.. Um exem mplo pode
e ser
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ãoo, o código
o seja
exibido em suua estrutura originall. A (c) ga
arante quee funções ou scriptts de
mesmos nom mes não sejam
s mottivos de conflitos lógicos
l ou
u enganos s de
chammadas. Oss cálculos e as inform
mações gerradas duraante e com
mpilação poodem

3
30                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?

ser armazenad
a das nas memórias
m fixa e tempporária. A utilização da fixa im mplica
numm registro de informações no disco rígido de se eu computtador. Com mo a
quan ntidade de
e manipulaaçõ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 queq 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
outroo usuário.. Não serria mais fácil
f ndê-lo se o mesmo estiver com
enten
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
recoomendado a utilizaçãão de com mentários inndicando a funcionalidade de cada
comando ou conjunto de e comando os segundo o a consideeraçã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 umm código co
omo exemp plo.

%%%%%%%%%% Declara
ação de Variávei
V is %%%%%%
%%%%%%%

R = 2; % taxa de
d reaçã
ão
Q = 600,5; % v
vazão
T = 575; % temperaatura

%% 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
regraas estabeelecidas para
p definiir, simplific
car e ma anipular fuunções lóg gicas
baseeadas em afirmações
a s que são verdadeira
v as ou falsas.
Indepen
ndente da simbologiia utilizada a na interfface usuá ário-máquinna, a
conddição de verdadeiro o ou falsoo, internam mente à máquina,
m é interpre
etada
seguundo 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 falsaa, 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 maaioria dos casos, a lógica de tais opera adores é e encontradaa em
qualquer plataforma de programaç
p ção.

Símbolo Teste Ex
xemplo
== Igual A ==
= B (A iguual a B)
~= Diferente A ~=
~ B (A differente de B)
< Menorr que A < B (A mennor que B))
> Maior que A > B (A maiior que B)
<= Menorr ou igual A <=
< B (A ma aior ou igu
ual a B)
>= Maior ou igual A >=
> B (A me enor ou iguual a B)
Tabela 2.1 – Testte de expres
ssões boole
eanas.

3
31                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?

Símbolo Opera
ador Exemplo de C Composição o
& E A & B (A e B verdadeiros s)
| OUU 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 quuantidade 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 Teste reto
orna verdad
deiro se Exemploo
isem
mpt matriz é vazia iseempt(M)
iseq
qual as matrrizes forem
m numericaamente iguais iseequal(M)
isnu
umeric matriz é numérica a isnnumeric(M))
isch
har matriz é alfanumé érica iscchar(M)
Tabe
ela 2.3 – Fun
nções boole
eanas matric
ciais.

Estruturas de
d Seleç
ção
Como o próprio nomen 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/otherwisee. 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ógicoo de sua sintaxe são exibidos nna figura 2.2.

Figu
ura 2.2 – Estrutura e sin
ntaxe lógica
a da estrutura de seleçã
ão if.

3
32                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 essione o botão F5 ou
uir. Para exxecutar os scripts pre o clique no botão .

loadd DadosEEstrutura
aDeSelec
cao1 % Carrega os
o dados do HD
if A == B
respost
ta = 'A = B'
elseeif A === F
respost
ta = 'A = F'
elsee
respost
ta = 'A desconhe
d ecido'
end

loadd DadosEEstrutura
aDeSeleccao1 % Carrega os
o dados do HD
if E == G
respost
ta = 'E = G'
elseeif E === C
respost
ta = 'E e C são chars.'
elsee
respost
ta = 'E não
n ontrado.'
enco
end

E
EXERCÍ
ÍCIO AP
PLICADO
O

Prob
blema 2.1 .

O sistem
ma supervisório de uma
u unidadde de LEITTO FLUIDIZADO rec cebe,
em tempo rea al, sinais que lhe permitem,
p dentre ou
utros, a mmanipulação do
siste
ema de ala armes da unidade, como mos stra de forrma simplificada a figura
f
2.3. Dentro dee um conjunto de atuações, o sistema
s as mensag
envia diversa gens
ao operador,
o l
lhe informando o mo otivo pelo qual o alaarme foi aacionado. Além
A
das mensage ens, o sistema dissponibiliza a um cód digo num mérico qu ue é
recoonhecido coomo desattivador da unidade.

Figura 2.3
3 – Diagram
ma esquemático do prob
blema 2.3.

3
33                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?

Um doss sinais reccebidos pelo operado


or é o da te
emperaturaa no interio
or do
Leito ar 12). Tal temperatu
o (termopa ura não poode excede er 1200 ºC
C. Crie partte do
códig
go do supeervisório re
esponsáveel pelas aç
ções acimaa. (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
" " tem o objetivo de iniciar o leitor na %
DeSelecao2"
% est
trutura de seleção (iif-elseif-e
else). %
% %
% Dat
ta de criaçção: 15 de setembro de
d 2008. %
% Dat
ta da últimma atualiza e setembro de 2008.
ação: 15 de %
% Cri
iado e atuaalizado por i Rodrigo de Oliveira souza.
r: Phillipi %
%%%%%
%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%

clc;c
clear % elimina o sinal an
nterior
sinal
l = 'SS'; % não rece o sinal: SS - sem sinal
ebimento do
sinal
l = 1201; % recebime
ento do sin mp. em ºC(a cada inst
nal de tem tante)

%%%%%
% confirmaç
ção do sina
al recebido
o %%%%%

if siinal == 'SS
S'
n
num_protc_s
seg = 1378;
; % nº protc seg a ser gera
ado
e
errordlg('F omunicação com Termopar 12.','ERRO')
Falha de co
else
n
num_protc_s
seg = 1379;
; % nº protc seg a ser gera
ado
end

%%%%%
% análise do
d sinal re
ecebido e atuações
a %%%%%

if si
inal <= 120
00
n
num_protc_s
seg = 2378;
; % nº protc seg a ser gera
ado
elsei
if sinal > 1200
n
num_protc_s
seg = 2379;
; % nº protc seg a ser gera
ado
w emperatura do leito a
warndlg('Te acima do permitido.','PERIGO')
end

A fim ded explorar o proble ema e obtter diferentes resposstas, proponha


valores distinto
os para a variável
v “sinal”.

A 1: Para eliminar
DICA e “ssinal” come
ente sua attribuição: CRTL
C + R.
DICA
A 2: Para “descomen
“ ntar”: CRT
TL + T.

O diaggrama a seguir re esume de forma simplificada


s a o fluxo
o de
inforrmações entre a unid
dade, o sup
pervisório e operador.

3
34                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 estruutura anterrior, essa está limita
ada à
conddição de ig
gualdade e desigualddade, 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 .

a o exerccício da estrutura de seleçção (if-elseif-else), visto


Resolva
ante
eriormente,, com a estrutura
a (switch-case-otherrwise). Deessa vez, tal
tempperatura não
n pode
e ser infeerior a 900
9 Caso real: LACO 2007
ºC.(C
“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
" " tem o objetivo de iniciar o leitor na %
DeSelecao3"
% est
trutura de seleção (s e-otherwise).
switch-case %
% %
% Dat
ta de criaçção: 21 de setembro de
d 2008. %
% Dat
ta da últimma atualiza e setembro de 2008.
ação: 21 de %
% Cri
iado e atuaalizado por i Rodrigo de Oliveira souza.
r: Phillipi %
%%%%%
%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%

clc;c
clear % elimina o sinal an
nterior
l = 'SS'; % não rece
sinal o sinal: SS - sem sinal
ebimento do
sinal
l = 889; % recebimen al de temp. em ºC(a cada insta
nto do sina ante)

%%%%%
% confirmaç
ção do sina
al recebido
o %%%%%

switc
ch sinal
case 'SS'
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')
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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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;
; % nº protc seg a ser gera
ado
w emperatura do leito a
warndlg('Te abaixo do permitido.','PERIGO')
other
rwise
.
...
end

A fim ded explorar o proble ema e obtter diferentes resposstas, proponha


valores distinto
os para a variável
v “sinal”.

DICA
A 1: Para eliminar
e “ssinal” come
ente sua attribuição: CRTL
C + R.
DICA
A 2: Para “descomen
“ ntar”: CRT
TL + T.

OBSSERVAÇÃ Ã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 obbjetivo de repetir
r um determinado comand do seguinddo um crité
ério predeffinido
pelo programa ador. Esse tipo de esstrutura evvita que o usuário do
o código tenha
que repetir me esma tarefaa inúmerass vezes. Mas,
M como a máquina sabe quando
paraar de repettir o coman
ndo? O critério de pa arada é baaseado na seguinte idéia:
todaa região forra do domíínio de rep
petição é co
onsideradaa como reggião de parrada,
ou seja,
s caso a expresssão de re epetição na
n seja ma ais verdaddeira, o có
ódigo
interrrompe o lo
oop.
3
37                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 diferennte 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émm 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) + exp(x*2);
;
end

Observee que ambbas variáve eis são muultidimensio


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 probblema 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 cooeficientes com
a me
enor quanttidade de linhas que você pude er. (Incropeera 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 estruutura “whille” repete a execução dos comandoss enquanto o as


exprressões dee teste, ou expressõees booleannas, retorn
nam condiçção verdad
deira.
Na figura
f 2.5 te
emos a esstrutura de sintaxe e sua
s interprretação. Em
m seguidaa

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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 execuução de umm código pelo


p es script é uma forma provisória de
simple
testa
armos sua a aplicação
o. Emboraa seja, na maioria dos
d casos, a forma mais
simpples de exxecução dee comando os, não é a forma mais
m profisssional. Iss
so se
devee ao incômmodo de abrir
a o código todas as vezes que precissarmos de e sua
depuuração, exxpondo-o aos
a erros de
d manipullação, além m da “poluuição visuaal” ao
qual o usuário é expostoo.
Existe outra formma de compilação mais proffissional. Essa form ma é
baseeada na estrutura
e d
denominadda functioon, ou sim mplesmente função. De
form
ma mais simmplificada podemos definir umma função como uma a seqüência de
comandos que e:

1.
1 Aceita parâmetros
p s de entrad
da;
2
2. Retorna a parâmetrros de saíd
da;
3
3. Utiliza espaço
e de memória próprio
p parra armazen
nar vaiáveiis locais;
4
4. Pode se er chamada por outraas funções
s;
5
5. Seu texxto de ca abeça pode ser exib bido na ja
anela de comando pelo
comand do help.

LAB® recon
O MATL 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 abberto
para alterações (EEx.: polyfit));
3 User m-file:
3. m funçãão criada pelo usuárrio. Você pode
p impleementar novos
n
®
recursos no seu MATLAB
M criando funções para
a áreas esspecíficas.

Utilize os
o coman
ndos whic
ch para achar
a seu diretório, e open para
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 (eestá é umma caracte
erística mu
uito peculiar e
extre
emamente o MATLAB®).
e prática do
A sintaxxe básica de
d definição de funçõ
ões segue o formato a seguir:

4
41                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?

onde
e:

• function: palavra reservada a que indic


ca o início de
d definiçã
ão de funçã
ão (é
grafada
a de azul);
• PS1, PSS2, . . ., PS
SN: parâmetros de sa aída;
• nome: nome da fu unção;
• PE1, PEE2, . . ., PE
EN: parâmetros de entrada;
• expresssão 1, . . . ,express são N: ex xpressões que define em as açõões a
serem executadas
e s pela funçção.

SERVAÇÃ
OBS ÃO: a funçã
ão e o arqu
uivo m-file devem terr o mesmo nome.

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 declaarado, a função
f retornará apenas
parâmeetros forneccidos;
2 com ma
2. ais parâme etros que o declaraddo, o MATTLAB® acu usará erro (Too
many ouutput argumments – paarâmetros de saída em
e excessso);
3 se nenh
3. hum parâm metro for in
ndicado, fu
unção reto
ornará apeenas 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,
sempre na janela de com
mandos.

>> [s,v] = mu
uv(10, 2, 3.5, 60)

A:
DICA

1. O núme
1 ero de arquuivos deve ser igual ao
a número o de funçõe
es;
2 Utilize fu
2. unções differentes pa
ara objetivo
os diferenttes;

OBSSERVAÇÃ ÃO: Os com mandos na argin (núm


mero de arrgumentoss de entrad
da) e
narg
gout (númmero de arrgumentoss de saída a) podem ser usado os combinados
com estruturass condicion
nais de pro
ogramaçãoo para elim
minar bugs de operad
dor.

Como já á foi dito, o MATLAB B® armazena suas va ariáveis em


m uma áreea da
memmó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 áreeas de me emória pró
ópria,
independente do worksp pace. Os escopos das variávveis do w workspace e as
áveis locaiss podem ser
variá s definidaas da segu
uinte forma
a:

• Variáveis do workkspace nãoo são recon


nhecidas dentro
d das funções;
• Variáveis locais de
e funções não são re
econhecida
as no MATTLAB®.

4
42                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?

Parâmeetros de en
ntrada e saída são a forma (in nterface) mmais adequada
®
paraa troca de dados enttre o worksspace do MATLAB
M e ambienttes interno
os de
funçções. Outra
a forma dee compartilhamento de d troca dee dados en ntre worksspace
e fuunções são as vaiá áveis glob bais. Variiáveis criaadas no w workspace são
recoonhecidas por qualquuer funçãoo 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ódiggo, a
palavra global seguida da(s) variávvel(is) a se
erem declaradas.

DICAA: 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 vaariá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
temppos de residência daas partícula
as no reato
or são forne
ecidas na ttabela abaaixo:

RA
AIO (µm) 0,05
5 0,10 0,15
0 0,20
% PESO 0,10
0 0,30 0
0,40 0,20
θR(s) 84
4 66 5
57 45

Dados: k = 0,0 n; DH2/FeS = 3,6.10-6 cm2/s; kmH2 = 7,29.1


019 cm/min 104 cm/s.

DIDO: Deciidir que eta


PED apa ou etapas são co
ontroladora
as.

Solu
ução Analítica

esistências:
Cálcculo das re

4
43                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 2: Fun
ndamentoss de Prog
gramação – Como Programa
ar ?

1 1
RTM = = 4
=1,37.10 −5 s / cm
kH 2 7,29.10

2 2
Ro R 4 4 x 60
RRQ = 2
= 2o = = −3
=1266,31.103 s / cm
R .k Ro k 1,9.10
.k
4

R ( R − R ) R o ( R o − R o / 2)
2
Ro / 2 Ro
R DIF = o o = = =
R.D H 2 / FeS
F
Ro Ro D H 2 / FeSS
. D H 2 / FeS . D H 2 / FeSS
2 2

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 AB® da seg
e MATLA 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
versal = [Rtm Rrq max_Rdif];
univ 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 R Rtm Rrq Rdif
H2_FeS km_

% 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 % ressistência à transfe
erência de
e massa
res_
_rq % ressistê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
versal = [Rtm Rrq max_Rdif];
univ 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

bal km_H2 Rtm % dec


glob 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

bal k Rrq % declara


glob 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
Mód
du
ulo
o33:
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 neceessários à execução o das


sub--rotinas nã
ão se encontram disp poníveis de
e forma exxplícita. Alg
gumas vezzes é
neceessário umm tratamento prévio de
d determiinadas infoormações para garan ntir a
compilação de e códigos. Da mesma a forma quue importa
ar os dadoss, é importtante
tamb bém exporrtar. Emboora o MATL LAB® ofereeç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
arquuivos, seguido por funções de exporttação e importação
i o, funções
s de
trata
amento dad dos e por último,
ú Han
ndle Graphhics.

filep
parts: retorrna informa
ação do arrquivo com
mo caminho
o, nome e extensão.. Sua
sinta
axe e exemmplo 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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  Foormato MAATLAB  loaad  Variáveiss no arquivo o 
CSV  N
Nº separado s por ‘ , ’  cvvsread  Matriz n numérica 
DAT  Teexto formattado  im
mportdata  Matriz n numérica
DLM  N
Números de limitados  dlmread  Matriz n numérica
TAB  N
Números tab bulados  dlmread  Matriz n numérica
XLS  Planilha do M
MS‐Excel  xlssread  Matriz n numérica e ccell‐
array 
WK1
1  Planilha do LLotus 123  wkk1read  Matriz n numérica e ccell‐
array 
CDF**  Common Data Format 
C cddfread  cell‐arraay e registro
o CDF
FITS**  Fllexible Imag
ge Transporrt  fittsread  Formato o FTIS 
Syystem 
HDF**  H
Hierarchical  data Formaat  hddfread  Formato
o HDF 
AVI  Foormato AVI(animação))  avviread   Formato
o MATLAB m
movie 
BMPP  Foormato BM MP 
JPEG
G  Foormato JPEG 
GIF  Foormato GIF 
F
TIFF  Foormato 
XDWW  Foormato XDW W  Matrizess de cores (ttrue 
CUR  Foormato CUR R  im
mread  color) e índice 
ICO  Foormato ICOO  (mapeam mento) 
RAS  Foormato RASS (raster Sum
m) 
PBMM  Foormato PBM M 
PGMM  Foormato PGM M 
PPM   Foormato PPM M  
AU  Foormato  AUU (áudio Sunn) 
au
uread   Dados de freqüênciia  
SND   Foormato  SND (áudio Su un)  
WAVV   Foormato WA AV (áudio MSS)   waavread   Dados de freqüênciia 
T
Tabela 3.1 – funções ge
erais para im
mportação e exportaçãoo de dados. (*) Padrão de
d
arquivo
os para troc
ca de dados criado pela
a NASA.

4
49                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 funnçã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 porquue utilizar as outrass? A
funçção importd data é um
ma função genérica e como tal não contém toda as as
caraacterísticass de armazzenamentoo 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
trabaalho a mais para connseguir exttrair o que se deseja..

Fun
nção de Tratamen
T nto
Há casoos que preecisaremoss exportar dados para visualizaação no prompt
de comando
c (janela de
e comando os), mas nemn semppre a form
matação que o
MAT TLAB® disppõe é adeqquada à sittuação.
Para ressolver esse
e problemaa iremos trrabalhar co
om o comaando ou função
ntf. Podem
fprin mos definir as atribuições de essa funçã ão como a gravação de
dadoos em um arquivo forrmatado. Sua
S sintaxe e pode serr observada a seguir..

Caracteeres 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  Descriçção  Exemplo 


‐  Alinhammento à esquerda  %
%‐5.2d 
+  Sempree impre sin
nal dos nú
úmeros  %
%+5.2d 
0  Preenche espaçoos com ‘0’ em vez dee ‘   ’  %
%05.2d 
Tabela 3.2
2 – Caracterres dos flags do coman
ndo fprintf.

O parâmmetro T de
efine o númmero de díg gitos à esq
querda do ponto deccimal.
Para
a definição
o do númerro de dígito
os à direita
a temos o parâmetroo de entrad
da P.
O pa
arâmetro C define a identificaçã
i ão de notaação como mostra a ttabela 3.3..

Fo ormato  Notação 
N Exemp plo  Resultado 
%c  Caracterre  fprintf(‘%’c,’’a’)  a 
%s  Cadeia d
de caractere  fprintf(‘%’s,’’abc’) abc 
%d  Decimal  fprintf(‘%’5..3d,’pi’) 3.142e+000 
%f  Ponto flu
utuante  fprintf(‘%5.3 3f’,’pi’) 3.142 
%e  Exponenncial  fprintf(‘%’5..3e,’pi’) 3.142e+000 
Tabela 3..3 – Caracte
eres de identificação de
e notação.

5
50                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 3: Man
nipulação
o de Dado
os – Com
mo Traba
alhar ?

Alguns caracteress especiaiss podem ser


s utilizaddos para aatribuir fun
nções
extra
as ao fprin
ntf. São postos semppre após o primeiro conjunto
c de
e parâmetros e
podeem ser ressumidos naa tabela 3.4
4.

Caraactere  Nomme  Descriçção 


\b  backkspace  Retorno de caracctere 
\f  form
m feed  Avanço o de linha 
\n  new line  Pula lin
nha 
\r  carriage returnn  Retorno de linhaa 
\t  horizzontal tab  Tabulaçção horizoontal 
\\  backkslash  Caracteere barra invertida 
\”  quottation marrk  Caracteere aspa ““ 
%%  percent characcter  Caracteere porcenntagem %% 
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
mannipulação ded figuras para a aprresentação o de resultados em fformato grá
áfico.
O co
onjunto dessses recurrsos é deno ominado Handle
H Graaphics.
Para efeeitos de otimização
o de resulta
ados é suggerido que
e a geraçãão de
gráfiicos seja organizada
o segundo os
o passos a seguir:

so 0 – Pre
Pass eparação dos Dados (leitura e tratamento
t o);

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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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  Marcad dor  TTipo de Linnha 


y (ammarelo) . (pontoo) : (pontilhaado)
m (mmagenta) o (círcuulo) ‐
‐. (ponto‐ttraço)
c (azzul‐claro) x (x’s) ‐
‐‐ (tracejad
do)
r (ve
ermelha) + (cruz)) s
solid (sólid
da) 
g (veerde) * (estreela)
b (azul) s (quad drado)
w (bbranca) d (losan ngo)
k (preta)  v (triângulo p/ baaixo)
^ (triânngulo p/ cima) 
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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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  Atribuiçção 
loglo
og  Valor loggarítmico de x e y. 
sem
milog(i)  Valor loggarítmico de x e lineear para yy.
impulse  Respostta ao impu ulso. 
step
p  Respostta ao degrau. 
bode  Diagramma de BOD DE.
polaar  Gráficoss com eixo
os de coorrdenadas p polares. 
nich
hols  Diagramma de Nich hols. 
nyquuist  Diagramma de Nyquist. 
zppllot  Zeros e pólos de ffunções trransferênccia. 
resid
d  Análise de correlaações e coorrelaçõess cruzadas. 
sim  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 Você terá 10 minuto


mo de reccursos visttos nesse módulo. (V os, 5
paraa cada usuário)

5
53                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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
Engenh mica);

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 incoeerentes, o erro está,, com absoluta
certeza
a, no algoriitmo de criação dos dados;
d
 

5
54                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Mód
du
ulo
o44:
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 ded ambiente e intterface, programaçã ão, cálculoo vetorial em
aritm
mética de máquina, e importa ação, expo ortação e manipulaçção de da ados.
Esse n entanto, são gerais para qua
es conheciimentos, no a da ciência no
alquer área
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 comoo base os o conceito os vistos anteriormmente
pode eremos entender
e a ferram
as mentas que o softw ware disp ponibiliza para
solucionar nosssos proble
emas profisssionais.
Veremoos agora so
oluções pa ara problemmas cotidia anos em noosso laborr, tais
como, solução o de EDOs, solução o de EDP,, solução de SELs, dentre ou utros.
Nosssos estudo os estão divididos emm 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
bommbeado a umau 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çõees de conttra correntte. A alturra do
do no tanq
líquid que vertica
al cilíndrico
o é h (m). A vazão de saída do tanque eé F
(m3/s).
/
Sabe-se e que F0, h e F são variáveis como tempo e conseqüentemente,
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 horizonntal e
desccarrega no o topo de e outro ta anque. Ammbos os tanques ssão aberto os à
atmoosfera.

Figura 4.1.1 – Tanqu


ue Pulmão
5
56                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

E
Este é um simples exemplo
e dee aplicaçãoo de equações do m movimento para
siste
emas macrroscópicoss. Para a Figura
F 4.1.1vamos toomar a linh
ha de saídaa por
2
L (mm) 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 deeste 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 dadaa 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ívvel e se de
esloca integralmente com
velocidade con nstante, se
e comporttando com mo se fosse e um corppo 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 quantidaade de líquuido do tubo não iráá variar com o tempo o. Mas, se
e nós
quisermos mudar a vazã ão de saídda do fluid
do, a veloccidade do líquido pre
ecisa
ser mudada. E para tro ocar a vellocidade ou
o o mom mento de uum líquidoo nós
deveemos exerccer uma foorça sobre o líquido.
A direção o de interresse nesste problema é a horizontal desde então e
assuumimos qu ue o tuboo é horizo ontal. A foorça aplica
ada sobree o líquidoo na
extre
emidade esquerda
e d tubo é a pressã
do ão hidráulicca do líqu
uido no tanque
dadaa por:

(4
4.1.3)

onde e g é a aceeleração devido à grravidade e é 9,81 m//s2 se o tan


nque estiveer no
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. Apennas 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 reelaçã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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 preecisamos de um método m numérico pa ara resolveer essas duas


equaações diferrenciais orrdinárias acopladas. A equação o (4.1.7) é não linea
ar por
caussa do term
mo v2. Dim mensões físicas,
f va
alores de parâmetro
p s e dadoss em
regim
me de estaacionarieda ade são da ados pela Tabela
T 4.1.1.

Tuboo:
di = 3 m A = 7,06 m2 L = 3000 m
Tanq
que:
di = 12 m A = 113 m2 h=7m
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
parâ as equaçõees (4.1.7) e (4.1.8), te
emos:

(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. Noo tempo igu ual a
o, a vazão no tanque é levada ao
zero 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 imula um tanque de fluxo por g
nção que si gravidade. %

5
58                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

% %
râmetros de
% Par e entrada: %
% %
% v0_1 ->
> vazão de entrada coom 67% da vazão mássica. %
% h0_1 ->
> nível iniicial. %
% > vazão de entrada co
v0_2 -> om 50% da vazão mássica. %
% h0_2 ->
> nível iniicial. %
% tempo_s
sim -> temppo de simul
lação. %
% deltat -> passo de
d tempo. %
% %
% Par
râmetros de
e saída: %
% %
% h1 -> resposta
r emm nível da vazão v0_
_1. %
% h2 -> resposta
r emm nível da vazão v0_
_2. %
% %
% Cri
iado e atua
alizado porr: Phillipi
i R. O. Souza. %
% Dat ção: 22 de agosto de 2008.
ta de criaç %
% Dat
ta da últim
ma atualiza e agosto de 2008
ação: 23 de %
%%%%%
%%%%%%%%%%%
%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%

clc
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
% D
Declaração de variáveis %
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%

% v0_
_1 = 3.40; % m/s %
% h0_
_1 = 2.05; % m %
% v0_
_2 = 2.50; % m/s %
% h0_
_2 = 2.05; % m %
% tem
mpo_sim = 800;%
8 s %
% del
ltat = 1; % s %

%%%%%
%%%%%%%%%%%
%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%
% Valor Inicial
I %
%%%%%
%%%%%%%%%%%
%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%

v1(1)
) = v0_1; % m/s %
h1(1)
) = h0_1; % m %
v2(1)
) = v0_2; % m/s %
h2(1)
) = h0_2; % m %

%%%%%
%%%%%%%%%%%
%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%
% Resol ndo Euler Explicito
lvendo usan %
%%%%%
%%%%%%%%%%%
%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%

fprin
ntf('******
*********** *********************\n');
***********
fprin
ntf(' Tempo
o v1 h1 v2 h2 *\n');
fprin
ntf('******
*********** *********************\n');
***********
i = 1;
1
while
e i <= (tem
mpo_sim + 1)
1

dv1dt(i) = (0.0107*h1
d .00205*v1(i)^2);
1(i)) - (0.
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 .00205*v2(i)^2);
2(i)) - (0.
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
f
fprintf('| %2.0f %
%2.4f %2
2.4f %2.4f %2.4f |\n',...
tempo(ii),v1(i),h1
1(i),v2(i),
,h2(i));
f
fprintf('------------- -------------------------\n');
-----------
i = i + delltat;

end

5
59                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 a vazão total');
al','50% da
ylim(
([0 9]);
hold off

end

Como pode
p ser observado
o é utilizado
o o algoritm
mo Expliciito de Eule
er de
meira ordem
prim m. As variá
áveis que nós estam mos resolveendo são v e h.Para a o i-
ésim
mo passo te
emos

(4.1.11)

(4.1.12)

Os novoos valores de h e v no (i+1)-és o são calcculados usando


simo passo
er com passso de tempo deltat.
Eule

(4.1.13)

(4.1.14)

Os resuultados poddem ser visualizados


s no promp
pt ou graficcamente, como
c
mostra a Figurra 4.1.2.

6
60                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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.

Observee que o fatto de apliccarmos umma vazão de alimenta ação maiorr não
significa que haverá
h um escoamen nto de desc
carga maio
or. Isto é d
devido à inércia
da massa
m de lííquido no tubo.
t

Con
nteúdo Adicional

Algoritm
mos explíccitos envo olvem cálculos exp plícitos de
e derivada
as e
passsadas de tempo se em interações. Dois método os popularres e de fácil
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 extremammente
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 integraação é coonhecido 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


onde agora sabe
er as
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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 a derivada de x
al de variaçção de x (a
em t = 0). O novo
n valorr de x(xt) é aproximaadamente 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 olhemos arrbitrariamente a
utras variávveis de esttado. Esco
tempperatura e o volume molar ou específico,
e V). Onde,
U = U(T,V

((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ânncia.
• Sempre e que a ene ergia intern
na for inde
ependente do volumee, qualquerr que
seja o processo.
p

F
Finalmente
e,

(4.2.3)

(4.2.4)

ação dessa integral requer o conhecime


A avalia ento da de
ependênciia da
capaacidade caalorí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 daa substânccia conside
erada. Com
mo a
Razã
ão CP/R é adimensional as unnidades de
e CP são governada
g as pela esc
colha

6
63                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 expreessão
para
a CP como uma função da tem mperatura, seguida dee uma inteegração formal.
Pata
a limites de
d temperratura de T0 e T, o resultado é con nvenientemmente
repre
esentado como:
c

(4.2.6)

Identificcamos a grandeza em
e colchettes como <CP>H/R, onde <CP>H é
nida como uma capa
defin 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
dessse valor fo
ornece um m novo valo
or para T a parir do
o qual se pode reav valiar
<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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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, vammos 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 deesprezíveis, e se We = 0,
o ba
alanço globbal de enerrgia do pro
ocesso se reduz a ΔH H = 0. Com
mo o objettivo é
calcuular a tem
mperatura final,
f qualq
quer trajetó
ória entre os dados inicial e fin
nal é
convveniente. A trajetória escolhida
a pode ser visualizadda 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 como a capacidade
c e calorífica da corrente de
a média d
prod
dutos total:

. (4.2
2.13)

6
65                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

Nesse caso,
c o prrocedimennto 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 gasosoo da reaçãoo 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 A B (103) ( 6)
C (10 D (10-55)
CO 3,37
76 0,557 0 -0,031
CO2 5,45
57 1,045 0 -1,157
7
N2 3,28
80 0,593 0 0,040
NO 3,38
87 0,629 0 0,014
O2 3,63
39 0,506 0 -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)

Consideerando 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 a a quantidade


squemático da combustão no queimador para
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 ação de Processos - LACO
e e Otimiza %
% Cri
iado e Atua
alizado por i Rodrigo de Oliveira Souza
r: Phillipi %
% Dat
ta da criaç
ção: 12 de abril de 2007
2 %
% Dat
ta da últim
ma atualiza e abril de 2007
ação: 12 de %
% %
% Cál emperatura da chama provenient
lculo da te p e da combustão do gá
ás propano.%
%%%%%
%%%%%%%%%%%
%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%

6
66                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

clear
r;clc

%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
% Cál
lculo do Ca
alor(Entalp o da reação de combustão:
pia) Padrão %
% %
% C3H
H8(g) + 7/2 ----> 3CO2(g) + 4H2O(g)
2O2(g) ---- %
% CO(g) + 1/2O2(g) --------> CO2(g) %
% N2(g) -------> 2NO(g)
) + O2(g)-- %
% %
%%%%%
%%%%%%%%%%%
%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%

fprin
ntf(' Dados Gerais\n');
fprin
ntf(' ------------\n');
fprin
ntf('\n');
fprin
ntf('C3H8(gg) + 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_Comb2998_a = 3*DH
Ho_For298_C
_CO_g + 4*DHo_For298_
_H2O_g -
DHo_F
For298_C3H88_g\n'...
)
);
fprin
ntf(...
'
'DHo_Comb2998_b = DHo_
_For298_CO2
2_g - DHo_
_For298_CO_
_g\n'...
)
);
fprin
ntf(...
'
'DHo_Comb2998_c = 2*DH
Ho_For298_N
_NO_g - DHo_For298_N2_g\n'...
)
);
fprin
ntf('\n');
fprin
ntf(...
'
'DHo_Comb2998 = DHo_Co
omb298_a + DHo_Comb298_b + DHo_Comb298_c
c\n'...
)
);
fprin
ntf('DHoCommb298 = %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, CPHH%
%%%%%
%%%%%%%%%%%
%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%

% 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*110^-3;
B_CO = 0.557*100^-3;
B_H2O
O = 1.450*110^-3;
B_O2 = 0.506*100^-3;

6
67                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

B_N2 = 0.593*10
0^-3;
B_NO = 0.629*10
0^-3;
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 % J/mol.K
K %
To = 298.15; % K %
Taux = 299; % K %
Taux_
_ex = 299; % K %
erro = 0.00001;; % K %
T = 300;
3 % K %
T_ex = 300; % 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('quantiidade 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('Temperratura(T) K ºC\n');

i = 0;
0
while
e abs(T - Taux)
T > err
ro

i = i + 1;
MCPH = R*(Soma__nA+(Soma_n T/To+1)+(Soma_nD/2)/((T/To)*To
_nB/2)*To*(T 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

CA
ASO 3: Controoladore
es Automátic
cos
(ajusta
ando Curvas)
C )

No troccador de calor
c tipo “camisa”
“ de
d um reator CSTR é injetado o um
fluidoo de aquecimento. O engenhe eiro responsável pelaa 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
tanqque. Para queq seu controlador
c al operação, ele neccessita de uma
r realize ta
relaçção matem mática entrre as variávveis controolada e maanipulada. Para tanto ele
deve e realizar uma estimação ba aseada em m dados amostrado os do sisttema
(idenntificação ou
o modela agem empíírica). Com mo estão disponíveis
d s poucos dados
(denntro de seu u intervalo
o de operaação), será á necessárria uma prrecisão dee sua
partee na estimação do modelo
m (equação), já que o successo do controladorr está
direttamente liggado a preccisão da equação es stimada.

V
Vazão 
3 0,1 0,2
2 0,3 0,4 0,5 0,6
6 0,7 0,8 0,9
(m /min)
Tempperatura 
91,99
9 93,4
45 96,10 97,12 97,35
9 99,6
63 98,46 99,28 10
00,97
(ºC)

Precisamos saberr que tipo de


d equação será neccessário pa ara satisfaz
zer o
conttrolador. Pa
ara isso va
amos visuaalizar os da
ados numa
a figura grá
áfica.

figurre('Number'','off','Na
ame','Teste
e Gráfico (CASO 3)','Color','w
w')
plot((V,T,'ro')
grid
titlee('Teste Grráfico (CAS
SO 3)')
xlabeel('Vazão (m^3/s)')
(
ylabeel('Temperaatura (ºC)‘
‘)

6
69                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

Observee que uma a reta parece satisfaz


zer o probllema. Poré ém, lembree que
a te
emperatura a máxima alcançada a pelo prooduto é a temperattura do líq quido
aque
ecedor. Asssim para V → ∞, T → Taq.
quação polinomial ne
Para esstimar a eq 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 = ordeem do polinômio a see 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ômiio
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 os gerados pelo
o e os dado
% 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

CASO
O 4: CSTR Nãoo-Isoté
érmico
(Solução de
e SEL)

Um pro oduto polim


mérico R se decom
mpõe em monômero
m s dos quaais 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

devee ser cond duzida em


m uma reaator tipo CSTR
C enccamisado. Um comp posto
inertte é adicio
onado ao reator em
m quantidaades equiimolares e em relação ao
gente R. Dada as informaçõ
reag õ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 espeecífico do inerte: 2155 cal/mol .ºC
C;
• C
Calor espeecífico de R e P: 46 cal/mol
c .ºC
C;
• V
Vazão molar de alimmentação de A: 80 mo ol/min;
• UA: 9 500 cal/mol.K;
• T
Temperatu ura ambien nte: Ta = 2998 K;
• 1 -3 min-1;((à 350 K)
k = 4,56 x 10
• E = 33 0000 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
reaçção é dada
a por

Sendo um reatorr não-isoté


érmico, a constante
c de velociddade pode
e ser
escrrita tendo como
c base
e a Lei de Arrhenius,
A e taxa é re
eescrita co
omo

Utilizand
do a definição de tem
mpo espac
cial temos:

7
71                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 utilizzamos o comando fsolve. Esse


comando é utiilizado parra resolver problemas de SELss. A seguirr veja a sin
ntaxe
que envolve ta
al comando o.

7
72                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

onde
e:

• equações = função de
e d contenhha o vetor de
d equaçõ ões;
• C
Chute Iniccial = va
alor estimaado para as variá áveis dado
o na
in
nteração zero;
z
• o
opções = opções
o de do comanndo (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 onar nosso problema:
ara solucio

%%%%%
%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
% A função "ccaso4" solu
ucionar o problema
p do CASO 4 do
d quarto mmódulo do %
% c
curso de MAATLAB. Maio
ores detalh
hes, ver apostila. %
% %
% Cri
iado e Atua r Phillipi R. O. Souza.
alizado por %
% Dat
ta da criaçção: 14 de janeiro de
e 2009. %
% Dat
ta da últimma atualiza e janeiro de 2009.
ação: 14 de %
%%%%%
%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%
funct
tion caso4

clc
Chute
eInic = [50
00 0.2]; % Chute inicial
opcoe
es = optims
set('TolX',
,1e-4); % opções de convergênc
cia
sol = fsolve('r
reator',Chu
uteInic,opc
coes); % 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('Resulttados da Si o Reator CSTR.\n');
imulação do
fprin
ntf('................. ..............\n');
...........
fprin
ntf('\n');
fprin
ntf('Converrsão = %4.4
4e',Conver)
);
fprin
ntf('\n');
fprin
ntf('Temperratura = %4
4.4f',Temp)
);
fprin
ntf('\n');

7
73                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
% A função "r
reator" aux
xilia a fun
nção "caso4". %
% %
% Cri
iado e Atua r Phillipi R. O. Souza.
alizado por %
% Dat ção: 14 de janeiro de
ta da criaç e 2009. %
% Dat
ta da últim
ma atualiza e janeiro de 2009.
ação: 14 de %
%%%%%
%%%%%%%%%%%
%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%
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( /TR)-(1/x(1))))) /
((E/R)*((1/
(1+(t
tau*k0*exp(((E/R)*((1/
/TR)-(1/x(1
1)))))));
x(2) - ((( 1))/FA0) + (cpa + Mi*cpi) + (x(1)-T0)) / (-(DH)))];
(UA*(Ta-x(1

A so
olução será
á exibida no
n prompt como:
c

Resu ultados da a Simulação o do Reato


or CSTR.
.......................................

Convversão = 8.4931e-00
8 02
Tem
mperatura = 290.54811
>>

7
74                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

CASO 5:
C 5 Reatoor 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 concentraação do componente A, CA, na corrente d


de alimenta ação,
em moles
m de A por uniddade de vo olume. Asssumindo que
q areaçã ão se comp porta
como uma cinnética de primeira
p orrdem, a tax
xa de consumo do rreagente A por
unidade será diretamennte 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 dee 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á
senddo consummido. As un
nidades de
e todos oss termos esstão em: m
moles de A por
unidade de temmpo. Para que isso ocorra,
o a unidade
u de
e k deve se
er o invers
so da
unidade de temmpo.
A taxa de
d acúmuloo é dada por:
p
7
75                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 ntração em função
a concen 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 temperaatura 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ç ada ponto T);
ção no tempo para ca
• ‘equações s’ = funçãoo que conte quações diiferenciais;
enha as eq
• 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 nter a seguinte
s deve con
sinta
axe:
7
76                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

Onde:

• VI = varriável indep
pendente;
• VD = vaariável deppendente;

Assim o código
o sugerido

• para funçã
ão principal:

%%%%%
%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
% A função "ccaso5" solu
ucionar o problema
p do CASO 5 do
d quarto mmódulo do %
% c
curso de MAATLAB. Maio
ores detalh
hes, ver apostila. %
% %
% Cri
iado e Atua r Phillipi R. O. Souza.
alizado por %
% Dat
ta da criaçção: 15 de janeiro de
e 2009. %
% Dat
ta da últimma atualiza e janeiro de 2009.
ação: 15 de %
%%%%%
%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%
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

figurre('Name','
'CASO 5','N ff','Color','w')
Number','of
plot((T,XA)
xlabeel('Tempo (s)')
(
ylabeel('Convers
são (%)')
titlee('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 r Phillipi R. O. Souza.
alizado por %
% Dat ção: 15 de janeiro de
ta da criaç e 2009. %
% Dat
ta da últim
ma atualiza e janeiro de 2009.
ação: 15 de %
%%%%%
%%%%%%%%%%%
%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%
funct
tion dxAdt = reator(t
t,xA)

k = 0.054;
0
V = 2
25;

dxAdt
t = k*(1-xA
A(1));

7
77                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

Para avvaliar a innfluência d


da temperratura esccolhemos aarbitrariam
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 mmódulo do %
% c
curso de MA
ATLAB. Maio
ores detalh
hes, ver apostila. %
% %
% Cri
iado e Atua r Phillipi R. O. Souza.
alizado por %
% Dat ção: 15 de janeiro de
ta da criaç e 2009. %
% Dat
ta da últim
ma atualiza e janeiro de 2009.
ação: 15 de %
%%%%%
%%%%%%%%%%%
%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%
funct
tion caso5_
_temp

clc
globa
al k_aux % Declara riáveis globais
ação de var

k = [
[0.054 0.0998 0.023]; % Variaçãoo de k
for i = 1:3
k
k_aux = k(i
i); ção de um k por vez
% Utilizaç
[
[T,XA] = od
de45('reato
or_temp',[00 150],0);
X
XA_aux{i} = XA; nação das converções
% concaten
T
T_aux{i} = T; nação dos tempos
% concaten

end

% Sep
paração das
s variáveis bição gráfica
s para exib

XA1 = XA_aux{1,
,1};
T1 = T_aux{1,1}
};

XA2 = XA_aux{1,
,2};

7
78                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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

figurre('Name','
'CASO 5','N
Number','of
ff','Color','w')
plot((T1,XA1,'k'
')
hold on
plot((T2,XA2,'k-
-.')
plot((T3,XA3,'k.
.-')
xlabeel('Tempo de
d Residênccia (s)')
ylabeel('Convers
são (%)')
titlee('Caso 5')
)
legennd('k = 0,0
054','k = 0,098','k
0 = 0,023','Location','best')
grid

%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
% A função "r
reator_temp
p" dar supoorte à função "caso5_temp". %
% %
% Cri
iado e Atua r Phillipi R. O. Souza.
alizado por %
% Dat ção: 15 de janeiro de
ta da criaç e 2009. %
% Dat
ta da últim
ma atualiza
ação: 15 dee janeiro de 2009. %
%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
funct
tion dxAdt = reator_t
_temp(t,xA)

globa
al k_aux % Dec e variáveis globais
claração de

% 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

CAASO 6: CSTRs
C s em Sé
érie
(Tra
abalha
ando co
om EDOs)

Esse caaso é uma extensão do caso 5 onde um determinado produto oBé


prodduzido enqquanto o reagente
r A é consu umido. Agora consid dere que essa
convversão ocoorre 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
emperaturaas e os voolumes doss tanques são distinttos, porémm constantees. A
denssidade é asssumida coonstante através
a do sistema.

Com esssas conssiderações em men nte, nós podemos


p fformular nosso
n
moddelo. 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 paara 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 unnidade commo (m3/minn).
Para o nosso casso apenas a equação o da contin
nuidade seerá necess
sária.
Com
mo o sistemma é bináário e nós conhecem mos a masssa total ddo materia
al em
cada
a tanque, apenas
a um
m compone ente é requerido parra a equaçção. Ou A ou B
pode
em ser usaados. Se nós,
n arbitra
ariamente escolhermmos A, as equações para
cada
a tanque sã
ão (cada teermo tem unidade
u de
e kg.mol de A/min):

8
80                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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

Nesse caso
c as va
ariáveis de s e de equações, além de ou
e soluções utras,
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 "ccaso6" solu
ucionar o problema
p do CASO 6 do
d quarto mmódulo do %
% c
curso de MAATLAB. Maio
ores detalh
hes, ver apostila. %
% %
% Cri
iado e Atua r Phillipi R. O. Souza.
alizado por %
% Dat
ta da criaçção: 15 de janeiro de
e 2009. %
% Dat
ta da últimma atualiza e janeiro de 2009.
ação: 15 de %
%%%%%
%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%
funct
tion caso6

clc
[T,CA
A] = ode45(
('reator',[ 4 0.2 0.1]);
[0 15],[0.4

% Exi
ibição gráf
fica

figurre('Name','
'CASO 6','N ff','Color','w')
Number','of
plot((T,CA(:,1),
,'k')
hold on
plot((T,CA(:,2),
,'k-.')
plot((T,CA(:,3),
,'k.-')
xlabeel('Tempo de
d Residênccia (s)')
ylabeel('Convers
são (%)')
titlee('Caso 6')
)
legennd('C_A_1',
,'C_A_2','C cation','best')
C_A_3','Loc
grid

• Para a função
f de equações:

%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
% A função "r r suporte à função "caso6".
reator" dar %
% %

8
81                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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
dCAdt u)*(CA0-CA(
(1)) - k1*C
CA(1);
(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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

CASO 7:
C 7 Reattor HDTT
(Trrabalha
ando com
c ED
DP)

Os commbustíveis fósseis sãos a base energéttica da hu umanidade e. No


enta
anto, esse monopólio o energético traz coonsigo con nseqüências ambien ntais,
algumas veze es, catastrróficas. Pa ara reduzir o impa acto que e essa atividade
prommove ao meio
m ambiente, dentree 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 passagemm de
umaa corrente gasosa de e hidrogên
nio atravéss do óleo, contido n
num reatorr tipo
Leito
o Gotejante na pre esença de e catalisadores. Oss compostos sulfurrados
reaggem 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 identificcar o perfil de temp
peratura dee um
reatoor HDT. Esse
E ema é basseado em parte do artigo (Me
proble ederos, F. S. e
Anchheyta, 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 dee gás hidrggênio (Pa);
• t = temp po (s);
• uG = vellocidade superficial da d fase gas sosa (cm/ss);
• z = com mprimento (altura)
( do reator (cmm);
L
• k H2 = coeficiente
c de transfeerência de e massa do o H2 na interface ga
asosa
(cm/s);
• aL = áre da (cm-1);
ea superficcial da interrface líquid
• 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 iguaaldade o teermo
diferrencial noss informa o perfil de pressão
p do
o gás hidro ogênio ao longo do te
empo
de atividade
a doo processoo. No lado direto, essse perfil é dado ao lo
ongo do reeator,
em termos esspaciais. EsseE 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
arbittrariamentee que os parâmetro os sejam dados de e forma que a equação
anteerior 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 "ccaso7" solu
ucionar o problema
p do CASO 7 do
d quarto mmódulo do %
% c
curso de MAATLAB. Maio
ores detalh
hes, ver apostila. %
% %
% Cri
iado e Atua r Phillipi R. O. Souza.
alizado por %
% Dat
ta da criaçção: 15 de janeiro de
e 2009. %
% Dat
ta da últimma atualiza e janeiro de 2009.
ação: 15 de %
%%%%%
%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%
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)
(
figurre('Name','
'Perfis sim ,'Number','off')
multâneos',
surf((z,t,pH2)
titlee('Perfis simultâneos
s s')
grid
xlabeel('Comprim
mento (cm)'')
ylabeel('Tempo (s)')
(
zlabeel('Pressão
o de H_2')

% Perrfil ao lon
ngo do reattor
figur 'Perfil ao longo do reator
re('Name',' r no instante final','Num
mber','off')
plot((z,pH2(end,
,:))
grid
titlee('Perfil ao
a longo do o instante final')
o reator no
xlabeel('Comprim
mento (cm)'')
ylabeel('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 à fuunção "caso7". %
% %
% Cri
iado e Atua r Phillipi R. O. Souza.
alizado por %
% Dat
ta da criaç
ção: 15 de janeiro dee 2009. %
% Dat
ta da últim
ma atualiza
ação: 15 dee 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 Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

• para a função
f que
e contém a condição inicial:

%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
% HDTci" dar suporte à função "caso7".
A função "H %
% %
% Cri
iado e Atua r Phillipi R. O. Souza.
alizado por %
% Dat ção: 15 de janeiro de
ta da criaç e 2009. %
% Dat
ta da últim
ma atualiza e janeiro de 2009.
ação: 15 de %
%%%%%
%%%%%%%%%%%
%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%
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 "HHDTcc" dar suporte à função "caso7". %
% %
% Cri
iado e Atua r Phillipi R. O. Souza.
alizado por %
% Dat
ta da criaçção: 15 de janeiro de
e 2009. %
% Dat
ta da últimma atualiza e janeiro de 2009.
ação: 15 de %
%%%%%
%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% %%
funct
tion [pl,ql ul,zr,ur,t)
l,pr,qr] = HDTcc(zl,u
pl = ul - 4.2;
ql = 0;
pr = ur;
qr = 0;

8
86                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
Módu
ulo 4: Esttudo de Casos
C

8
87                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C
 
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 ulos são pesados. Utilize
cálcu U
um prog
grama ade
equado.

8
88                                                                                            ELEM Consultoria ⋅  PTCC 
MENTUS JR. C