Fundamentos Da Engenharia Quimica Matlab 2009

May 29, 2016 | Author: Larissa Pecci | Category: N/A
Share Embed Donate


Short Description

Download Fundamentos Da Engenharia Quimica Matlab 2009...

Description



ELEM MENTUS CONS SULTOR RIA JR Direttoria de e Inform mática PROGR RAMA DE TREINAM MENTO EM M COMP PUTAÇÃO CIENTÍFIC CA – PTCC C

FU UND DAM MEN NTO OS D DA EN NGE ENH HAR RIA

®

Q ÍMIC QU CA NO MA ATL LAB B

PTCC RECIIFE





2009 9

 

UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE TECNOLOGIA E GEOCIÊNCIA DEPARTAMENTO DE ENGENHARIA QUÍMICA

ELEMENTUR JR. CONSULTORIA Programa de Treinamento em Computação Científica – PTCC Av. Professor Artur de Sá, Recife – PE

Priscila Carvalho dos Santos Diretora Presidente

Phillipi Rodrigo de Oliveira Souza Diretor de Informática

PRODUZIDO PELA ELEMENTUS JR.CONSULTORIA Phillipi Rodrigo de Oliveira Souza Projeto

Gustavo de Almeida Castro Phillipi Rodrigo de Oliveira Souza Edição, projeto gráfico e produção

Gustavo de Almeida Castro Phillipi Rodrigo de Oliveira Souza Produção Artística

Gustavo de Almeida Castro Priscila Carvalho dos Santos Phillipi Rodrigo de Oliveira Souza Arte final digital

Gustavo A. Castro Phillipi Rodrigo de Oliveira Souza Capa

Rayanna Alice Priscila Carvalho dos Santos Revisão gramatical

Este documento é parte integrante do material didático do Programa de Treinamento em Computação Científica, PTCC, da Diretoria de Informática da ELEMENTUS JR. Consultoria e tem por objetivo descrever os princípios fundamentais da programação em ambiente MATLAB® direcionado à engenharia química. Criado pelo Diretor de Informática o Sr. Phillipi Rodrigo de Oliveira Souza, com a orientação da Diretoria Executiva presidida pela Sra. Priscila carvalho dos Santos e apoio das demais diretorias.

Apresentação Desde o princípio, a tecnologia vem sendo um fator limitante para as engenharias. Ela se desenvolve à medida que a tecnologia avança e a tecnologia , por sua vez, cresce proporcionalmente à ela como numa relação simbiótica. Dentre os principais fatores responsáveis por tal fato, a informática tem um papel de destaque. Com o desenvolvimento de computadores de maior capacidade de armazenamento e processamento, problemas que até então não tinham solução viável se mostram possíveis e os desenvolvimentos na área da engenharia crescem exponencialmente. Para a Engenharia Química e Química Industrial, tal desenvolvimento vem sendo sentido em todas as suas áreas. Sistemas de Informação, Biotecnologia, Fenômenos de Transporte, Controle de Processos, Reatores, Automação, Processos Químicos e Operações Unitárias são alguns exemplos de atuação da informática. O MATLAB® é um programa de computador desenvolvido para assistir, dentre muitas áreas das ciências exatas e humanas, a engenharia. Com uma interface simples e prática suas ferramentas são uma poderosa arma para a solução de problemas em Engenharia Química. Além de recursos básicos de programação, o MATLAB® traz uma gama de ferramentas que auxiliam estudantes, pesquisadores e profissionais da área em suas atividades laborais conferindo, aos mesmos, caráter profissional. É com esse pensamento que ELEMENTUS JR. Consultoria, através de sua Divisão de Informática com seu Programa de Treinamento em Computação Científica (PTCC), promove o curso Fundamentos da Engenharia Química no MATLAB®. O PTCC tem o objetivo de promover a cultura da Engenharia Digital entre os membros do Departamento de Engenharia Química e Química Industrial lotado no Centro de Tecnologia e Geociências da Universidade Federal de Pernambuco e a comunidade externa. O curso é direcionado aos estudantes e profissionais na área de Engenharia Química e Química Industrial. Seu conteúdo está distribuído em quatro módulos e uma carga horária de trinta horas. Os módulos são divididos como segue: Módulo 1 (Conceitos Básicos – Como Manipular?): traz ao leitor o primeiro contato com a interface gráfica do programa, noções de aritmética de máquina e conceitos operacionais da matemática matricial em MATLAB®. Módulo 2 (Fundamentos da Programação – Como Programar?): introduz os conceitos de programação no que diz respeito à estrutura e lógica de programação voltada aos recursos do MATLAB®. Módulo 3 (Manipulação de Dados – Como Trabalhar?): apresenta os principais recursos do MATLAB® para a importação, manipulação e exportação

de dados das mais variadas formas. Módulo 4 (Estudo de Casos – Como aplicar na Engenharia?): além de todos os conceitos vistos em módulos anteriores, traz aplicações de ferramentas para a resolução de problemas comuns à Engenharia Química, sempre em casos reais. Todos os módulos são acompanhados de vários exercícios, todos realizados em sala de aula. No fim desta apostila o leitor encontrará um CD com a versão eletrônica deste documento, a versão eletrônica das apresentações em slides exibidas durante as aulas e exercícios em extensão m com gabaritos sugeridos. Ao leitor, desejamos boas vindas e boa Leitura.

ELEMENTUS JR. Consultoria Recife, fevereiro de 2009

SUMÁRIO Módulo 1: Conceitos Básicos –– Como Manipular ? Ambiente de Trabalho Janela Command Window Janela Workspace Janelas Command History e Current Directory Erros Editor de Texto Ajuda

2 3 4 5 5 7 7

Problema 1.1

10

Trabalhando com Matrizes

11 11 15 18 20 21 22

Trabalhando com Escalares Trabalhando com Matrizes Multi-Elementares Operações com Matrizes Indexação de Vetores/Matrizes Criação de Variáveis Análise de Vetores

Problema 1.2

24

Considerações Finais

28

Módulo 2: Fundamentos de Programação –– Como Programar ? Sub-Rotinas como Script Direto – Trabalhando no Editor Expressões Booleanas Estruturas de Seleção

30 31 32

Problema 2.1 Problema 2.2

33 36

Estrutura de Repetição

37

Problema 2.3

38

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

41

Problema 2.4

43

Considerações Finais

46

Módulo 3: Manipulação de Dados –– Como Exibir ? Função de Tratamento de Nome de Arquivos Funções de Importação e Exportação Função de Tratamento Gráficos e Handle Graphics

48 48 50 51

Problema 3.1

53

Considerações Finais

54

Módulo 4: Estudo de Casos CASO 1: Tanque Pulmão (Trabalhando com Estruturas de Repetição) CASO 2: Cálculo da Temperatura Teórica da Chama do Propano (Trabalhando com Estruturas de Repetição) CASO 3: Controladores Automáticos (ajustando Curvas) CASO 4: CSTR Não-Isotérmico (Solução de SEL) CASO 5: Reator CSTR (Trabalhando com EDO) CASO 6: CSTRs em Série (Trabalhando com EDOs) CASO 7: Reator HDT (Trabalhando com EDP) Considerações Finais

56 63 69 71 75 80 83 88

Mód du ulo o 1:

Co onceitos Básic B cos –– Co omo Manipular ?

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r?

Ambiente de Trabalho

® Após a sua inicialização, o MATLAB M exige um determina ado intervalo de temp po para a leitura de seus arqu uivos opera acionais. Durante D essse proces sso o prog grama se encontra ará bloque eado para a quaisqu uer ativida ades. Se seu computador possui p as configura ações mínimas de hardware exigidas pela grama, essse instante e de tempo o não passsará de alg guns segun ndos. versão do prog Dura ante esse processo p u uma mensa agem será á exibida no lado esq querdo da barra b de status indiccando que o software e está inicia alizando, fiigura 1.1.

Figu ura 1.1 –– me ensagem de inicializaçã ão na ba arra de statu us.

Após co oncluir esssa etapa o MATLAB B® exibirá,, no mesm mo local, outra o men nsagem, de essa vez disponibiliza ando-o parra o uso, fiigura 1.2.

Fig gura 1.2 –– mensagem m de d liberação na ba arra de status.

Seu am mbiente de esenvolved dor, ou interface grráfica, é ssubdividida a em cinco o 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 maio or conforto o e praticiidade. Como mostra a a figura a 1.3, a in nterface po ossui quattro barras localizadas l s na parte superior e uma parte e inferior.

2 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r?

Figu ura 1.3 –– inte erface inicia al do MATLA AB®.

A prime eira barra (primeira de d cima para baixo)) se encon ntra a barrra de título os. Nela encontram e os o título o do prog grama. Aba aixo da barra de tíítulos temo os a barra de menuss. Através dela pode emos acesssar todas a as ferrame entas dispo oníveis. Lo ogo abaixo o temos a barra b de fe erramentass e a barra a de endere eços. Na barra b de fe erramentass observam mos atalho os para as principaiss aplicaçõe es do prog grama, já na barra de enderreços, os diretórioss podem sser acessados atravvés de um m sistema de d endereçamento similar s ao do WINDO OWS. Na parte p inferrior da interface enco ontramos a barra de status. Ne ela podemo os saber qual a situa ação de op peração do o programa a. Jane ela Comm mand Wind dow Ainda na n figura 1.3 podemo os visualiz zar quatro janelas dispostas la ado a lado. A janela da direita a é denom minada Com mmand Window, W ou u simplesm mente janela de com mando. Ne ela são executados e s os coma andos prin ncipais pa ara a realização de seus trabalhos. Se S o sistema não estiver e executando uma ativid dade que utilize u toda a sua mem mória, você ê irá encontrar um pro ompt indicando que o program ma aguard da suas in nstruções, figura 1.4 4. Para lim mpa-lá utiliiza o c comando [>> clc].

3 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r?

Figura 1.4 4 –– Comman nd Window.

Jane ela Works space Na parte e superiorr esquerda, figura 1.3 3, temos a janela ressponsável pela mem mória temp porária ““visível”” do programa a, a Workkspace, fig gura 1.5. Sua mem mória é tid da como te emporária uma vez que desligado o p programa, seus dado os serão o perdido os. Nele podemos s enconttrar todo os os dados dispo onibilizado os ao códig go por meio dos com mandos de e atribuiçõe es. Para lim mpalá uttiliza o com mando [>> clear].

Figura a 1.5 –– Work kspace.

4 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? Jane elas Comm mand Histtory e Currrent Direc ctory Abaixo da Worksspace temos duas janelas j divvididas po or meio de e um siste ema de ab bas. A jan nela Comm mand Histo ory, figura 1.6, e a janela Cu urrent Directory, figu ura 1.7. A primeira a é respo onsável po or listar o histórico o de comandos da Command d Window. É subdivid dida por da ata e locad da na mem mória perm manente. A limpeza de d seu hisstórico pod de ser executada com m comand do de righttclick, ou comando c d clique direito de d exe ecutado atrravés do b botão diretto do mou use, emborra não seja aconselhada. Já a segunda a janela, e exibi o dire etório atua al no qual os coman ndos são executado e os, diretório o esse igu ual ao deffinido pela barra de d endere eços. Nela a serão exibidos todos oss arquivos s ou subd diretórios contidos c n diretório escolhid no do, mesmo o que esttes conten nham atrib buições de sistema, oculto o ou somente s leitura.

F Figura 1.6 –– Command History.

Figura 1.7 –– Curren nt Diretory.

Erro os Assim como c todo software e hardwarre, o MATL LAB® e o ccomputado or no qual foi insta alado estã ão sujeitoss à bugs s (erros). Tais erro os podem m ser dese encadeado os por prob blemas de e lógica intterna de programaçã p ão, ou porr erro de operação o do usuário. dos por pro oblemas de e lógica intterna de programaçã ão do Para errros causad softw ware, gera almente erros e em código c Ja ava, ou Ja ava Scriptt, o MATL LAB® compila o messmo erro ““viciando”” a lógica de d execuçção do sofftware. Ne esses caso os é necesssário reinicciar o siste ema. Os erro os causado os por má á operação do usuá ário pode ser de qu uatro tiposs: a. a b b. c c. d d.

Sintaxe; Argume entos; Interrup pção; Memória.

Os erro os de sinta axe ocorre em quando o o usuário insere u um código o não reco onhecido pelo compillador. São o os erros mais simp ples de serem corrig gidos. 5 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? Quando ocorre em, na Co ommand Window W sã ão disponib bilizadas a as informa ações de erro e de sinttaxe, o ele emento cau usador do erro e, se e o código estiver contido num ma função ou o script, um u link que e leva direttamente à linha do có ódigo no qual o erro locado. São exe emplos co omuns: quantidade q e não prroporcional de parê ênteses, víírgulas ou pontos; matrizes m com c eleme entos não discrimina ados; nom mes de funçções digitados errone eamente, dentre d outrros. Os erro os de argu umentos ocorrem o qu uando a quantidade q e ou o tipo de argu umento de e entrada de funções foi mal m inserid do. Por e exemplo, uma dete erminada função re equer três argume entos de entrada e o usuário dispo onibiliza apenas a dois. Ou um ma dada fu unção requ uer númerros reais como c argu umentos de e entrada e o usuário o disponibiliza matrizzes. Os errros de in nterrupção ocorrem m quando o usuárrio interro ompe abru uptamente a compilaçção do cód digo iniciad do. Para ta anto, basta a digitar [>> ctrl + c] durante a compilaçã ão. O MATL LAB® utilizza uma pa arcela da memória m R RAM do co omputador para dos tempo orários. Qu uando a qu uantidade de d informa ações exce ede a locação de dad quan ntidade de e memória disponívell o sistema a entra em m colapso e a compilação é intterrompida a. Dentro desse d seg guimento temos os erros e de m memória. Caso C ocorrra, é necessário qu ue o usuá ário revise e seu códiigo buscan ndo otimiz zar a utilizzação mem mória temporária. Os erross de argum mento e sin ntaxe pode em ser visu ualizados n na figura 1.8.

Figura 1.8 –– Erro os de sintax xe e argume entos.

6 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? Edittor de Texto O editor de textos do MAT TLAB® é uttilizado pa ara criação o de funçõ ões e scrip pts, e com mpilação ap penas de scripts. Sua vantagem em re elação à ja anela Com mmand Wiindow está no fato o da faciliidade na correção dos erros s de digitação. Para a abrir a ja anela de edição e de texto t digite e o comando [>> edit] na Com mmand Wiindow, ace esse Barra a de Menus/Desktop/Editor o ou dê um click duplo em qualq quer arquivvo de exte ensão m.

Figurra 1.9 –– Jane ela de ediçã ão de texto, EDIT.

Como pode p ser visto na figura f 1.9,, todas ass linhas são numerradas ma linha só será co ompilada se, s e auxiliando no controle de compillação. Um erior já tiverr sido. somente se, a linha ante Ajud da Devido à enorme abrangê ência do software nas diverrsas áreas s da ciência, a com mplexidade e de sua utilização torna-se inevitável. Até a ed dição destte documento, o MA ATLAB® po ossui mais de 500 co omandos d distribuídos s em maiss de 40 ca aixas de fe erramentass tornando o-se evidente a impo ossibilidad de de lemb brança e co ompreensã ão de todo os. Sabendo dessa im mpossibilid dade o MA ATLAB® vem v com u um sistem ma de supo orte ao usu uário (HELP) que visa assisti-lo o no que diiz respeito à utilizaçã ão de sua interface e ferramentas.

7 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? O Help pode serr acessado o de duas s formas: por uma janela pró ópria, figurra 1.10, ou através do o prompt da d janela de d comandos, figura 1.11.

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

Figura 1.11 –– Help no o prompt da a janela de comando. c

8 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? Através do prompt, podem mos acessar a biblio oteca do help de fo orma gera al, digitand do o comando [>> help], ou u o conteú údo especcífico de cada assu unto digitando [>> help h “assunto”] como o pode se er visto na a figura 1.11 e figurra 1.12.

Figura 1.12 2 –– Bibliotec ca do Help no n prompt de comando..

e da a janela prrópria do Help H click no n ícone na barrra de Para a exibição ferra amentas. Ela E é subd dividida em m duas jan nelas princcipais. No lado esqu uerdo temo os uma ja anela divid dida em quatro q aba as no qua al o conte eúdo pode e ser busccado atravvés de bib bliotecas (Contents)), indexação de palavras (Index), asso ociação de e caracteres (Search Results) e exemploss demostra ativos (Dem mos). No lado direitto temos a janela responsáv vel pela exibição, e vvia HTML, dos resu ultados doss sistemas de busca, figura 1.13.

9 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r?

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

As demonstrações podem ser s acionad das pelo prompt p de comando, pela interrface gráfica especcífica (jane ela própria) ou pe ela interne et, através s da hom mepage da MATHWO ORKS™™. Em am mbos os casos c o usuário u en ncontrará sintaxes de coman ndos, exem mplos ilustrativos e in ndicações de referên ncias biblio ográficas.

E EXERCÍ ÍCIO AP PLICADO O

Prob blema 1.1

.

a. Durante D o curso voccê fará inúmeros exe ercícios ap plicados. P Para que sejam passsivos de resgate crie c um diretório d de d nome ““CURSO_ _MATLAB”” no ende ereço que se segue: C:\...\Deskktop A pa artir de hoje e esse serrá o seu dirretório de trabalho t du urante as a aulas. b. Descubra, D utilizando os recurso os de ajuda, o que é o comand do ““ODE45 5””. 1 10 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? Trabalhando o com Matrizes M De form ma não co omercial os primeiro os sistema as de com mputação fo oram dese envolvidos com siste ema de con ntagem de ecimal. Tal sistema, usado des sde o berçço da ciên ncia, se mostrou a maneira a mais ad dequada d de represe entar qualquer quan ntidade e, dessa forrma, não se s pensou u inicialme ente em uttilizar qualquer outro o tipo de aritmética a em má áquinas. No N entanto o, a aritm mética decimal não se s adaptou u de forma a otimizada a aos siste emas elétrrico-eletrôn nicos dos circuitos, até então o relativam mente prim mitivos. Ap pós várioss trabalhos de pesq quisa cheg gou-se ao sistema s arritmético mais m adequado, o sisttema aritm mético binário, utilizad do por tod do o mund do. No sis stema deciimal tínham mos que gerar g assem os dez valore es do siste ema (de 0 à 9), dez sinais disttintos que representa já no o binário precisamos p s apenas de d dois (0 e 1). O sisstema biná ário adapto ou-se de forma f extrraordinária a, pois dois tipos de sinais sempre s fo oram fáceis de prod duzir. Quan ndo um sin nal elétrico o era emitid do tínhamo os a representação do d 1, quan ndo não tín nhamos o 0. Com o sistema binário b todas as info ormações eram resu umidas em m um conjunto forma ado por do ois algarissmos. Mas s como seria a melh hor maneirra de orga anizar esse e conjunto? ? Foi preciso uma maneira m que e unisse p praticidade, que implicaria em velocidade e de opera ações, e adaptabilida ade, já que e tínhamos s um novo o sistema de contage em. O sisttema matricial foi a melhor m forma enconttrada para a armazen namento e transmisssão de dados d e o motivo é simples s. As matrrizes estão o sujeitas às à diretrize es básicas s de um esspaço veto orial e com mo tal podííamos apliccar todos os o preceito os desenvo olvidos pela álgebra a analítica. Para prrogramar em e MATLA AB® o us suário terá á que conh hecer algu umas prop priedades da d álgebra a vetorial que q serão mostradas m s ao longo desse módulo. Com mo a matrizz é o elem mento maiss importan nte na programação em m, alguns recu ursos foram m criados para p simplificar a vid da do usuá ário no que e diz respe eito à criaçção de cód digos que utilizem u ma atrizes. Usarem mos o termo o variável de d forma in ntercalada para defin nir as matrizes. balhando com c Esca alares Trab A álgeb bra analíticca classifica escalare es e matrizzes de form ma diferen nte e, consseqüentem mente co om propriedades distintas. Teria então que dese envolvermo os uma fo orma de trrabalhar co om duas plataforma p s? Não. Então E como resolverr esse inccômodo? A idéia foi simples. Basta trattar um escalar como uma ma atriz 1x1, uma u matrizz com um único elem mento ou, informalmente, matrriz de dime ensão nula a. 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 propriedade es de operração matrricial. As exprressões são criadas respeitand r do uma hierarquia de e prioridade es de execcução de operadores o s. Essa hie erarquia po ode ser ressumida segundo a ta abela 1.1.

1 11 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? Operaç ção () ^ / \ * + ņ

Nome Precedência Potência Divisão o Divisão o à esquerd da Multipliccação Soma Subtraçção

Prio oridade 1º 2º 3º 4º 5º 6º 7º

Tabela 1.1 –– Prioridade P de operaç ção.

Para praticar essa hierarq quia de prioridades p s execute os segu uintes comandos no prompt. >> 4 * 2 + 6 ans = 14 >> 4 * 2 + 6 / 3 ans = 10 Dica a: se o com mando a ser s inserido o for idêntico ou sem melhante a outro inserido ante eriormente utilize o Command C History ou u as setass de naveg gação Ļ e Ĺ do seu teclado. >> 4 * (2 + 6) / 3 ans = 10.6 >> 4 * (2 * 6 – 2) / 3 ans = 13.3 >> 4 * (2 * (6 – 2) )) / 3 ans = 10.6 >> 2 ^ 2 1 12 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? ans = 4 >> 2 ^ 2 * 3 ans = 12 >> 2 ^ (2 * 3) ans = 64 Dica a: para inib bir a visuallização do resultado das opera ações insira ‘‘ ; ’’ no fim de cada a comando o. >> 2 / 4 ans = 0.5 >> 2 \ 4 ans = 2 A potên ncia de basse 10 é rep presentada a inserindo o a letra ““e”””” ou ““E”” en ntre a nota ação decim mal e a potê ência da ba ase, sem espaços, e c como mostra a seguirr. >> 3.141e2 3 ans = 314.1

>> 3.141E-2 3 2 ans = 0.03141

Para au uxiliar os cálculos c e compreen nder resulta ados o MA ATLAB® po ossui consstantes num méricas prredefinidass, tabela 1.2. 1 13 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? Constante C e pi i ou j eps realmin realmax Inf NaN

Valor 3.14 415926535 58979...(S) raiz imaginária a( ) prec cisão numé érica relativva men nor número o real maio or número real Infin nito. Ex.: 1//0 Not a Number(não numé érico). Ex.: 0/0

Tab bela 1.2 –– Constantes C s predefinid das.

As consstantes Inff e NaN não n repres sentam valores num méricos em m sua 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 va amos fazer uma brevve revisão sobre aritm mética de ponto flutu uante. A matemática operada por uma máq quina proccessadora é diferentte da mate emática prrocessada por nossa as mentes.. Ambos não n conseg guem qunttificar mate ematicame ente o inffinito e o ínfimo uttilizando de d outros recursos para interrpretá-los, como co onceitos matemático m os. No ca aso dos processad dores lógiccos artificia ais, essa capacidade c e é mais limitada, l p pois sua m memória é mais limita ada. De fo orma gera al, nós pod demos che egar a um m número tão grande ou pequ ueno quan nto nós queiramos, enquanto e a máquina a não. Por essa limittação os processado p ores possu uem um nú úmero máx ximo e mín nimo alcan nçável em seus proccessamento os. Por essas implicações, na aritmética a de d ponto flutuante, o ou aritmétic ca de máq quina, exisstem duas regiões no n qual o sistema de d contagem não varre: v unde erflow e ovverflow. A região o de unde erflow reprresenta va alores que e são muitto próximo os de zero o (positivoss ou nega ativos), ou seja, de valor v abso oluto tão p pequeno que a máq quina não consegue computarr. É o resu ultado de uma opera ação numérica que é muito pe equena para ser reprresentada com a ope eração parra ser ofere ecida dor. Na re egião do overflow o ocorre o o in nverso, nú úmeros qu ue se pelo computad apro oximam do o ““infinito”” não são alcançados a s. É o resultado de uma operração num mérica que é muito grrande para a ser repre esentada com a operração forne ecida pelo computad dor.

Figura 1.14 1 –– Regiões de und derflow e overflow. o

Essas re egiões pod dem ser vissualizadas s na figura 1.14 onde e: Mncc-: máximo número co omputado negativo; mncc-: mínimo número co omputado negativo; n mncc+: mínimo número co omputado positivo; Mncc+: máximo o número computado c o positivo. 1 14 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r?

O forma ato de exibição de números na n tela po ode ser co onfigurado pelo comando form mat. Embora tenha a inúmeros s formatoss, apenass quatro serão s impo ortantes aos nossoss objetivoss imediato os e podem ser exp plorados como c mostra a seguir. >> 0.333333 0 33333 ans = 0.3333 >> 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 000e-001 1 3.33333 format short s >> f >> 0.333333 0 33333 ans = 0.3333

Trab balhando com c Matriizes Multi--Elementa ares Matrizess ou variáveis dessse tipo podem p ser criadas com ou sem incre emento. Sem increm mento será á necessá ário digitar todos os elemento os da matrriz, o que não n ocorre com a cria ação por in ncremento. 1 15 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? Como sabemos, s um matriz pode ser dividida em e elemen ntos de lin nha e ® coluna. No MA ATLAB , pa ara separa ar elemento os em colu una utilizam mos o ““esp paço”” ou ““ , ””. Para separarmoss em linhass utilizamo os o ““ ; ””. Observe O a sseguir. Para a uma matriz ou veto or linha: >> A = [2 4 6] A = 2

4

6

Para a uma matriz ou veto or coluna: >> A = [2;4 4;6] A = 2 4 6 Para a uma matriz ou veto or misto: >> A = [1 2 3;4 5 6;7 6 8 9] A = 1 4 7

2 5 8

3 6 9

Algumas matrizess, de tão utilizadas,, podem ser s criadass com sim mples comandos com mo pode se er observado a seguir. Para a uma matriz Identida ade: >> I = eye( (5) I = 1 0 0

0 1 0

0 0 1

0 0 0

0 0 0

1 16 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? 0 0

0 0

0 0

1 0

0 1

Para a uma matriz Nula: >> Z = zero os(3,2) Z = 0 0 0

0 0 0

Para a uma matriz Unitária a: s(2,3) >> U = ones U = 1 1

1 1

1 1

Para a uma matriz Randôm mica: >> W = rand d(2,3) W = 0.8147 0.9058

0.127 70 0.913 34

0. .6324 0. .0975

A matrizz randômicca retorna um vetor com núme eros aleató órios entre zero e um m. ores/matriz zes) por incremento i o seguimo os a Para criar variávveis (veto segu uinte sintaxxe: nº inicial : incrementto : nº final DIC CA: se o inccremento for f igual a 1, não pre ecisa indicá á-lo. Este tip po de con nfiguração o represen nta a criação de u uma seqüê ência num mérica de valor v inicia al igual ao o nº inicia al, valor final f igual ao nº fin nal e, interrcaladas por p valoress cuja dife erença e igual ao in ncremento o. Observ ve na prátiica a seguir. >> A = 10:1 1:20 A = 1 17 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? 10

19

20

1 11

12

13 3

14

15

16

17

18

>> A = 10:2 2:20 A = 10

1 12

14

16

18

4 8

5 10

20

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

2 4

3 6

Quando o o incremento não é informad do o sistem ma admite como sen ndo o padrrão, ou seja, increme ento de valor 1 (um). Ope erações co om Matrize es Embora a a aritmética de máq quina seja, em parte,, diferente da habitua al, as matrrizes estão o sujeitas as mesm mas 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 -3

5 7

4 9

>> B * C ??? Error using u ==> > mtimes s Inne er matri ix dimens sions mu ust agree. 1 18 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? >> A * B ans = -8 -20 -32

11 1 2 29 4 47

10 22 34

O MAT TLAB® disp põe de outros operadores matemático m os que po odem faciliitar as ope erações ma atriciais como mostra a a prática a seguir. Sejam as a matrizess >> D = [1 2; 2 3 4] D = 1 2 3 4 >> E = [5 6;7 6 8] E = 5 6 7 8 >> D * E ans = 19 43

22 2 5 50

é di iferente e de >> D .* E ans = 5 21

12 1 3 32

>> D / E ans = 3.0000 2.0000

-2.000 00 -1.000 00

1 19 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? é differente de >> D ./ E ans = 0.2000 0.4286

0.333 33 0.500 00

>> D ^ 2 ans = 7 15

10 1 2 22

é di iferente e de >> D .^ 2 ans = 1 9

4 16 1

Inde exação de Vetores/M Matrizes A indexxação é um ma forma de mapea ar os elementos da m matriz que e são úteiss à operaçção. Existe em duas formas f de indexação o: uni para amétrica e poli para amétrica. A uni paramétrica p a consiste apenas na n indicaçã ão da possição de fo orma ar, ou seja,, através de um único o parâmetro como mostra m a prá ática abaix xo. linea Seja a matriz m

>> A(1) A ans = 1 >> A(3) A ans = 7 2 20 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r?

>> A(5) A ans = 5

Na poli paramétrrica temoss a indica ação de duas d coord denadas do(s) d elem mento(s), o primeiro lhe l informa a a linha no n qual esttá contido, o segundo lhe inforrma a colun na. Veja a prática a seguir, s ainda com a mesma m ma atriz A. >> A(1,1) A ans = 1

>> A(2,1) A ans = 4

>> A(2,2) A ans = 5

Cria ação de Va ariáveis Variável é um terrmo utilizado interna amente pello MATLAB® para definir objetos matem máticos de forma ge eral como, por exem mplo, escalares, matrrizes, imag gens, sonss, células, dentre d outrros. A criaçã ão de variá áveis é normalizada de d acordo com a sinttaxe a seguir.

e o nome e da variável fica a critério o do usu uário, emb bora não seja onde reco omendado a utilizaçã ão de nom mes comp plexos. O nome dass variáveis não pode erá ser inicciado por números. n Exemplo os de cria ação de va ariáveis po odem ser observado os na prátiica a segu uir. 2 21 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? >> var v = [1: :5; 1:2:1 10] var = 1 1

2 3

3 5

4 7

5 9

>> var v = cos s(pi) var = -1 >> [zero,pol lo,ganho] = resid due([1],[1 1]) zero o = 1 polo o = -1 ganh ho = []

Análise de Ve etores Em alg guns caso os é nece essário faz zer um estudo e quantitativo e/ou dades dass matrizes s ou parte e delas. E Esses esttudos qualitativo dass propried pode em ser feitos atravé és de inúm meros com mandos. Alguns A delles podem m ser obse ervados na a prática a seguir. a o número o de eleme entos: Para >> numel(A) n ans = 6

Para a análise de dimensõ ões: >> size(A) s ans = 3

2

2 22 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r?

Para a o comprim mento ou vetor v máximo: >> length(A) l ans = 3

Para a o número o de dimen nsões da matriz: m >> ndims(A) n ans = 2

Para a a diagona al da matriiz: >> diag(A) d ans = 1 5

Para a a matriz triangular t i inferior: >> tril(A) t ans = 1 4 7

0 5 8

Para a uma matriz triangular superior: >> triu(A) t ans = 1 0 0

2 5 0

2 23 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r?

E EXERCÍ ÍCIO AP PLICADO O

Prob blema 1.2

.

Uma a grande fo ornalha ind dustrial é suportada s por p uma lo onga colun na de refratário, com 1 m porr 1 m de lado. Durrante a op peração em condiçõ ões de regime estacionário, a instalaçã ão é de ta al forma que três su uperfícies da coluna a são man ntidas a 500 0 K, enqua anto a outrra é expostta a uma corrente c de e ar para a qual T’ = 300 K e h = 10 W/m W 2.K. Utilizando um ma rede de d malha ccom ǻx = ǻy = 0,25 5 m, de terrmine a disstribuição de temperratura bidim mensional na coluna aea taxa de calor para a co orrente de ar por un nidade de comprime ento da coluna. (Incrropera et al, a pág. 144 4)

Con nsideraçõe es: 1. 1 2 2. 3 3. 4 4.

Regime e estacioná ário. Conduçção bidimensional. Propried dades constantes. Sem ge eração interna de calo or.

Aná álise: Redu ução da rede de 12 2 pontos nodais n parra 8 atravvés do eix xo de sime etria. Dessa form D ma, utilizando as equações de diferençass finitas (nã ão-estendidas), os balanços de e energia para p cada nó são dad dos como: s: interrnos não-simétricos Nó 1: 1 T2 + T3 + 1000 –– 4T1 = 0 2 24 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? Nó 3: 3 T1 + T4 + T5 + 500 –– 4T3 = 0 Nó 5: 5 T3 + T6 + T7 + 500 –– 4T5 = 0 interrnos simé étricos: Nó 2: 2 2T1 + T4 + 500 –– 4T T2 = 0 Nó 4: 4 T2 + 2T3 + T6 –– 4T4 = 0 Nó 6: 6 T4+ 2T5 + T8 –– 4T6 = 0 s de superfície plana: Nó 7: 7 2T5 + T8 + 2000 –– 9T7 = 0 Nó 8: 8 2T1 + T4 + 500 –– 9T T8 = 0 Reorganizando o e agrupa ando as eq quações temos:

Na forma f matrricial temoss:

Para re esolver essse proble ema usare emos a técnica t da a inversão o de matrrizes. [A] . [T] = [C] [A]-1 . [A] . [T] = [A]-1 . [C] [I] . [T] [ = [A]-1 . [C] [T] = [A]-1 . [C] Primeiro o criamos a matriz de coeficientes e constantes c s. Em linha de comando terem mos >> A = [-4 1 1 0 0 0 0 0;... 2 -4 4 0 1 0 0 0 0;... 2 25 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r? 1 0 0 0 0 0

0 1 0 0 0 0

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

A = 1 -4 4 0 1 0 0 0 0

-4 2 1 0 0 0 0 0

1 0 -4 2 1 0 0 0

0 1 1 -4 0 1 0 0

0 0 1 0 -4 2 2 0

0 0 0 1 1 -4 0 2

0 0 0 0 1 0 -9 2

0 0 0 0 0 1 1 -9

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

Em seguida s multiplicamo os pela ma atriz de con nstantes >> T = inv(A A)*C T = 48 89.3047 48 85.1538 47 72.0651 46 62.0058 43 36.9498 41 18.7393 35 56.9946 33 39.0520

Os resu ultados po odem ser interpreta ados considerando cada linha a da matrriz T como o a temperratura fina al de cada nó corresspondente ao númerro da linha a. Dessa forma, f na linha 1 te eremos a temperatu ura do nó 1, na linha 5 terem mos a temperatura do d nó 5 e assim a suce essivamentte como mostra abaix xo.

2 26 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r?

2 27 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 1: Con nceitos Básicos B –– Como Manipular M r?

C Conside eraçõe es Finais

1 Explora 1. ação do am mbiente de esenvolved dor do softw ware; 2 Organizzação na projeção, 2. p e execução e armazenagem de p projetos; 3 Em casso de dúvid 3. da consulte e: 1º - HEL LP; 2º - Ou utras Fonte es; 4 Exporta 4. ação da lóg gica matriccial fora do ambiente MATLAB® ®;

2 28 ELEM MENTUSJR.C Consultoria˜PTCC 

Mód du ulo o2 2:

F dame Fund entos de Progr P ramaçção –– Co omo Prog grama ar ?

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ?

Sub b-Rotinas s como Script S Diireto –– Trrabalhan ndo no Editor

Durante e este módulo verem mos algun ns conceito os de pro ogramação que nos auxiliarão nas ativid dades cotiidianas de e um programador. A Alguns de esses concceitos pod dem ser tomados de forma geral pa ara qualqu uer platafo orma enqu uanto outro os serão específicos pra o MAT TLAB®. Nossos trabalhoss terão iníccio no editor de texxto do sofftware vistto no dulo anterio or. Para que q os trabalhos sejjam desen nvolvidos d de forma mais mód profiissional fa aremos algumas co onsideraçõ ões sobre o desen nvolvimento o da estru utura de um u program ma em linha e sua disposição o no que d diz respeitto ao ende ereçamentto. a. a b b. c c. d d. e e.

Inicie se eu “.m” sem mpre com um cabeça alho; Não ultrrapasse o limite de im mpressão; Utilize diretórios d d distintos pa ara projetos s distintos;; Utilize o menos po ossível a memória m fix xa. Utilize a RAM (tem mporária); Comentte o máxim mo possíve el seu coma ando ou co onjunto de comandos s.

A consideração (a a) deve ga arantir ao usuário um ma informação resumida das funcionalidades, lim mitações e autoria do d código.. Um exem mplo pode e ser visua alizado na figura 2.1.

Figura 2.1 –– Exemplo de cabeçalh ho de início de código.

A consid deração (b b) permite que, numa a eventual impressão o, o código o seja exibido em su ua estrutura originall. A (c) ga arante que e funções ou scriptts de mesmos nom mes não sejam s mottivos de conflitos lógicos l ou u enganos s de cham madas. Oss cálculos e as inform mações gerradas dura ante e com mpilação po odem 3 30 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? ser armazenad a das nas memórias m fixa e temp porária. A utilização da fixa im mplica num m registro de informações no disco rígido de se eu computtador. Com mo a quan ntidade de e manipula ações mattemáticas é grande, a quantid dade de vezes v que se “risca”” o HD tam mbém é, diminuindo d o a vida útil ú do messmo. Por esse motivo é acon nselhável utilizar o mínimo m po ossível a memória m ffixa segundo a conssideração (d). ( Não se erá raro o caso em que q o usuá ário estará em um có ódigo com mais de cem linha as de com mandos. Será que ao a terminá á-lo lembra ará a funccionalidade e de todo os? E, se e lembrar,, por qua anto temp po guardará a inforrmação consigo? Ima agine agorra a situaçã ão em voccê está lendo o códig go de outro o usuário.. Não serria mais fácil f enten ndê-lo se o mesmo estiver com inforrmações que indique e sua funccionalidade e? Para faccilitar a leiitura do có ódigo de comandos c por parte e do usuário autor ou o outro usuário u é extremam mente reco omendado a utilizaçã ão de com mentários in ndicando a funcionalidade de cada comando ou conjunto de e comando os segundo o a conside eração (e). No MATL LAB® os comentário c os são iniciados sem mpre pelo símbolo s (% %) como m mostra o trrecho retira ado de um m código co omo exemp plo. %%%%%%%%%% Declara ação de Variávei V is %%%%%% %%%%%%% R = 2; Q = 600,5; T = 575;

% taxa de d reaçã ão % v vazão % tempera atura

%% Fim da Declaraç D ção das Variávei V is %%%%%% %%%%%%%% %%%%

Exp pressões s Booleanas Da form ma mais sim mples pode emos dizerr que as exxpressões booleanas s são regra as estabe elecidas para p definiir, simplific car e ma anipular fu unções lóg gicas base eadas em afirmações a s que são verdadeira v as ou falsas. Indepen ndente da simbologiia utilizada a na interfface usuá ário-máquin na, a dição de verdadeiro o ou falso o, internam mente à máquina, m é interpre etada cond segu undo o recconhecime ento de dois caracterres: 0 (zerro) e 1 (um m). No cas so do MAT TLAB®, zerro implica numa n cond dição falsa a, vazia, nu ula ou nil, a ao contrárrio do um que q está re elacionado o à uma condição verrdadeira. Os símbolos de teste e op peradores booleano os podem ser resum midos pela tabela 2.1 e tabe ela 2.2, re espectivam mente. Embora posssua simbo ologia distin nta, na ma aioria dos casos, a lógica de tais opera adores é e encontrada a em qualquer plataforma de programaç p ção. Símbolo == ~= < > =

Teste Igual Diferente Menorr que Maior que Menorr ou igual Maior ou igual

Ex xemplo A == = B (A igu ual a B) A ~= ~ B (A differente de B) A < B (A men nor que B)) A > B (A maiior que B) A = > B (A me enor ou igu ual a B)

Tabela 2.1 –– Testte de expres ssões boole eanas.

3 31 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? Símbolo & |

Opera ador E OU U

Exemplo de C Composição o A & B (A e B verdadeiros s) A | B (A ou B vverdadeiros s)

Tabela 2.2 2 –– Operad dores de exp pressões bo ooleanas.

Além desses clá ássicos tesstes e op peradores booleanoss o MATL LAB® dispo onibiliza outros o ope eradores que pode em simplifficar, em alguns ca asos, redu uzindo a qu uantidade de coman ndos a serrem digitad dos. São cconhecidas s, em alguns casos como c funçõ ões boolea anas matric ciais, pois são aplica adas a mattrizes e nã ão a “escala ares”. As mais m imporrtantes pod dem ser ob bservadas na tabela 2.3. Função F isem mpt iseq qual isnu umeric isch har

Teste reto orna verdad deiro se matriz é vazia as matrrizes forem m numerica amente iguais matriz é numérica a matriz é alfanumé érica

Exemplo o ise empt(M) ise equal(M) isn numeric(M)) iscchar(M)

Tabe ela 2.3 –– Fun nções boole eanas matric ciais.

Estruturas de d Seleç ção Como o próprio nome n já diz, d a estru utura de seleção s tem m a funçã ão de selecionar um dado ou conjunto de d dados segundo s uma proprie edade inerrente ao mesmo m ou selecionarr uma funçção a ser executada. e O MATLA AB® possui dois tiposs de estrruturas de e seleção: if/elseif/e else, e switch/case s e/otherwise e. O prim meiro é com mum em outras o lingu uagens de programa ação. Tais estruturas s são implementadass utilizand do as expressões booleanas b descritas anteriormente. Sua estrutura e o significcado lógico o de sua sintaxe são exibidos n na figura 2.2.

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

3 32 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? A aplica ação desse e tipo de estrutura e pode p ser ilustrada nos exemplos a segu uir. Para exxecutar os scripts pre essione o botão F5 ou o clique no botão

.

load d DadosE Estrutura aDeSelec cao1 % Carrega os o dados do HD if A == B respost ta = 'A = B' eif A == = F else respost ta = 'A = F' else e respost ta = 'A desconhe d ecido' end load d DadosE Estrutura aDeSelec cao1 % Carrega os o dados do HD if E == G respost ta = 'E = G' else eif E == = C respost ta = 'E e C são chars.' else e respost ta = 'E não n enco ontrado.' end

E EXERCÍ ÍCIO AP PLICADO O

Prob blema 2.1

.

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

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

3 33 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? Um doss sinais reccebidos pelo operado or é o da te emperatura a no interio or do Leito o (termopa ar 12). Tal temperatu ura não po ode excede er 1200 ºC C. Crie partte do códig go do supe ervisório re esponsáve el pelas aç ções acima a. (Caso re eal: LACO 2007 “MO ODIFICADO O”). Consstruir um código c com m os seguin ntes objetiv vos: 1. Confirm 1 mação do sinal recebiido; 2 Análise do sinal re 2. ecebido e atuações. a

%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % O Script "EstruturaD " DeSelecao2" " tem o objetivo de iniciar o leitor na % % % est trutura de seleção (i if-elseif-e else). % % % % Dat ta de criaç ção: 15 de setembro de d 2008. % % Dat ta da últim ma atualiza ação: 15 de e setembro de 2008. % % Cri iado e atua alizado por r: Phillipi i Rodrigo de Oliveira souza. %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% clc;c clear sinal l = 'SS'; sinal l = 1201;

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

%%%%% % confirmaç ção do sina al recebido o %%%%% if si inal == 'SS S' n num_protc_s seg = 1378; ; % nº protc seg a ser gera ado e errordlg('F Falha de co omunicação com Termopar 12.','ERRO') else n 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 1200 n num_protc_s seg = 2379; ; % nº protc seg a ser gera ado w warndlg('Te emperatura do leito a acima do permitido.','PERIGO') end

A fim de d explorar o proble ema e obtter diferentes resposstas, proponha 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. O diag grama a seguir re esume de forma simplificada s a o fluxo o de dade, o sup pervisório e operador. inforrmações entre a unid

3 34 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ?

Além da d estrutu ura if/else eif/else, mais m comum em linguagem m de prog gramação, o MAT TLAB® offerece outra estrrutura de e seleção o, a switcch/case/otherwise. Ao A contrário da estru utura anterrior, essa está limita ada à cond dição de ig gualdade e desiguald dade, veja a seguir na a figura 2.3 3.

Figura a 2.2 –– Estru utura e sinta axe lógica da a estrutura de d seleção s switch.

A aplica ação dessse tipo de estrutura pode ser ilustrada no exemp plo a segu uir. clea ar;clc A = 2; swit tch A case e 1 var = ‘Nú úmero 1.‘ case e 2 var = ‘Nú úmero 2.‘ case e 3 var = ‘Nú úmero 3.‘

3 35 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? othe erwise var = ‘Nú úmero não definido. .‘ end

E EXERCÍ ÍCIO AP PLICADO O

Prob blema 2.2

.

Resolva a o exerccício da estrutura de seleçção (if-elseif-else), visto ante eriormente,, com a estrutura a (switch-case-otherrwise). De essa vez, tal temp peratura não n pode e ser infe erior a 900 9 ºC.(C Caso real: LACO 2007 “MO ODIFICADO O”).

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

Consstruir um código c com m os seguin ntes objetiv vos: 1. Confirm 1 mação do sinal recebiido; 2 Análise do sinal re 2. ecebido e atuações. a %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % O Script "EstruturaD " DeSelecao3" " tem o objetivo de iniciar o leitor na % % % est trutura de seleção (s switch-case e-otherwise). % % % % Dat ta de criaç ção: 21 de setembro de d 2008. % % Dat ta da últim ma atualiza ação: 21 de e setembro de 2008. % % Cri iado e atua alizado por r: Phillipi i Rodrigo de Oliveira souza. %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% clc;c clear % elimina o sinal an nterior sinal l = 'SS'; % não rece ebimento do o sinal: SS - sem sinal sinal l = 889; % recebimen nto do sina al de temp. em ºC(a cada insta ante) %%%%% % confirmaç ção do sina al recebido o %%%%% switc ch sinal case 'SS' % nº protc seg a ser gera n num_protc_s seg = 1378; ; ado e errordlg('F Falha de co omunicação com Termopar 12.','ERRO') other rwise n num_protc_s seg = 1379; ; ado % nº protc seg a ser gera end %%%%% % análise do d sinal re ecebido e atuações a %%%%%

3 36 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? %$$$$ $$$$$$$$$$ POR QUE A ESTRUTURA ABAIXO Nà ÃO É EXECUTADA ? $$$$$$$$$$$$$$% switc ch sinal case sinal >= 900 9 n num_protc_s seg = 2378; ; % nº protc seg a ser gera ado case sinal < 90 00 n num_protc_s seg = 2379; ; ado % nº protc seg a ser gera w warndlg('Te emperatura do leito a abaixo do permitido.','PERIGO') other rwise . ... end

A fim de d explorar o proble ema e obtter diferentes resposstas, proponha os para a variável v “sinal”. valores distinto DICA A 1: Para eliminar e “ssinal” come ente sua attribuição: CRTL C + R. DICA A 2: Para “descomen “ ntar”: CRT TL + T. OBS SERVAÇÃ ÃO: a estru utura switch/case/oth herwise não pode se er utilizada com exprressões bo ooleanas de d desigua aldade. Ob bserve a seguir s um código es scrito em estrutura e d seleção de o switch/case/otherwiise com a utilização de expres ssões booleanas de desigualda d ade.

Estrutura de e Repetiç ção Como o próprio nome já no os dá uma idéia, a esstrutura de e repetição o tem o ob bjetivo de repetir r um determinado comand do seguind do um crité ério predeffinido pelo programa ador. Esse tipo de esstrutura ev vita que o usuário do o código tenha esma tarefa a inúmerass vezes. Mas, M como a máquina sabe quando que repetir me para ar de repettir o coman ndo? O critério de pa arada é ba aseado na seguinte idéia: toda a região forra do domíínio de rep petição é co onsiderada a como reg gião de parrada, ou seja, s caso a expresssão de re epetição na n seja ma ais verdad deira, o có ódigo interrrompe o lo oop. 3 37 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? Esse tipo t de estrutura utiliza expressões e s booleanas desc critas ante eriormente e trabalha a com retorno de execução e d funçõess. Neste caso, de c qualquer retorrno diferen nte de 0 (zero) ( é considerad c o como vverdadeiro, e 0 ® (zero o) é conssiderado fa also. O MATLAB M trabalha com c duas estruturas de repe etição, a “fo or” e a “while”. A estruttura “for” repete r a execução e dos d coman ndos enquanto para todo valor de sua variável v co omeçando e termina ando com valores prredefinidos s e a passsos increm mentados por p um valo or também m predefinid do. Na figu ura 2.4 tem mos a estru utura de siintaxe e su ua interpre etação. Em m seguida acompanh he um exemplo de aplicação. a

Figurra 2.4 –– Estrrutura e sintaxe lógica da d estrutura a de repetiçã ão for.

for x = 1:15 y = sin( (x*pi) end

+ exp(x*2); ;

Observe e que amb bas variáve eis são mu ultidimensio onais (veto ores). Esse e tipo de estrutura e po ode ser utilizado de forma f enca adeada.

E EXERCÍ ÍCIO AP PLICADO O

Prob blema 2.3

.

No prob blema 1.1 foi discutid do o perfil de tempe eratura sob bre a superfície de uma u placa onde o a forma matriciial do siste ema de equ uações foi dado por

3 38 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ?

Utilizand do a estruttura de rep petição (for) crie a matriz m de co oeficientes com a me enor quanttidade de linhas que você pude er. (Incrope era et al, pág. 144). % cr riação da diagonal principal l for i = 1:1:6 6 for j = 1:1:6 1 if i == j A A(i,j) = -4; end end end for i = 7:1:8 8 for j = 7:1:8 7 if i == j A A(i,j) = -9; end end

end

% cr riação da primeira diagonal superior principal l for i = 1:2:8 8 for j = 1:1:8 1 if i == j-1 A A(i,j) = 1; 1 end end

end

% cr riação da segunda diagonal d s superior principal p for i = 1:1:8 8 for j = 1:1:8 1 if i == j-2 A A(i,j) = 1; 1 end end

end

3 39 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? % cr riação da primeira diagonal inferior principal l for i = 1:1:8 8 for j = 1:2:8 1 if i == j+1 A A(i,j) = 2; 2 end end

end

% cr riação da segunda diagonal d i inferior principal p for i = 1:1:6 6 for j = 1:1:6 1 if i == j+2 A A(i,j) = 1; 1 end end end for i = 7:1:8 8 for j = 1:1:8 1 if i == j+2 A A(i,j) = 2; 2 end end

end

A estru utura “whille” repete a execução dos comandoss enquanto o as exprressões de e teste, ou expressõe es boolean nas, retorn nam condiçção verdad deira. Na figura f 2.5 te emos a esstrutura de sintaxe e sua s interprretação. Em m seguida a

Figurra 2.5 –– Estrrutura e sintaxe lógica da d estrutura a de repetiçã ão for. m = 2; for I =1:10 for J = 1:10 while I < m if I == J A(I,J) = 2; elseif ab bs(I-J) == = 1 A(I,J) = -1; else A(I,J) = 0; end I = I + 1; 1

4 40 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? end

end

end

Assim como c a anterior, a essa estruttura pode ser utilizzada de fo orma enca adeada. Sub-Rotinas como c Fun nções (Tra abalhando na janela a de comandos) A execu ução de um m código pelo p simple es script é uma forma provisória de testa armos sua a aplicação o. Embora a seja, na maioria dos d casos, a forma mais simp ples de exxecução de e comando os, não é a forma mais m profisssional. Iss so se deve e ao incôm modo de abrir a o código todas as vezes que precissarmos de e sua depu uração, exxpondo-o aos a erros de d manipullação, além m da “polu uição visua al” ao qual o usuário é exposto o. Existe outra form ma de compilação mais proffissional. Essa form ma é eada na estrutura e d denominad da functio on, ou sim mplesmente função. De base form ma mais sim mplificada podemos definir um ma função como uma a seqüência de comandos que e: 1. 1 2 2. 3 3. 4 4. 5 5.

Aceita parâmetros p s de entrad da; Retorna a parâmetrros de saíd da; Utiliza espaço e de memória próprio p parra armazen nar vaiáveiis locais; Pode se er chamada por outra as funções s; Seu texxto de ca abeça pode ser exib bido na ja anela de comando pelo comand do help. O MATL LAB® recon nhece internamente três classe es de funçõ ões:

1 built-in: função in 1. nterna. Esttá impleme entada em m seu núcle eo e não é ser visualizá ável (Ex.: sin); s 2 MATLA 2. AB ® m-file e: função implementada em m-file. m É vvisível e ab berto para alterações (E Ex.: polyfit)); 3 User m-file: 3. m funçã ão criada pelo usuárrio. Você pode p imple ementar novos n ® recursos no seu MATLAB M criando funções para a áreas esspecíficas. o coman ndos whic ch para achar a seu diretório, e open para Utilize os visua alizar o código. As funçções aceitam múlttiplos parâ âmetros de d entrada e retorrnam múlttiplos parâ âmetros de e saída (e está é um ma caracte erística mu uito peculiar e extre emamente e prática do o MATLAB®). A sintaxxe básica de d definição de funçõ ões segue o formato a seguir:

4 41 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? onde e: x x x x x

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

OBS SERVAÇÃ Ã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 decla arado, a função f retornará apenas parâme etros forneccidos; 2 com ma 2. ais parâme etros que o declarad do, o MAT TLAB® acu usará erro (Too many ou utput argum ments – pa arâmetros de saída em e excessso); 3 se nenh 3. hum parâm metro for in ndicado, fu unção reto ornará ape enas o valo or do primeiro o parâmetrro. A seguir temos um m exemplo o de criação o de uma função: f func ction [s,v v] = muv(s s0, v0, a, t) s = s0 +v0*t + a/2*t.^ ^2; v = v0 + a*t;

A seguir temos o exemplo o de como o uma fun nção deve ser cham mada, sempre na janela de com mandos. >> [s,v] = mu uv(10, 2, 3.5, 60)

A: DICA 1. O núme 1 ero de arqu uivos deve ser igual ao a número o de funçõe es; 2 Utilize fu 2. unções differentes pa ara objetivo os diferenttes; OBS SERVAÇÃ ÃO: Os com mandos na argin (núm mero de arrgumentoss de entrad da) e narg gout (núm mero de arrgumentoss de saída a) podem ser usado os combinados com estruturass condicion nais de pro ogramação o para elim minar bugs de operad dor. Como já á foi dito, o MATLAB B® armazena suas va ariáveis em m uma áre ea da mem mória que pode p ser visualizada v a pelo work kspace. Ass funções trabalham com variá áveis loca ais, isto é, é ficam arrmazenada as em áre eas de me emória pró ópria, independente do worksp pace. Os escopos das variávveis do w workspace e as áveis locaiss podem ser s definida as da segu uinte forma a: variá x x

Variáveis do workkspace não o são recon nhecidas dentro d das funções; Variáveis locais de e funções não são re econhecida as no MAT TLAB®.

4 42 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? Parâme etros de en ntrada e saída são a forma (in nterface) m mais adequada ® para a troca de dados enttre o worksspace do MATLAB M e ambienttes interno os de funçções. Outra a forma de e compartilhamento de d troca de e dados en ntre works space e fu unções são as vaiá áveis glob bais. Variiáveis cria adas no w workspace são reco onhecidas por qualqu uer função o que explicite sua ca ategoria co omo globa al em seu código. Para de eclarar um ma variável como glo obal basta a escreverr, no códig go, a palavra global seguida da(s) variávvel(is) a se erem declaradas. DICA A: como as variáveiss globais podem p ser reconhecidas por qu ualquer fun nção, evite e declarar variáveis com c nomes de fácil conflito c como, “x”, ”m m” ou ”i”. Utilize U os comandos whos, w clea ar e isglob bal para ge erenciar va ariáveis glo obais.

E EXERCÍ ÍCIO AP PLICADO O Prob blema 2.4

.

A reduçção do FeS S2 a FeS é processada em um reator tub bular que opera o em reator de leito transsportado sob s escoamento ide eal, a 495°°C e 1 atm. A transsferência de d massa externa é desprezíve el e granullometria e distribuiçã ão de temp pos de residência da as partícula as no reato or são forne ecidas na ttabela aba aixo: RA AIO (µm) % PESO șR(s)

0,05 5 0,10 0 84 4

0,10 0,30 66

0,15 0 0 0,40 5 57

0,20 0,20 45

Dados: k = 0,0 019 cm/min n; DH2/FeS = 3,6.10-6 cm2/s; kmH2 = 7,29.1 104 cm/s. DIDO: Deciidir que eta apa ou etapas são co ontroladora as. PED Solu ução Analítica

Cálcculo das re esistências: 4 43 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? 1

RTM

kH 2 2

Ro R 2 .k

RRQ

R DIF

1 1,37.10 5 s / cm 4 7,29.10 2

Ro 2 Ro .k 4

Ro ( Ro  R ) R.D H 2 / FeS F

4 4 x 60 1266,31.103 s / cm 3 k 1,9.10

R o ( R o  R o / 2) Ro . D H 2 / FeS 2

Ro / 2

2

Ro

Ro . D H 2 / FeSS 2

D H 2 / FeSS

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 DH 2 / FwS 3,6.10 6

5,555 s / cm c

Com mo Rrq >> > Rdif >> Rtm, a etapa e controladora é a reaçã ão química a na supe erfície do sólido. s O proble ema acima a pode serr disposto em e MATLA AB® da seg guinte form ma: func ction [Res sp] = redu ucao1(k,D_ _H2_FeS,km m_H2,R) % Cá álculo das s Resistên ncias % Rtm = 1/km_H2 2; Rrq = 4/k; Rdif f = (R*1e-4) / D_H2 2_FeS; max_ _Rdif = ma ax(Rdif); % raio máximo m univ versal = [Rtm Rrq max_Rdif]; m ; % concat tenação da as resistê ências maio or = max(u universal); % maior valor ent tre as res sistências s % Ex xibição da as Respost ta dado um m critério o condicio onal % if m maior == universal( u (1) Resp = 'R Resistênci ia à Trans sferência de Massa. .'; else eif maior == univer rsal(2) Resp = 'R Resistênci ia à Reaçã ão Química a.'; else eif maior == univer rsal(3) Resp = 'R Resistênci ia à Difus são na Cam mada de Ci inzas.'; end

Ou aind da, com a utilização u d múltipla de as funções:: func ction [Res sp] = redu ucao2(D1,D D2,D3,D4)

4 44 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ? % De eclaração de Variáv veis Globa ais % glob bal

k D_H H2_FeS km_ _H2 R Rtm Rrq Rdif

% At tribuição de Valore es às Vari iáveis % k = D1; D_H2 2_FeS = D2 2; km_H H2 = D3; R = D4; % Ch hamada de funções auxiliares a s ou Sub-R Rotinas % res_ _tm % res sistência à transfe erência de e massa res_ _rq % res sistência à reação química res_ _dif % res sistência à difusão o na camad da de cinz zas max_ _Rdif = ma ax(Rdif); % raio máximo m univ versal = [Rtm Rrq max_Rdif]; m ; % concat tenação da as resistê ências maio or = max(u universal); % maior valor ent tre as res sistências s % Ex xibição da as Respost ta dado um m critério o condicio onal % if m maior == universal( u (1) Resp = 'R Resistênci ia à Trans sferência de Massa. .'; else eif maior == univer rsal(2) Resp = 'R Resistênci ia à Reaçã ão Química a.'; else eif maior == univer rsal(3) Resp = 'R Resistênci ia à Difus são na Cam mada de Ci inzas.'; end

Onde as sub-rrotinas res_ _tm, res_rq q e res_diff são, respe ectivamente: func ction res_ _tm glob bal km_H2 Rtm % dec claração de d variáve eis globai is Rtm = 1/km_H2 2; % cálcu ulo da rsi istência func ction res_ _rq glob bal k Rrq % declara ação de va ariáveis globais g Rrq = 4/k; % cálculo da d rsistên ncia func ction res_ _dif glob bal D_H2_F FeS R Rdif f % declar ração de variáveis v globais Rdif f = R / D_ _H2_FeS; % cálculo da rsistê ência

4 45 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 2: Fun ndamentoss de Prog gramação –– Como Programa ar ?

C Conside eraçõe es Finais

1 Criação 1. o de um ca abeçalho in nformativo; 2 Comen 2. nte o máxim mo possíve el o código o; 3 Utilize o mínimo possível 3. p a memória fixa; f 4 Use fun 4. nções distintas para finalidades s distintas; 5 O melh 5. hor código é o menorr e mais rápido;

4 46 ELEM MENTUSJR.C Consultoria˜PTCC 

Mód du ulo o3 3:

M ipulaçção de Mani d Dados D s –– C Como o Tra abalh har ?

Módu ulo 3: Man nipulação o de Dado os –– Com mo Traba alhar ? Fun nção de Tratamen T nto de Nome de Arquivos A s Na gran nde maioria dos cassos, os da ados nece essários à execução o das sub--rotinas nã ão se encontram disp poníveis de e forma exxplícita. Alg gumas vez zes é nece essário um m tratamento prévio de d determiinadas info ormações para garan ntir a compilação de e códigos. Da mesma a forma qu ue importa ar os dadoss, é importtante tamb bém exporrtar. Embo ora o MATL LAB® ofere eça diversa as formas de importtação man nipulação e exportaçção de dad dos, verem mos apena as as maiss importanttes à nosssa área. Inicialmente traba alharemos com as fu unções de tratamentto de nom me de uivos, seguido por funções de exporttação e importação i o, funções s de arqu trata amento dad dos e por último, ú Han ndle Graph hics. filep parts: retorrna informa ação do arrquivo com mo caminho o, nome e extensão.. Sua sinta axe e exem mplo de aplicação podem ser visualizadoss a seguir.

Fun nções de e Importa ação e Ex xportaçã ão

dlmrread: lê um ma matriz de d um arquivo ASCII.

dlmw write: gravva uma ma atriz de um m arquivo ASCII. A

4 48 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 3: Man nipulação o de Dado os –– Com mo Traba alhar ? load d: lê variávveis do tipo o “.mat” (formato biná ário proprie etário).

save e: grava va ariáveis do o tipo “.matt”.

Outras funções de impo ortação e exportação, assim m como suas resp pectivas de escrições podem p ser encontradas na tabe ela 3.1.

Exteensão Descrição D o

Fu unção

Retorn no

MATT CSV DAT DLM TAB XLS

Fo ormatoMA ATLAB N Nºseparado spor‘‘,’’ Teextoformattado N Númerosde limitados N Númerostab bulados PlanilhadoM MSͲExcel

loaad cvvsread im mportdata dlmread dlmread xlssread

WK1 1

PlanilhadoLLotus123

wkk1read

CDF** FITS**

CommonDataFormat C FllexibleImag geTransporrt Syystem H Hierarchical dataForma at Fo ormatoAVI(animação)) Fo ormatoBM MP Fo ormatoJPEG Fo ormatoGIF F Fo ormato Fo ormatoXDW W Fo ormatoCUR R Fo ormatoICO O Fo ormatoRASS(rasterSum m) Fo ormatoPBM M Fo ormatoPGM M Fo ormatoPPM M Fo ormatoAU U(áudioSun n) Fo ormatoSND(áudioSu un) Fo ormatoWA AV(áudioMSS)

cd dfread fittsread

Variáveissnoarquivo o Matrizn numérica Matrizn numérica Matrizn numérica Matrizn numérica Matrizn numéricaeccellͲ array Matrizn numéricaeccellͲ array cellͲarraayeregistro oCDF Formato oFTIS

hd dfread avviread

Formato oHDF Formato oMATLABm movie

im mread

Matrizessdecores(ttrue color)eíndice (mapeam mento)

au uread

Dadosdefreqüênciia

waavread

Dadosdefreqüênciia

HDF** AVI BMP P JPEG G GIF TIFF XDW W CUR ICO RAS PBM M PGM M PPM AU SND WAV V

T Tabela 3.1 – funções ge erais para im mportação e exportação o de dados.(*) Padrão de d arquivo os para troc ca de dados criado pela a NASA.

4 49 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 3: Man nipulação o de Dado os –– Com mo Traba alhar ?

Caso nã ão se tenha certeza qual q tipo de dados a serem ma anipulados, use a fun nção importdata. Esssa função recebe qualquer extensão da ttabela ante erior. Mas, se ela recebe r qu ualquer exxtensão en ntão porqu ue utilizar as outras s? A funçção importd data é um ma função genérica e como tal não contém toda as as cara acterísticass de armazzenamento o que cada a uma tem m individua almente. Como C ela possui um m código de armazzenamento o padrão, pode ser possível um traba alho a mais para con nseguir exttrair o que se deseja..

Fun nção de Tratamen T nto Há caso os que pre ecisaremoss exportar dados para visualiza ação no prompt de comando c (janela de e comando os), mas nem n semp pre a form matação que o MAT TLAB® disp põe é adeq quada à sittuação. Para ressolver esse e problema a iremos trrabalhar co om o coma ando ou função ntf. Podem mos definir as atribuições de essa funçã ão como a gravação de fprin dado os em um arquivo forrmatado. Sua S sintaxe e pode serr observada a seguir..

Caracte eres são uttilizados nos flags co omo contrroladores d de alinham mento e sin nal. Eles esstão resum midos na ta abela 3.2.

Caraactere Ͳ + 0

Descriçção Alinham mentoàesquerda Sempreeimpre sin naldosnú úmeros Preencheespaço oscom‘‘0’’emvezdee‘‘ ’’

Exemplo % %Ͳ5.2d % %+5.2d % %05.2d

Tabela 3.2 2 – Caracterres dos flags do coman ndo fprintf.

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

Fo ormato %c %s %d %f %e

Notação N Caracterre Cadeiad decaractere Decimal Pontoflu utuante Exponen ncial

Exemp plo fprintf(‘‘%’’c,’’’’a’’) fprintf(‘‘%’’s,’’’’abc’’) fprintf(‘‘%’’5..3d,’’pi’’) fprintf(‘‘%5.3 3f’’,’’pi’’) fprintf(‘‘%’’5..3e,’’pi’’)

Resultado a abc 3.142e+000 3.142 3.142e+000

Tabela 3..3 – Caracte eres de identificação de e notação.

5 50 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 3: Man nipulação o de Dado os –– Com mo Traba alhar ? Alguns caracteress especiaiss podem ser s utilizad dos para a atribuir fun nções extra as ao fprin ntf. São postos semp pre após o primeiro conjunto c de e parâmetros e pode em ser ressumidos na a tabela 3.4 4.

Caraactere \b \f \n \r \t \\ \”” %%

Nom me backkspace form mfeed newline carriagereturn n horizzontaltab backkslash quottationmarrk percentcharaccter

Descriçção Retornodecaracctere Avanço odelinha Pulalin nha Retornodelinhaa Tabulaççãohorizo ontal Caracteerebarrainvertida Caracteereaspa““““ Caracteereporcen ntagem% %

Tabe ela 3.4 – Carracteres esp peciais do fp printf.

Grá áficos e Handle H G Graphics Agora mostrarem m mos os reccursos disp poníveis no n MATLA AB® de criação man nipulação de d figuras para a aprresentação o de resultados em fformato grá áfico. O co onjunto dessses recurrsos é deno ominado Handle H Gra aphics. Para efe eitos de otimização o de resulta ados é sug gerido que e a geraçã ão de gráfiicos seja organizada o segundo os o passos a seguir: Pass so 0 – Pre 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 MENTUSJR.C Consultoria˜PTCC 

Módu ulo 3: Man nipulação o de Dado os –– Com mo Traba alhar ? figurre('Name','Phillipi Sou uza’) figurre('Name','Phillipi Sou uza','Numb ber‘,'off') figurre('Name','Phillipi Sou uza','Numb ber','off','Co olor',‘c') Para ma ais atribuiçções consu ulte as prop priedades da figure n no help. Pass so 2 plot((x,y) plot((x,y,’+’) plot((x,y,’r+’) Cores, marcadore m es e tipo de e linhas po odem ser re esumidos n na tabela 3.5. 3

Cor y(am marelo) m(m magenta) c(azzulͲclaro) r(ve ermelha) g(ve erde) b(azul) w(b branca) k(preta)

Marcad dor .(ponto o) o(círcu ulo) x(x’’s) +(cruz)) *(estreela) s(quad drado) d(losan ngo) v(triângulop/baaixo) ^(triân ngulop/cima)

TTipodeLin nha :(pontilhaado) Ͳ Ͳ.(pontoͲt traço) Ͳ ͲͲ(tracejad do) s solid(sólid da)

Tabela 3.5 – Cores, marcadore es e tipos de e linhas.

Pass so 3 grid grid legend('curva')) grid legend('curva')) xlabel('eixo x') grid legend('curva')) xlabel('eixo x') ylabel('eixo y') 5 52 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 3: Man nipulação o de Dado os –– Com mo Traba alhar ? O MATLAB® posssui inúmeras estrutu uras de exxibição grá áfica. Algu umas delas podem ser s encontrradas na ta abela 3.6.

Coman ndo loglo og sem milog(i) impulse step p bode polaar nich hols nyqu uist zppllot resid d sim

Atribuiçção Valorloggarítmicodexey. Valorloggarítmicodexelineearparayy. Resposttaaoimpu ulso. Resposttaaodegrau. Diagram madeBOD DE. Gráficosscomeixo osdecoorrdenadasp polares. Diagram madeNich hols. Diagram madeNyquist. Zerosepólosdeffunçõestrransferênccia. Análisedecorrelaaçõeseco orrelaçõesscruzadas. Simulaçãodemodelosmattemáticos. Tabe ela 3.6 – esttruturas de exibição e grá áfica.

E EXERCÍ ÍCIO AP PLICADO O

blema 3.1 Prob

.

Acessse graf1.m m em seu diretório d pa articular. Utilizze o máxim mo de reccursos visttos nesse módulo. (V Você terá 10 minuto os, 5 para a cada usuário)

5 53 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 3: Man nipulação o de Dado os –– Com mo Traba alhar ?

C Conside eraçõe es Finais

1 O tratam 1. mento prévvio dos dad dos pode agilizar a os resultadoss; 2 Não é necessárrio conheccer todo o Handle Graphicss (sua áre 2. ea é haria Quím mica); Engenh 3 O tipo de 3. d saída attribuída aos dados de epende da a objetivida ade do projjeto; 4 Se a saída 4. s retorrnar resulta ados incoe erentes, o erro está,, com absoluta certeza a, no algoriitmo de criação dos dados; d 

5 54 ELEM MENTUSJR.C Consultoria˜PTCC 

Mód du ulo o4 4: Estudo o de Cassos

Módu ulo 4: Esttudo de Casos C

Através dos três módulos anteriores a o leitor te eve para ssi as princ cipais inforrmações de d ambiente e intterface, programaçã ão, cálculo o vetorial em aritm mética de máquina, e importa ação, expo ortação e manipulaçção de da ados. Esse es conheciimentos, no n entanto, são gerais para qua alquer área a da ciência no qual o MATLAB® pode se er utilizado o. O módu ulo 4 destte curso vem v definir nosso estudo e em MATLAB B® na Enge enharia Química. Q T Tem como o base os o conceito os vistos anteriorm mente pode eremos entender e a ferram as mentas que o softw ware disp ponibiliza para solucionar nosssos proble emas profisssionais. Veremo os agora so oluções pa ara problem mas cotidia anos em no osso laborr, tais como, solução o de EDOs, solução o de EDP,, solução de SELs, dentre ou utros. Nosssos estudo os estão divididos em m vários estudos e de casos apresentados s até o fim m do curso.

CA ASO 1: Tanque Pulm mão (Traba alhando o com Estrutturas de d Repe etição)

Um tanque no qu ual um líqu uido incom mpressível (densidad de constan nte) é 3 bom mbeado a uma u vazão o variável, F0 (m /s). Esta taxa a de entra ada pode variar v com o tempo devido a trocas em m operaçõe es de conttra correntte. A alturra do do no tanq que vertica al cilíndrico o é h (m). A vazão de saída do tanque eé F líquid (m3/s). / e que F0, h e F são variáveis como tempo e conseqüentemente, Sabe-se são funções do d tempo t. Conseqüentemente nós usamos as n notações F0(t), h(t) e F(t). Líq quidos parttindo da ba ase do tan nque ao lo ongo do du uto horizon ntal e desccarrega no o topo de e outro ta anque. Am mbos os tanques ssão aberto os à atmo osfera.

Figura 4.1.1 – Tanqu ue Pulmão

5 56 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C E Este é um simples exemplo e de e aplicação o de equações do m movimento para siste emas macrroscópicoss. Para a Figura F 4.1.1vamos to omar a linh ha de saída a por 2 L (m m) e sua respectiva área á de seçção transversal por At (m ). A á área do tanque é considerada constante e e igual a A (m2). A parte de este processso que é descrita pelo p balançço de força as é o flux xo do fluido o líquido através a do tubo. Ele terá t uma massa m dada a por: (4 4.1.1) E Esta masssa terá uma a velocidad de v (m/s) dada por: (4 4.1.2) Assumindo A o que o líq quido é inccompressív vel e se de esloca integralmente com velocidade con nstante, se e comporttando com mo se fosse e um corp po sólido. Se o fluxo o for turbu ulento, as equaçõess (4.1.1) e (4.1.2) seriam uma a aproximação ruim m. A quantida ade de líqu uido do tubo não irá á variar com o tempo o. Mas, se e nós quisermos mudar a vazã ão de saíd da do fluid do, a veloccidade do líquido pre ecisa ser mudada. E para tro ocar a vellocidade ou o o mom mento de u um líquido o nós deve emos exerccer uma fo orça sobre o líquido. A direção o de interresse nesste problema é a horizontal desde então e assu umimos qu ue o tubo o é horizo ontal. A fo orça aplica ada sobre e o líquido o na extre emidade esquerda e d tubo é a pressã do ão hidráulicca do líqu uido no tanque dada a por: (4 4.1.3) onde e g é a ace eleração devido à grravidade e é 9,81 m//s2 se o tan nque estive er 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. Apen nas uma força f emp purrando na a direção oposta o (da a direita pa ara a esque erda), a força de atritto do fluido o líquido. Seu S valor pode p ser dado d por: (4 4.1.4) Sabendo que a re elação bássica que é usada para escreve er as equa ações de movimento m o para um sistema. Na forma a mais gerral, onde a massa pode varia ar com o te empo, temo os (4 4.1.5) onde e vi é a ve elocidade na n direção i em (m/s) e Fji é a j-ésima j forrça atuand do na direçção i. Substitu uindo as de emais equa ações na equação e (4 4.1.5), temos 5 57 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C (4 4.1.6) (4 4.1.7)

Para descrever o sistema a complettamente, uma equação tota al da conttinuidade no n líquido no tanque e também é requerid da. Nesse caso pode emos ter (4 4.1.8) Nós pre ecisamos de um método m numérico pa ara resolve er essas duas equa açõ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 dados s em regim me de esta acionarieda ade são da ados pela Tabela T 4.1.1. Tuboo: di = 3 m Tanq que: di = 12 m Valores em Estado Estacion nário:

A = 7,06 m2

L = 3000 m

A = 113 m2

h=7m

F = 35,1 m3/ss h = 4,72 m v = 4,97 m/ss

Parââmetros: R = 1 380 00 Re 00 Fator de d Atrito = 0,0123 0 Kat = 2,81 2 x 10-2 N//(m/s)2 Tabella 4.1.1 – dadoos paramétricoos do problem ma Tanque de Fluxo F gravitaccional.

Usando o a relação o F = v . At e subs stituindo oss valores numéricos s dos âmetros na as equaçõe es (4.1.7) e (4.1.8), te emos: parâ (4.1.9) (4.1.10) A segu uir temoss o códig go que fornece f e resoluçã ão integrando num mericamente duas EDOs E aco opladas de escritas anteriormen a nte com duas cond dições iniciais de vazzão e nível no tanque: (1) quan ndo a vazã ão inicia é 50% da máxima m e (2) quando o a vazão inicial é 67% 6 da má áxima. No o tempo igu ual a zero o, a vazão no tanque é levada ao a máximo o segundo o seu limitte, 35,1 m3/s. funct tion [h1,h2 2] = gravit tytank(v0_1 _1,h0_1,v0_ _2,h0_2,tem mpo_sim,deltat) %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % "gr ravitytank" " é uma fun nção que si imula um tanque de fluxo por g gravidade. %

5 58 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C % % râmetros de e entrada: % Par % % % % v0_1 -> % > vazão de entrada co om 67% da vazão mássica. % % h0_1 -> > nível ini icial. % % v0_2 -> > vazão de entrada co om 50% da vazão mássica. % % h0_2 -> > nível ini icial. % % tempo_s sim -> temp po de simul lação. % % deltat -> passo de d tempo. % % % Par % râmetros de e saída: % % % % h1 -> resposta r em m nível da vazão v0_ _1. % % h2 -> resposta r em m nível da vazão v0_ _2. % % % % Cri iado e atua alizado por r: Phillipi i R. O. Souza. % % Dat ta de criaç ção: 22 de agosto de 2008. % % Dat ta da últim ma atualiza ação: 23 de e agosto de 2008 %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% clc %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% de variáveis % % D Declaração %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % % % % % %

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

m/s % m % m/s % m % s % s %

%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % % Valor Inicial I %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% v1(1) ) h1(1) ) v2(1) ) h2(1) )

= = = =

v0_1; h0_1; v0_2; h0_2;

% % % %

m/s % m % m/s % m %

%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % % Resol lvendo usan ndo Euler Explicito %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% fprin ntf('****** *********** *********** *********************\n'); *\n'); h2 v2 fprin ntf(' Tempo o v1 h1 fprin ntf('****** *********** *********** *********************\n'); i = 1; 1 while e i 3CO2(g) + 4H2O(g) % % CO(g) + 1/2O2(g) --------> CO2(g) % % N2(g) ) + O2(g)--------> 2NO(g) % % % %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% fprin ntf(' Dados Gerais\n'); fprin ntf(' ------------\n'); fprin ntf('\n'); fprin ntf('C3H8(g g) + 7/2O2( (g) -------> 3CO2(g) + 4H2O(g) \n'); fprin ntf('CO(g) + 1/2O2(g) ) --------> > CO2(g) \n'); fprin ntf('N2(g) + O2(g)--------> 2NO O(g) \n'); fprin ntf('\n'); DHo_F For298_CO2_ _g = -393.5 509; DHo_F For298_H2O_ _g = -241.8 818; DHo_F For298_C3H8 8_g = 104.6 680; DHo_F For298_CO_g g = -110.52 25; DHo_F For298_NO_g g = 90.250; ; DHo_F For298_N2_g g = 33.180; ; DHo_C Comb298_a = 3*DHo_For r298_CO_g + 4*DHo_For298_H2O_g g - DHo_For r298_C3H8_g g; DHo_C Comb298_b = DHo_For29 98_CO2_g - DHo_For298_CO_g; DHo_C Comb298_c = 2*DHo_For r298_NO_g - DHo_For298_N2_g; DHo_C Comb298 = DHo_Comb298 D 8_a + DHo_C _Comb298_b + DHo_Comb298_c; fprin ntf(... ' 'DHo_Comb29 98_a = 3*DH Ho_For298_C _CO_g + 4*DHo_For298_ _H2O_g DHo_F For298_C3H8 8_g\n'... ) ); fprin ntf(... ' 'DHo_Comb29 98_b = DHo_ _For298_CO2 2_g - DHo_ _For298_CO_ _g\n'... ) ); fprin ntf(... ' 'DHo_Comb29 98_c = 2*DH Ho_For298_N _NO_g - DHo_For298_N2_g\n'... ) ); fprin ntf('\n'); fprin ntf(... ' 'DHo_Comb29 98 = DHo_Co omb298_a + DHo_Comb298_b + DHo_Comb298_c c\n'... ) ); fprin ntf('DHoCom mb298 = %2. .4f J\n',DH Ho_Comb298); %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% %Cálc culo da Cap pacidade Ca alorífica média m da corrente de d produto total, CPH H% %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % Const tantes da eq.: e C/R = A + BT + CT^2 + DT^-2 % A_CO2 2 = 5.457; A_CO = 3.376; A_H2O O = 3.470; A_O2 = 3.639; A_N2 = 3.280; A_NO = 3.387; B_CO2 2 = 1.045*1 10^-3; B_CO = 0.557*10 0^-3; B_H2O O = 1.450*1 10^-3; B_O2 = 0.506*10 0^-3;

6 67 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C B_N2 = 0.593*10 0^-3; 0^-3; B_NO = 0.629*10 D_CO2 2 = -1.157* *10^5; D_CO = -0.031*1 10^5; D_H2O O = 0.121*1 10^5; D_O2 = -0.227*1 10^5; D_N2 = 0.040*10 0^5; D_NO = 0.014*10 0^5; R = 8.3145; 8 To = 298.15; Taux = 299; Taux_ _ex = 299; erro = 0.00001; ; T = 300; 3 T_ex = 300;

% % % % % % %

J/mol.K K % K % K % K % K % K % K %

% A quantidade q teórica de e ar a 25ºC C % n_CO2 2 = 1; % mol % n_CO = 2; % mol % n_H2O O = 4; % mol % n_NO = 2; % mol % fprin ntf('\n'); fprin ntf('quanti idade teóri ica de ar a 25ºC.\n'); Soma_ _nA = (n_CO O2*A_CO2) + (n_H2O*A_ _H2O) + (n_CO*A_CO) + (n_NO*A_ _NO); Soma_ _nB = (n_CO O2*B_CO2) + (n_H2O*B_ _H2O) + (n_CO*B_CO) + (n_NO*B_ _NO); Soma_ _nD = (n_CO O2*D_CO2) + (n_H2O*D_ _H2O) + (n_CO*D_CO) + (n_NO*D_ _NO); fprin ntf('\n'); fprin ntf('Temper ratura(T)

K

ºC\n');

i = 0; 0 while e abs(T - Taux) T > err ro i = i + 1; MCPH = R*(Soma_ _nA+(Soma_n _nB/2)*To*(T T/To+1)+(Soma_nD/2)/((T/To)*To o^2))/1000; Taux = T; T = To T - (DHo_C Comb298/MCP PH); ToC = T - 273; ToC_v vetor(i) = ToC; i_vet tor(i) = i; ; fprin ntf('

%2.0f

%2.4f

%2.4f\n',i,T,T ToC);

end

6 68 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

CA ASO 3: Contro oladore es Automátic cos (ajusta ando Curvas) C ) No troccador de calor c tipo ““camisa”” ““ de d um reator CSTR é injetado o um fluido o de aquecimento. O engenhe eiro responsável pela a automaçã ão de seu setor sabe e que precisará de um contrrolador que atue so obre a vazzão do líq quido aque ecedor com m a finalidade de altterar a tem mperatura do d produto o no interio or do tanq que. Para que q seu controlador c r realize ta al operação, ele neccessita de uma relaçção matem mática entrre as variávveis contro olada e ma anipulada. Para tanto ele deve e realizar uma estimação ba aseada em m dados amostrado os do sisttema (iden ntificação ou o modela agem empíírica). Com mo estão disponíveis d s poucos dados (den ntro de seu u intervalo o de opera ação), será á necessárria uma prrecisão de e sua parte e na estimação do modelo m (equação), já que o successo do controladorr está direttamente lig gado a preccisão da equação es stimada. V Vazão

3 0,1 (m /min) Temp peratura 91,99 9 (ºC)

0,2 2

0,3

0,4

0,5

0,6 6

0,7

93,4 45

96,10

97,12

97,35 9

99,6 63

98,46

0,8

0,9

99,28 10 00,97

Precisamos saberr que tipo de d equação será neccessário pa ara satisfaz zer o conttrolador. Pa ara isso va amos visua alizar os da ados numa a figura grá áfica. figur re('Number' ','off','Na ame','Teste e Gráfico (CASO 3)','Color','w w') plot( (V,T,'ro') grid title e('Teste Gr ráfico (CAS SO 3)') xlabe el('Vazão (m^3/s)') ( ylabe el('Tempera atura (ºC)‘ ‘)

6 69 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C Observe e que uma a reta parece satisfaz zer o probllema. Poré ém, lembre e que a te emperatura a máxima alcançada a pelo pro oduto é a temperattura do líq quido aque ecedor. Asssim para V ĺ ’, T ĺ Taq. Para esstimar a eq quação polinomial ne ecessária vamos v utilizar o comando poly yfit.

Onde: x = variá ável relacio onada à ab bscissa do o plano orto ogonal; y = variá ável relacionada à ordenada do plano orttogonal; n = orde em do polinômio a se e ajustar. Apliccando: funct tion [poli] ] = caso3(n n) clc % Car rregar os dados d de ob bjetos stru uct. V = load('V'); l V = V.V; V T = load('T'); l T = T.T; T % Est timar os pa arâmetros do d polinômi io poli = polyfit( (V,T,n); % cri iar uma res sposta do polinômio p % est timado dado o o parâmet tro de entr rada pfit = polyval( (poli,V); % exi ibição gráf fica entre os dados de d % ide entificação o e os dado os gerados pelo % pol linômio aju ustado plot( (V,T,'ro',V V,pfit)

Após a aplicação do código teremos o seguinte resultado:

7 70 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

CASO O 4: CSTR Não o-Isoté érmico (Solução de e SEL) Um pro oduto polim mérico R se decom mpõe em monômero m s dos qua ais o prod duto P é o principal segundo uma reaçã ão de prim meira ordem, exotérm mica, irrevversível e em e fase líquida R ĺ

P

deve e ser cond duzida em m uma rea ator tipo CSTR C enccamisado. Um comp posto inertte é adicio onado ao reator em m quantida ades equiimolares e em relação ao reag gente R. Dada as informaçõ ões a seg guir, deterrminar a temperatu ura e convversão de A alcançad da. Dado os: •• •• •• •• •• •• •• •• •• •• ••

Regime de operação estacioná R ário; C Calor espe ecífico do inerte: 215 5 cal/mol .ºC C; C Calor espe ecífico de R e P: 46 cal/mol c .ºC C; V Vazão molar de alim mentação de A: 80 mo ol/min; UA: 9 500 cal/mol.K; T Temperatu ura ambien nte: Ta = 29 98 K; k = 4,56 x 10 1 -3 min-1;((à 350 K) E = 33 000 0 cal/mol.K K; W 85 min; W= D = -15 000 cal/moll; DH T0 = 400 K; K (tempera atura de en ntrada)

A equaçção de projjeto segun ndo balanço de masssa é dado p por

Como se s trata de uma ração o de prime eira ordem na fase líq quida a tax xa de a por reaçção é dada

Sendo um reatorr não-isoté érmico, a constante c de velocid dade pode e ser 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 MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

Podemo os ainda re earranjar de d forma a isolar a co onversão e em único te ermo obte endo assim m, a primeirra equação o de nosso o sistema liinear de eq quações:

Ou ainda a

Pelo Ba alanço de Energia E tem mos a segu uinte equa ação:

Tomand do valores para: x x x

'cp = 0; 0 4I = 1; TA,0 = T1,0.

Ficamos com

Ou ainda a

que é a segunda equaçã ão do nossso sistema de equaçõ ões lineare es. Para so olucionar esse sisttema utiliz zamos o comando fsolve. Esse ntaxe comando é utiilizado parra resolver problemas de SELss. A seguirr veja a sin que envolve ta al comando o.

7 72 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

onde e: •• •• ••

equações = função de e d contenh ha o vetor de d equaçõ ões; C Chute Iniccial = va alor estima ado para as variá áveis dado o na in nteração zero; z o opções = opções o de do coman ndo (Ex.: crritério de p parada).

O vetor de equações pode p ser esscrito como o:

Desssa forma sugerimos s o seguinte e código pa ara solucio onar nosso problema: %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % A função "c caso4" solu ucionar o problema p do CASO 4 do d quarto m módulo do % % % c curso de MA ATLAB. Maio ores detalh hes, ver apostila. % % % % Cri iado e Atua alizado por r Phillipi R. O. Souza. % % Dat ta da criaç ção: 14 de janeiro de e 2009. % % Dat ta da últim ma atualiza ação: 14 de e janeiro de 2009. %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% funct tion caso4 clc Chute eInic = [50 00 0.2]; opcoe es = optims set('TolX', ,1e-4); sol = fsolve('r reator',Chu uteInic,opc coes);

% Chute inicial % opções de convergênc cia % chamada da função so olução

% dec claração da as variávei is de saída a Conve er = sol(2) ); Temp = sol(1); % Saí ída no prom mpt. clc fprin ntf('Result tados da Si imulação do o Reator CSTR.\n'); fprin ntf('...... ........... ........... ..............\n'); fprin ntf('\n'); fprin ntf('Conver rsão = %4.4 4e',Conver) ); fprin ntf('\n'); fprin ntf('Temper ratura = %4 4.4f',Temp) ); fprin ntf('\n');

7 73 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % A função "r reator" aux xilia a fun nção "caso4". % % % % Cri % iado e Atua alizado por r Phillipi R. O. Souza. % % Dat ta da criaç ção: 14 de janeiro de e 2009. % % Dat ta da últim ma atualiza ação: 14 de e janeiro de 2009. %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% funct tion F = re eator(x) % dec claração de e parâmetro os constant tes tau = 85; DH = -15000; k0 = 4.56e-3; E = 33000; 3 T0 = 400; TR = 298; FA0 = 80; FI0 = 80; Ta = 300; R = 1.987; 1 UA = 9500; Mi = FI0/FA0; cpi = 215; cpa = 46; cpb = 46; % cri iação do ve etor equaçõ ões F = [x(2) [ - ((t tau*k0*exp( ((E/R)*((1/ /TR)-(1/x(1))))) / (1+(t tau*k0*exp( ((E/R)*((1/ /TR)-(1/x(1 1))))))); x(2) - ((( (UA*(Ta-x(1 1))/FA0) + (cpa + Mi*cpi) + (x(1)-T0)) / (-(DH)))];

A so olução será á exibida no n prompt como: c Resu ultados da a Simulação o do Reato or CSTR. ....................................... Convversão = 8.4931e-00 8 02 Tem mperatura = 290.5481 1 >>

7 74 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

CASO 5: C 5 Reato or CST TR (Trrabalha ando com c ED DO) Um tanque de mistura perffeita, CST TR, cuja re eação quím mica ocorrre na fase líquida cujo c componente A reage irre eversivelm mente a uma velocidade espe ecífica k prroduzindo o compone ente B. A ĺB Dado a concentra ação do componente A, CA, na corrente d de alimenta ação, em moles m de A por unid dade de vo olume. Ass sumindo que q areaçã ão se comp porta como uma cin nética de primeira p orrdem, a tax xa de consumo do rreagente A por unidade será diretamen nte proporccional à concentraç c ão de A iinstantânea no tanq que.

A equaçção da con ntinuidade para a esp pécie quím mica A do ssistema é:

Onde: x x x

Fluxo de e A que en ntra no sisttema = F0CA0; Fluxo de e A que sa ai do sistem ma = FCA; Taxa de e formação o de A da reação r = ņ VkCA.

O sinal de menoss no termo o da reação indica que o comp ponente A está send do consum mido. As un nidades de e todos os s termos esstão em: m moles de A por unidade de tem mpo. Para que isso ocorra, o a unidade u de e k deve se er o invers so da unidade de tem mpo. A taxa de d acúmulo o é dada por: p 7 75 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

Combinando todas as equaçções na eq quação da continuida ade:

Ou ainda,

Conssiderando que o siste ema opera a em batela ada, F = F0 = 0:

Observe e que po odemos escrever e a concen ntração em função o da convversão.

54 s-1; V = 25 m3; Dado: k = 0,05 Qual o perfil de co onversão ao a longo do d tempo para p este ssistema? Prove P que a tempera atura influencia na co onversão. Para re esolvermos a equaçã ão utilizam mos o coma ando ode4 45:

Onde: •• •• •• •• ••

T = vetor coluna c de pontos p de tempo; Y = soluçã ão(cada linha é soluç ção no tempo para ca ada ponto T); ‘‘equações s’ = função o que conte enha as eq quações diiferenciais; I.I. = Intervvalo de inte egração; C = Condições inicciais. C.I.

A função que con ntém as eq quações diferenciais d s deve con nter a seguinte sinta axe: 7 76 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

Onde: x x

VI = varriável indep pendente; VD = va ariável dep pendente;

Assim o código o sugerido oé ••

para funçã ão principal:

%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % A função "c caso5" solu ucionar o problema p do CASO 5 do d quarto m módulo do % % % c curso de MA ATLAB. Maio ores detalh hes, ver apostila. % % % % Cri iado e Atua alizado por r Phillipi R. O. Souza. % % Dat ta da criaç ção: 15 de janeiro de e 2009. % % Dat ta da últim ma atualiza ação: 15 de e janeiro de 2009. %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% funct tion caso5 clc % cha amada da fu unção de re esolução da a EDO [T,XA A] = ode45( ('reator',[ [0 110],0); ; % Exi ibição gráf fica figur re('Name',' 'CASO 5','N Number','of ff','Color','w') plot( (T,XA) xlabe el('Tempo (s)') ( ylabe el('Convers são (%)') title e('Caso 5') ) grid

••

p para função o de equaçções:

%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % A função "r reator" dar r suporte à função "caso5". % % % % % Cri iado e Atua alizado por r Phillipi R. O. Souza. % % Dat ta da criaç ção: 15 de janeiro de e 2009. % % Dat ta da últim ma atualiza ação: 15 de e janeiro de 2009. %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% funct tion dxAdt = reator(t t,xA) k = 0.054; 0 V = 2 25; dxAdt t = k*(1-xA A(1));

7 77 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

Para avvaliar a in nfluência d da temperratura esccolhemos a arbitrariam mente maiss dois valo ores distintos para k: k 0,098 e 0,023. Em m seguida a aplicamo os os proccedimentoss anterioress: %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % A função "c caso5" solu ucionar o problema p do CASO 5 do d quarto m módulo do % % % c curso de MA ATLAB. Maio ores detalh hes, ver apostila. % % % % Cri iado e Atua alizado por r Phillipi R. O. Souza. % % Dat ta da criaç ção: 15 de janeiro de e 2009. % % Dat ta da últim ma atualiza ação: 15 de e janeiro de 2009. %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% funct tion caso5_ _temp clc globa al k_aux

% Declara ação de var riáveis globais

k = [ [0.054 0.09 98 0.023]; % Variação o de k for i = 1:3 k k_aux = k(i i); % Utilizaç ção de um k por vez [ [T,XA] = od de45('reato or_temp',[0 0 150],0); X XA_aux{i} = XA; % concaten nação das converções T T_aux{i} = T; % concaten nação dos tempos end % Sep paração das s variáveis s para exib bição gráfica XA1 = XA_aux{1, ,1}; T1 = T_aux{1,1} }; XA2 = XA_aux{1, ,2};

7 78 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C T2 = T_aux{1,2} }; XA3 = XA_aux{1, ,3}; T3 = T_aux{1,3} }; % Exi ibição gráf fica figur re('Name',' 'CASO 5','N Number','of ff','Color','w') plot( (T1,XA1,'k' ') hold on plot( (T2,XA2,'k-.') plot( (T3,XA3,'k. .-') xlabe el('Tempo de d Residênc cia (s)') ylabe el('Convers são (%)') title e('Caso 5') ) legen nd('k = 0,0 054','k = 0,098','k 0 = 0,023','Location','best') grid %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % % A função "r reator_temp p" dar supo orte à função "caso5_temp". % % % % Cri iado e Atua alizado por r Phillipi R. O. Souza. % % Dat ta da criaç ção: 15 de janeiro de e 2009. % % Dat ta da últim ma atualiza ação: 15 de e janeiro de 2009. %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% funct tion dxAdt = reator_t _temp(t,xA) globa al k_aux

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

% Dec claração de e variáveis s V = 25; 2 % cri iação da eq quação dife erencial dxAdt t = k_aux*( (1-xA(1));

7 79 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

CA ASO 6: CSTRs C s em Sé érie (Tra abalha ando co om EDOs) Esse ca aso é uma extensão do caso 5 onde um determinado produto oBé prod duzido enq quanto o reagente r A é consu umido. Agora consid dere que essa convversão oco orre em trê ês tanquess de misturra perfeita locados em série, co om a reaçção ocorren ndo segun ndo uma cinética de primeira p orrdem. Con nsideremos s que as te emperatura as e os vo olumes doss tanques são distinttos, porém m constante es. A denssidade é asssumida co onstante através a do sistema.

Com esssas conssiderações em men nte, nós podemos p fformular nosso n mod delo. Se o volume e a densidade de cada tanque são s consta antes, a massa m total em cada tanque tam mbém é. Assim, A a eq quação tota al da continuidade pa ara o prim meiro reatorr é:

ou Anallogamente e, o balanço o de masssa total nos s tanques 2 e 3 é dad do por:

Onde F é defin nido em terrmos de un nidade com mo (m3/min n). Para o nosso casso apenas a equação o da contin nuidade se erá necess sária. Com mo o sistem ma é biná ário e nós conhecem mos a masssa total d do materia al em cada a tanque, apenas a um m compone ente é requerido parra a equaçção. Ou A ou B pode em ser usa ados. Se nós, n arbitra ariamente escolherm mos A, as equações para cada a tanque sã ão (cada te ermo tem unidade u de e kg.mol de A/min):

8 80 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C Send do

e rearran njando ma atematicam mente:

Cond dições inicciais (t = 0)): x x x x

CA1 = 0,,4 CA2 = 0,,2 CA3 = 0,,1 CA0 = 1,,8

Nesse caso c as va ariáveis de e soluções s e de equações, além de ou utras, são colocadass de forma matricial. Acompanh A he o código o a seguir: x

Para a função f prin ncipal:

%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % A função "c caso6" solu ucionar o problema p do CASO 6 do d quarto m módulo do % % % c curso de MA ATLAB. Maio ores detalh hes, ver apostila. % % % % Cri iado e Atua alizado por r Phillipi R. O. Souza. % % Dat ta da criaç ção: 15 de janeiro de e 2009. % % Dat ta da últim ma atualiza ação: 15 de e janeiro de 2009. %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% funct tion caso6 clc [T,CA A] = ode45( ('reator',[ [0 15],[0.4 4 0.2 0.1]); % Exi ibição gráf fica figur re('Name',' 'CASO 6','N Number','of ff','Color','w') plot( (T,CA(:,1), ,'k') hold on plot( (T,CA(:,2), ,'k-.') plot( (T,CA(:,3), ,'k.-') xlabe el('Tempo de d Residênc cia (s)') ylabe el('Convers são (%)') title e('Caso 6') ) legen nd('C_A_1', ,'C_A_2','C C_A_3','Loc cation','best') grid

x

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

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

8 81 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C % Cri iado e Atua alizado por r Phillipi R. O. Souza. % % Dat ta da criaç ção: 15 de janeiro de e 2009. % % Dat ta da últim ma atualiza ação: 15 de e janeiro de 2009. % %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% funct tion dCAdt = reator(t t,CA) CA0 = 1.8; tau = 2.0; k1 = 0.5; k2 = 0.5; k3 = 0.5; % cri iação do ve etor equaçã ão diferenc cial t = [(1/tau u)*(CA0-CA( (1)) - k1*C CA(1); dCAdt (1/tau u)*(CA(1)-C CA(2)) - k2 2*CA(2); (1/tau u)*(CA(2)-C CA(3)) - k3 3*CA(3)];

8 82 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

CASO 7: C 7 Reattor HDT T (Trrabalha ando com c ED DP) Os com mbustíveis fósseis são s a base energéttica da hu umanidade e. No enta anto, esse monopólio o energético traz co onsigo con nseqüências ambien ntais, algumas veze es, catastrróficas. Pa ara reduzir o impa acto que e essa atividade prom move ao meio m ambiente, dentre e outras aç ções, está a redução o de compo ostos sulfu urados e nitrogenad n os no óleo diesel. Esse E proccesso é co onhecido como c HDT T (do inglêss, Hidrotra atamento de d Diesel). Consiste apenas na a passagem m de uma a corrente gasosa de e hidrogên nio através s do óleo, contido n num reatorr tipo Leito o Gotejante na pre esença de e catalisadores. Oss compostos sulfurrados reag gem produ uzindo H2 2S, os nitrogenado n os, NH3, além da a redução o de compostos aro omáticos. Nosso problema p consiste em e identific car o perfil de temp peratura de e um reato or HDT. Esse E proble ema é basseado em parte do artigo (Me ederos, F. S. e Anch heyta, J., "Mathem matical Modeling M and a Simu ulation of Hydrotre eating Reactores: Co ocurrent versus Conte ercurrent Operations O s", ScienceDirect, 200 07). Segundo Medeross e Ancheyyta, através de um balanço de massa na fase gaso osa podem mos equacionar a corrrente de hidrogênio como:

Onde e:

x x x x x x x x x x x

= holldup da fasse gasosa;; R = con nstantes ge eral dos ga ases (m3.Pa/mol.K); TG = tem mperatura na fase ga asosa (); G p H2 = pressão p de e gás hidrg gênio (Pa); t = temp po (s); uG = vellocidade superficial da d fase gas sosa (cm/ss); z = com mprimento (altura) ( do reator (cm m); L k H2 = coeficiente c de transfe erência de e massa do o H2 na interface ga asosa (cm/s); aL = áre ea superficcial da interrface líquid da (cm-1); HH2 = co onstante de Henry (P Pa.cm3/mo ol); L C H2 = concentraç c ção molar na n fase líquida (mol/ccm3).

8 83 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

Observe e que a eq quação an nterior deté ém duas informaçõe es importantes, amb bos em seus termos diferencia ais. No lad do esquerd do da igua aldade o te ermo diferrencial noss informa o perfil de pressão p do o gás hidro ogênio ao longo do te empo de atividade a do o processo o. No lado direto, ess se perfil é dado ao lo ongo do re eator, em termos esspaciais. Esse E tipo de equaç ção é classsificado ccomo Equação Diferrencial Parrcial, EDP.. Para re esolver essa equaçã ão utilizam mos o com mando pd depe. Supondo arbittrariamente e que os parâmetro os sejam dados de e forma que a equação ante erior pode ser s escrita como:

O pdepe resolve equações e d diferenciais s parciais que q contenham a seg guinte estru utura:

Para a

e

.

Para o nosso n caso o observe que:

8 84 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

Dessa forma, f o có ódigo suge erido é x

para a função f prin ncipal:

%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % A função "c caso7" solu ucionar o problema p do CASO 7 do d quarto m módulo do % % % c curso de MA ATLAB. Maio ores detalh hes, ver apostila. % % % % Cri iado e Atua alizado por r Phillipi R. O. Souza. % % Dat ta da criaç ção: 15 de janeiro de e 2009. % % Dat ta da últim ma atualiza ação: 15 de e janeiro de 2009. %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% funct tion caso7 clc m = 0; 0 z = 1:1:10; 1 t = 0:0.035:10; 0 ; sol = pdepe(m,@ @HDT,@HDTci i,@HDTcc,z, ,t); pH2 = sol(:,:,1 1); % Grá áfico de su uperfície (3D) ( figur re('Name',' 'Perfis sim multâneos', ,'Number','off') surf( (z,t,pH2) title e('Perfis simultâneos s s') grid xlabe el('Comprim mento (cm)' ') ylabe el('Tempo (s)') ( zlabe el('Pressão o de H_2') % Per rfil ao lon ngo do reat tor figur re('Name',' 'Perfil ao longo do reator r no instante final','Num mber','off') plot( (z,pH2(end, ,:)) grid title e('Perfil ao a longo do o reator no o instante final') xlabe el('Comprim mento (cm)' ') ylabe el('Pressão o de H_2')

x

para a função f que e contém a equação:

%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % % A função "H HDT" dar su uporte à fu unção "caso7". % % % % Cri iado e Atua alizado por r Phillipi R. O. Souza. % % Dat ta da criaç ção: 15 de janeiro de e 2009. % % Dat ta da últim ma atualiza ação: 15 de e janeiro de 2009. %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% funct tion [c,f,s s] = HDT(z, ,t,u,DuDz) c = 513.19; 5 f = 1 102.56 * u; ; s = 50.89*(u/10 5 0 - 0.57);

8 85 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C x

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

%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% % % A função "H HDTci" dar suporte à função "caso7". % % % % Cri iado e Atua alizado por r Phillipi R. O. Souza. % % Dat ta da criaç ção: 15 de janeiro de e 2009. % % Dat ta da últim ma atualiza ação: 15 de e janeiro de 2009. %%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% funct tion u0 = HDTci(z) H u0 = 4.2;

x

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

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

8 86 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

8 87 ELEM MENTUSJR.C Consultoria˜PTCC 

Módu ulo 4: Esttudo de Casos C

C Conside eraçõe es Finais

1 O MATLAB® realiza apena 1. as o que é pedido –– se ele e errou, é po orque você errrou; 2 Todas as 2. a sub-rotin nas do sofftware foram criadas de forma g genérica; 3 Existe sempre 3. s ma ais de um código c que e execute a mesma ta arefa; 4 O melho 4. or código é sempre o mais simples; 5 Você trabalha com ENGEN 5. NHARIA. Seus S cálcu ulos são pesados. Utilize U um prog grama ade equado.

8 88 ELEM MENTUSJR.C Consultoria˜PTCC 

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF