Você está na página 1de 51

COMPUTADORIZADO

ENGENHEIRO QUÍMICO

1. Introdução

Desde a década de 1950, a indústria química foi a primeira indústria civil a fazer uso extensivo de
computadores. Naquela época, os computadores eram relativamente mais caros (um mainframe
custava US $ 1 milhão). No entanto, eles eram baratos em comparação com o custo de uma
fábrica de produtos químicos, que normalmente ultrapassaria US $ 100 milhões. O custo de um
mainframe poderia ser reembolsado em sua primeira aplicação para design de processos. As
colunas de destilação estavam sendo projetadas por computador na década de 1950 e programas
de simulação de processos estavam disponíveis no início da década de 1960. O primeiro pacote de
simulação comercial foi provavelmente o PACER, que estava bem estabelecido em meados da
década de 1960. Os primeiros processos on-line controlados por computador foram
comissionados no final dos anos 1950. Assim, a engenharia química auxiliada por computador
tem quase 60 anos de história.
Os computadores agora são baratos e há um na mesa de cada engenheiro. Na
verdade, a maioria agora carrega capacidade de computação com eles, e a demarcação
entre computadores portáteis e telefones móveis diminuirá nos próximos anos. Há uma
grande quantidade de dados disponíveis na Internet e por meio de intranets. As intranets
podem fornecer sistemas de comunicação interativos para facilitar atividades que vão desde
o acesso a dados validados pela empresa até recursos interativos para grandes projetos de
engenharia integrados. Os recursos de computador são usados em todas as fases, desde a
concepção, passando pelo design, até a operação. Praticamente toda a engenharia química
é agora "engenharia química auxiliada por computador". Existem periódicos bem
estabelecidos (comoComputadores e Engenharia Química) e trabalha com ampla referência
a métodos de computador, como Processo assistido por computador e design de produto (
1). As ferramentas de pesquisa na Internet fornecem acesso a uma infinidade de referências
relevantes e métodos auxiliados por computador para apoiar o projeto e a operação de
processos químicos. Com esse acesso rápido a materiais relevantes, este artigo não oferece
uma cobertura detalhada de nenhuma ferramenta em particular. São fornecidas menos
referências porque, com o conhecimento do assunto, uma busca na Internet revelará as
publicações mais recentes disponíveis. Ao mesmo tempo, a '' engenharia química '' cobre
uma gama muito mais ampla de aplicações do que simplesmente grandes processos
químicos e petroquímicos em estado estacionário. As aplicações variam de dispositivos
médicos, através de microprocessos (como produção de energia local e recuperação de
resíduos), produção de alimentos e farmacêuticos, bioprocessos e processos de produção
de energia e químicos tradicionais em grande escala, até modelagem ambiental.
No estágio conceitual, o software é usado para planejar e analisar experimentos de
laboratório. Programas de computador são usados para estimar as propriedades químicas e
físicas de espécies químicas para as quais faltam dados experimentais. Ferramentas de software,
como projeto de molécula auxiliado por computador (CAMD), são empregadas para desenvolver
produtos químicos com as propriedades desejadas. Os pacotes de síntese e otimização de
processos são empregados para desenvolver projetos de processos para fazer os produtos
desejados da forma mais eficaz possível.
Projetos conceituais, sejam desenvolvidos manualmente ou com recursos de computador, são
posteriormente refinados com recursos de computador. Inicialmente, pacotes de simulação são
empregados para verificar e refinar os balanços de calor e materiais. Uma vez que o equilíbrio de calor e
material é estabelecido, um projeto é verificado quanto à segurança e operacionalidade. O

Kirk-Othmer Encyclopedia of Chemical Technology. Copyright John Wiley & Sons, Inc. Todos os direitos reservados.
2 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

o processo geral é verificado quanto à estabilidade do controle e as condições de inicialização,


desligamento e perturbação são exploradas. As unidades individuais dentro do processo são
avaliadas com pacotes de design detalhado especializados. Esses pacotes especializados variam
de coluna e bandeja hidráulica para destilação e colunas de adsorção / dessorção, passando por
projeto detalhado de trocador de calor, a software para simular a cinética de morte microbiana
para esterilização biológica.
O layout detalhado do hardware do processo (incorporando design civil, mecânico e
elétrico) é realizado com um de uma gama de pacotes de design, como AutoCAD ou PDMS.

Além do estágio de projeto, uma ampla gama de ferramentas de computador pode ser
aplicada à planta operacional. Os computadores podem ser aplicados on-line ou off-line. A
otimização off-line pode sugerir novas condições operacionais que proporcionam uma operação
mais eficaz ou segura. Praticamente todos os processos agora são controlados, pelo menos em
parte, com o suporte de computação on-line. As aplicações on-line incluem controle de regulação
e controle de otimização de processos contínuos. O controle por computador on-line também é
aplicado para programação e controle de processos em lote e semilote. Desde as primeiras
aplicações, os computadores on-line têm sido usados para monitoramento de segurança e
desligamento automático rápido. A maioria dos softwares on-line atuais inclui esses recursos de
resposta a emergências.
Dentro dessa gama de aplicações, este artigo concentra-se em três tópicos, que são
apresentados em ordem:

1. Áreas de aplicação
2. Uso de software de engenharia
3. Desenvolvimento de software de engenharia

Particularmente ao considerar o uso e desenvolvimento de ferramentas, é dada


atenção à longevidade de tal software de engenharia e à necessidade de atender aos
padrões ISO de garantia de qualidade e documentação. (ISO 9001 cobre a generalidade de
software de engenharia, enquanto ISO 13485 cobre dispositivos médicos.) Não é incomum
que uma fábrica de produtos químicos opere por 20 a 40 anos, período durante o qual os
autores do software original podem ter avançado em suas carreiras ou mesmo se
aposentou. A documentação deve ser suficientemente clara para permitir que seja mantida
e adaptada por pessoas não envolvidas no desenvolvimento original. Conclui-se também
que não é necessário empregar os desenvolvimentos de software mais recentes;
ferramentas ligeiramente desatualizadas podem ser mais bem testadas.
O artigo está estruturado como segue. A próxima seção fornece um esboço da variedade de
métodos de computador disponíveis para uso nas indústrias químicas e relacionadas. Em seguida,
são fornecidas orientações sobre o uso das ferramentas disponíveis, seguidas por um esboço das
etapas que devem ser seguidas para produzir software adequado para o propósito.

2. Áreas de aplicação

Os engenheiros podem empregar até 200 programas de computador diferentes para auxiliar no
projeto e operação de processos químicos eficientes, seguros e não poluentes. Esses programas
devem fornecer as respostas corretas e as respostas devem ser interpretadas corretamente. Uma
gama típica de software de computador empregado por uma grande empresa de manufatura é
fornecida na Tabela 1.
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 3

Tabela 1. Exemplos de software de engenharia auxiliado por computador


Correlação de dados e previsão de propriedades físicas e químicas
ajustando dados experimentais para propriedades físicas, predizendo propriedades físicas
ajustando o equilíbrio da reação experimental e dados de taxa
previsão de inflamabilidade, toxicidade e outros dados importantes para o cálculo de segurança
Operações da unidade

processo de trocador de calor e projeto mecânico (inclui multi-passagem, multi-fluido, tubo,


prato)
aquecedores de fogo
projeto do evaporador
projeto de vasos de pressão de acordo com vários padrões nacionais e internacionais de
simulação e projeto de colunas de destilação, absorção em lote e destilação contínua e simulação
e projeto de coluna de stripping
projeto de internos de coluna, colunas empacotadas, bandeja de válvula, bandeja de peneira e reboiler de
tampa de bolha e design de condensador
compressor e expansor design e simulação de líquido /
líquido extrator simulação e modelagem de sistemas de
ciclo Rankine
modelagem de turbina a gás e vapor
análise e desempenho de vasos agitados
cálculos de queda de pressão para líquidos e gases em cálculos de queda de pressão de fluxo
isotérmico e adiabático de duas fases em tubos e conduítes
fl uxo bloqueado de duas fases
instabilidade na análise de pico de
fluxo de duas fases
estimativa da vibração do tubo
simulação de reator de leito fl uidizado e tubular e modelagem de secador
de leito fl uidizado de projeto
secadores, aquecidos indiretamente, aquecidos diretamente. Projeto do orifício do
restritor dos secadores de spray
cálculos de combustão
fl uxo não newtoniano e cálculos de transferência de calor
projeto de forno e transferência de calor radiante
Fl uxo de fl uido 3-D, transferência de calor e massa através da dinâmica de fl uido computacional

Cálculos ambientais
dispersão de gases, aerossóis e fumos de pilhas, rupturas e incêndios deposição de
aerossóis e fumos melhorados pela chuva e secos de plumas lixiviando de aterros
sanitários e dispersão de vazamentos através de redes de rios de modelagem de águas
subterrâneas para o acúmulo de poluentes
concentração de poluentes na vida terrestre e marinha (vegetal, animal e microbiana) efeito
integrado de liberações para o ar, água e terra
Estudos de segurança

análise de risco, incêndio e explosão, disco de estouro de liberação de


produto químico tóxico e cálculos de válvula de alívio de pressão
adiabático e alívio isotérmico em projeto de redes de tubulação e
simulação de sistemas de liberação de flare

Disponibilidade e confiabilidade do processo


ajuste de falha de equipamento e estatísticas de taxa de reparo para ajustar correlações estatísticas de
disponibilidade de planta calculada a partir de falha de equipamento e disponibilidade de estatísticas de
manutenção com equipamento em espera

Simulação de processo
simulação e projeto de processos em estado estacionário
reconciliação de dados (estimativa do desempenho estatisticamente mais provável a partir das medições)
4 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

Tabela 1. (Contínuo )

simulação e projeto de processos instáveis: controle, inicialização, desligamento, projeto de condições de


interrupção de processos em lote e semilote; planta dedicada, multifuncional e multiproduto
programação ideal de processos em lote e semilote
simulação dinâmica discreta de simulação de processos em lote e
semilote de colunas de destilação vinculadas
simulação de redes de trocadores de calor
simulação de trens de evaporadores
simulação de local: uso de energia, requisitos de serviços públicos, principais intermediários (por exemplo, HCl)
avaliação econômica de plantas e locais
otimização do projeto e condições operacionais
Computação online
otimização on-line para compensar as mudanças de desempenho, mercado e matéria-prima
reconciliação de dados on-line
controle de regulação on-line para garantir um desempenho estável em face de distúrbios,
diagnóstico de falha on-line
monitoramento de condição (previsão de deterioração do equipamento a partir de ruído, etc, medições)
otimização de inicialização, desligamento e trajetórias de mudança de carga
programação on-line, por exemplo, de operação de processo em lote

Auxílio ao processo de design


Software de layout de planta 3D
sistemas inteligentes de diagramas de tubulação e instrumentação
sistemas de lógica de projeto (projeto baseado em conhecimento)
software de intercâmbio com base nos padrões STEP das indústrias de processo (ISO 10303-221)

Síntese de processos
requisitos mínimos de energia ou utilidade para um
processo requisitos mínimos de energia ou utilidade para
um projeto de rede de trocador de calor ideal
projeto de rede de separação ideal
projeto de processo ideal por síntese de processo

Nesta seção, as ferramentas de software são descritas que auxiliam na invenção,


projetam de forma otimizada e permitem as incertezas inevitáveis que qualquer projetista
enfrenta. A validação do projeto e o controle do processo resultante são então considerados.
2.1. Projeto de moléculas auxiliado por computador.CAMD está cada vez mais rele-
vantajosa à medida que a indústria química se move para a posição de que seu principal objetivo é
vender efeitos em vez de produtos químicos. Portanto, ela vende detergentes, solventes, combustíveis e
fibras e, apenas incidentalmente, vende produtos químicos específicos que têm essas propriedades.
O CAMD vem se desenvolvendo há 30 anos com o objetivo de inventar produtos com
as propriedades desejadas. Por exemplo, tem sido usado para inventar solventes seletivos
que não incluem halogênios (para reduzir a toxicidade e a destruição da camada de ozônio e
para facilitar o tratamento de resíduos). Técnicas como o método de contribuição de grupo
permitem que as propriedades das moléculas sejam previstas antes de serem sintetizadas.
CAMD explora essas habilidades para projetar moléculas que possuem as propriedades
desejadas. Desenvolvimentos e aplicativos são fornecidos no livro editado por Achenie et al.
(2)
2.2. Síntese de processos auxiliada por computador.A síntese do processo foi
estudou por mais de 40 anos. A síntese do processo difere da otimização do processo nas
variáveis selecionadas para otimização. Otimização do processo ajusta apenas
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 5

parâmetros continuamente variáveis, como comprimentos, temperaturas e pressões. A


síntese do processo também otimiza variáveis discretas.
Em certo sentido, todo design de processo é uma síntese de processo. Assim, o designer
seleciona:

A sequência de operações
A escolha das operações unitárias (por exemplo, destilação extrativa ou extração
líquido / líquido)
A seleção de fluxo quente e frio, combinações de troca de calor A
escolha de agentes de separação

Na indústria, o projeto ainda é geralmente realizado pela hipótese de um fluxograma,


que é aprimorado de forma incremental como resultado de simulação e outros estudos. No
entanto, Johns (3) resume uma série de técnicas promissoras de síntese auxiliada por
computador. Muitos fornecem um design viável como uma saída direta da otimização.
Outras abordagens, por exemplo, pinch technology (4), fornecem metas de desempenho
como metas para o projeto detalhado subsequente. Os métodos matemáticos incluem
programação não linear inteira mista (MINLP), enumeração implícita (combinação de
programação dinâmica e ramificação e limite) e programação linear inteira mista (MILP). O
MILP é aplicado para processos bem conhecidos com propriedades físicas relativamente
ideais, para os quais os modelos lineares são adequados em uma gama limitada de
condições. Em particular, MILP é usado para projeto e otimização inicial de refinarias de
petróleo. A otimização rigorosa de inteiros ou inteiros mistos é computacionalmente difícil
em NP, e os tempos de execução podem se tornar excessivamente longos para problemas
grandes o suficiente para serem de significância industrial. Um exemplo da aplicação da
técnica por uma das principais escolas do MINLP é o artigo de ChavezIslas et al. (5). Como
consequência dos excessivos tempos de execução do computador que podem se originar no
MINLP e métodos matemáticos relacionados, ferramentas de inteligência artificial (IA)
também foram implantadas. Métodos heurísticos (IA) desenvolvem designs bons, embora
não necessariamente ótimos. Métodos matemáticos e heurísticos combinados também são
empregados, nos quais regras empíricas são aplicadas para reduzir o espaço de busca.
Otimização automática, seja matemática ou heurística, só pode considerar um número
limitado de critérios de desempenho (por exemplo, apenas o custo). Na prática, um projeto
será julgado também por outros critérios, como operabilidade, segurança e impacto
ambiental, muitos dos quais não podem ser adequadamente incluídos como restrições ou
objetivos na otimização. É, portanto, desejável que a otimização produza várias alternativas
que podem ser avaliadas em relação a esses critérios adicionais.

As estruturas de fluxogramas obtidas pela síntese do processo são freqüentemente


insensíveis a dados comerciais e técnicos incertos. O fracasso em obter uma estrutura de
planilha ideal é mais provável de resultar de deficiências no otimizador do que de incertezas
nos dados. Onde a escolha entre duas estruturas é sensível a um parâmetro incerto, é
desejável considerar ambas as alternativas contra outros critérios não incluídos na
otimização. (Para esse fim, vários métodos de síntese de processo produzem uma lista das
melhores opções candidatas.) Essa insensibilidade aos parâmetros do modelo permite que
modelos simplificados sejam empregados para determinar a gama de estruturas de
processo prováveis. Cada
6 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

estrutura é então subsequentemente simulada e otimizada usando modelos relativamente


rigorosos. Modelos simplificados podem ser mais resistentes a erros de tempo de execução e
mais de 1000 vezes mais rápidos do que modelos rigorosos. Ferramentas estão disponíveis para
ajustar modelos simplificados em relação a modelos rigorosos.
O benefício da síntese de processos é que números muito grandes (por exemplo,
milhões) de alternativas de processos podem ser avaliados implicitamente. A avaliação pode
identificar processos que são econômicos e reduziram as emissões ambientais. É
impraticável avaliar uma gama tão grande de alternativas manualmente. As autoridades
reguladoras exigem cada vez mais que os processos sejam avaliados para garantir que não
existam alternativas competitivas com menor impacto ambiental. A síntese do processo
permite que essas demandas sejam atendidas de maneira rigorosa. Não é mais adequado
apenas avaliar algumas alternativas de "espantalho".
2.3. Otimização e simulação.Uma gama de simulação comercial
programas estão disponíveis que cobrem simulação de estado estacionário e dinâmica. A
simulação tem sido amplamente usada para processos de estado estacionário por décadas,
e ferramentas mais recentes estão disponíveis cobrindo casos especiais, como fl uxo
multifásico em estudos de liberação de emergência, inicialização e desligamento. O software
de simulação e otimização está disponível em organizações comerciais como a AspenTech
(6) e em provedores menores, incluindo pacotes que podem ser usados gratuitamente.
Além disso, dezenas de especialistas menores fornecem software de simulação ou
otimização para cobrir áreas específicas de aplicação ou recursos específicos exigidos no
software de simulação (como cálculo de propriedades físicas). Esses produtos podem ser
acessados individualmente ou vinculados por meio de ferramentas como o CAPE-OPEN (7).
Simuladores podem ser usados de duas maneiras, geralmente conhecidas como '' modo de design '' e '' modo de simulação. '' No '' modo de design, '' as especificações de

desempenho são definidas para todas ou algumas das unidades. Por exemplo, as temperaturas de saída alvo ou funções de transferência podem ser definidas para trocadores de calor e as

concentrações de saída desejadas podem ser definidas para colunas de destilação. O simulador então calcula o desempenho total da unidade usando o equilíbrio de calor e material e dimensiona a

unidade uma vez que o equilíbrio geral é alcançado. No '' modo de simulação '', o tamanho e todas as dimensões físicas de cada unidade são especi fi cadas. Para cada etapa na iteração de

equilíbrio, cálculos de unidade suficientemente detalhados são executados para calcular fl uxos de saída, temperaturas e pressões de cada unidade. Anteriormente, os cálculos do '' modo de design

'' eram usados extensivamente. No entanto, cada vez mais cálculos do '' modo de simulação '' são empregados. É fácil definir condições fisicamente impossíveis no modo de design. Exemplos de

especificações impossíveis incluem o '' crossover '' de temperatura nos cálculos do trocador de calor, bem como as taxas de fl uxo de terceiros e subsequentes componentes impossíveis após a

especificação da separação de dois componentes principais na separação de multicomponentes. Sempre há uma resposta para o cálculo do modo de simulação - você simplesmente tem um

conjunto de hardware e empurra o material através dele. O resultado pode ser nenhuma reação, uma reação errada ou pressões ou temperaturas excessivamente altas, mas sempre há uma

resposta. Cada vez mais, a abordagem é projetar por meio de simulação. Exemplos de especificações impossíveis incluem o '' crossover '' de temperatura nos cálculos do trocador de calor, bem

como o terceiro impossível e as taxas de fl uxo de componentes subsequentes após a especificação da separação de dois componentes-chave na separação de multicomponentes. Sempre há uma

resposta para o cálculo do modo de simulação - você simplesmente tem um conjunto de hardware e empurra o material através dele. O resultado pode ser nenhuma reação, uma reação errada ou

pressões ou temperaturas excessivamente altas, mas sempre há uma resposta. Cada vez mais, a abordagem é projetar por meio de simulação. Exemplos de especificações impossíveis incluem o ''

crossover '' de temperatura nos cálculos do trocador de calor, bem como as taxas de fl uxo de terceiros e subsequentes componentes impossíveis após a especificação da separação de dois

componentes principais na separação de multicomponentes. Sempre há uma resposta para o cálculo do modo de simulação - você simplesmente tem um conjunto de hardware e empurra o

material através dele. O resultado pode ser nenhuma reação, uma reação errada ou pressões ou temperaturas excessivamente altas, mas sempre há uma resposta. Cada vez mais, a abordagem é

projetar por meio de simulação. O resultado pode ser nenhuma reação, uma reação errada ou pressões ou temperaturas excessivamente altas, mas sempre há uma resposta. Cada vez mais, a

abordagem é projetar por meio de simulação. O resultado pode ser nenhuma reação, uma reação errada ou pressões ou temperaturas excessivamente altas, mas sempre há uma resposta. Cada

vez mais, a abordagem é projetar por meio de simulação.

Além de estudar a operação normal, a simulação pode ser empregada para estudar (e
projetar) outras condições além das condições nominais de operação. Mais amplamente
estudadas são as condições de desligamento quando um processo opera a uma fração de sua
carga nominal. Os processos são normalmente projetados para atender à demanda máxima (ou,
quando o armazenamento é fornecido, à demanda média máxima). Durante os períodos de baixa
demanda, o processo deve funcionar com capacidade parcial ou construir um
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 7

estoque e, em seguida, feche até que o estoque se esgote. O objetivo da simulação de


redução pode ser determinar se há perda de eficiência (por exemplo, pode não ser possível
manter as temperaturas alvo) ou ganho de eficiência (melhor conversão com tempos de
residência mais elevados em reatores), se as alterações de design podem fornecer melhor
eficiência sob rejeição, ou se a operação de campanha é preferível à operação de rejeição. A
simulação também pode estabelecer se o processo pode operar com mudanças nas
especificações da matéria-prima (matérias-primas minerais e vegetais estão sujeitas a
variações de qualidade) e se pode operar em condições climáticas extremas (por exemplo,
temperaturas da água de resfriamento não baixas o suficiente ou fluidos esperados para
serem líquidos que congelam ou evaporam).
A simulação dinâmica pode ser usada para otimizar a operação de inicialização ou
desligamento e para planejar respostas a condições adversas. Esses estudos estão se tornando
mais importantes porque, por exemplo, durante a inicialização, os produtos podem ficar abaixo
dos padrões de qualidade comercial e pode haver liberação excessiva de poluentes. A otimização
dos procedimentos de inicialização pode minimizar o tempo de inicialização, a produção de
material não especificado e a liberação de poluentes. Pode ser necessário equipamento adicional
durante a inicialização para estabelecer as temperaturas e pressões operacionais e fornecer
fontes para os fluxos de reciclagem; essas reciclagens estão assumindo mais importância em
processos modernos e altamente integrados. Considerações semelhantes se aplicam às condições
de desligamento e de interrupção. Deve ser dada atenção especial às condições potencialmente
perigosas; a maioria dos incidentes que causam mortes e / ou impactos ambientais graves
ocorrem durante tais condições de operação fora do padrão. Na verdade, a consideração de tais
condições pode exigir um esforço significativo de redesenho.

2.4. Design flexível.Todos os processos reais são projetados e construídos no


face às incertezas. As incertezas podem ser comerciais (como tamanho do mercado, custos de matéria-prima e preços de venda do produto) e podem ser técnicas (como propriedades químicas e

físicas, taxas de transferência de calor e massa, cinética de reação, variabilidade de especificações de matéria-prima e incerteza em taxas de incrustação e decomposição). Muitas dessas incertezas

variam com o tempo. As características físicas, como dimensões do equipamento, são caras para alterar depois que uma planta de processo é construída. No entanto, taxas de fl uxo, temperaturas

e pressões podem ser alteradas. Portanto, se a especificação de produto desejada não pode ser alcançada com a vazão nominal, pode ser possível alcançá-la com uma vazão reduzida. O design

flexível reconhece que a operação pode ser otimizada após o início da produção e que a modificação retroajustada é possível onde as metas iniciais de produção não podem ser cumpridas. Ele

reconhece que pode não ser econômico projetar para garantir que, mesmo sob a pior combinação de resultados incertos, a taxa de produção alvo seja alcançada. O tamanho do mercado é

freqüentemente um dos parâmetros mais incertos nos quais um projeto de processo químico se baseia. À medida que o mercado cresce, pode haver a oportunidade de eliminar o gargalo de uma

planta que inicialmente apresenta desempenho inferior. O design flexível explora o trade-off entre, por um lado, aplicar margens de design excessivas e, por outro lado, correr o risco de que uma

taxa de produção alvo não possa ser atingida. Atualmente, a prática geral é empregar '' julgamento de engenharia '' para definir valores conservadores para os parâmetros incertos com '' margens

de projeto '' adicionadas quando apropriado. a taxa de produção alvo é atingida. O tamanho do mercado é freqüentemente um dos parâmetros mais incertos nos quais um projeto de processo

químico se baseia. À medida que o mercado cresce, pode haver a oportunidade de eliminar o gargalo de uma planta que inicialmente apresenta desempenho inferior. O design flexível explora o

trade-off entre, por um lado, aplicar margens de design excessivas e, por outro lado, correr o risco de que uma taxa de produção alvo não possa ser atingida. Atualmente, a prática geral é

empregar '' julgamento de engenharia '' para definir valores conservadores para os parâmetros incertos com '' margens de projeto '' adicionadas quando apropriado. a taxa de produção alvo é

atingida. O tamanho do mercado é freqüentemente um dos parâmetros mais incertos nos quais um projeto de processo químico se baseia. À medida que o mercado cresce, pode haver a

oportunidade de eliminar o gargalo de uma planta que inicialmente apresenta desempenho inferior. O design flexível explora o trade-off entre, por um lado, aplicar margens de design excessivas e,

por outro lado, correr o risco de que uma taxa de produção alvo não possa ser atingida. Atualmente, a prática geral é empregar '' julgamento de engenharia '' para definir valores conservadores

para os parâmetros incertos com '' margens de projeto '' adicionadas quando apropriado. O design flexível explora o trade-off entre, por um lado, aplicar margens de design excessivas e, por outro

lado, correr o risco de que uma taxa de produção alvo não possa ser atingida. Atualmente, a prática geral é empregar '' julgamento de engenharia '' para definir valores conservadores para os

parâmetros incertos com '' margens de projeto '' adicionadas quando apropriado. O design flexível explora o trade-off entre, por um lado, aplicar margens de design excessivas e, por outro lado,

correr o risco de que uma taxa de produção alvo não possa ser atingida. Atualmente, a prática geral é empregar '' julgamento de engenharia '' para definir valores conservadores para os

parâmetros incertos com '' margens de projeto '' adicionadas quando apropriado.

Ferramentas baseadas em computador para otimizar projetos sob incerteza estão em


desenvolvimento há muitos anos. Duas abordagens alternativas foram
8 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

relatado na literatura. A primeira é definir restrições rígidas para proibir os valores de violar
as restrições de margem de segurança. O artigo de Halemane e Grossman (8) ilustra essa
abordagem. O segundo é evitar restrições rígidas e, em vez disso, incluir estimativas do
custo real de transgredir a produção ou as especificações de qualidade. Esse método pode
ser chamado de método de restrição de custos e é ilustrado no artigo de Johns et al. (9).
Ambos os artigos têm aproximadamente 30 anos, mas certamente a Referência 9 mostra
que os métodos baseados em computador podem fornecer benefícios significativos no
projeto de plantas flexíveis em vez de projetar com estimativas de '' melhor estimativa '' ou
'estimativa conservadora' 'de variáveis incertas.
O benefício dos métodos de custo limitado, como o da Referência 9, é que restrições
rígidas nas taxas de produção e qualidade são evitadas. Em vez disso, a abordagem
reconhece que há flexibilidade na política de operação e penalidades realistas devem ser
aplicadas para deficiências que podem ocorrer sob resultados desfavoráveis aos
parâmetros incertos. A abordagem também evita descontinuidades bruscas na função de
custo, de modo que métodos simples de otimização irrestrita podem ser empregados.

2,5. Validação e análise detalhada.Nenhum projeto pode ser totalmente válido


datado por software. No entanto, as indústrias de processo são caracterizadas por grandes
projetos pontuais. Assim, protótipos não podem ser construídos e testados. Mesmo quando os
processos piloto ou em escala semitécnica são construídos, eles não podem explorar totalmente
todas as interações possíveis que podem ocorrer em escala total. No entanto, a maioria dos
processos funciona na primeira vez. Este nível de sucesso é alcançado pelo uso extensivo de
modelos de computador antes de finalizar o projeto. O desempenho geral é verificado usando os
modelos detalhados disponíveis no pacote de simulação disponível para os projetistas. O processo
geral é avaliado quanto à estabilidade do controle e para as condições de inicialização,
desligamento e ativação. Esta avaliação é feita com o uso de pacotes de análises e projetos
especializados individuais.
Esses pacotes de software individuais variam de análise hidráulica de coluna e bandeja
para colunas de destilação e adsorção / dessorção, passando por projeto detalhado de
trocador de calor, a software para simular cinética de morte microbiana para esterilização
biológica. Programas suplementares estão disponíveis para avaliar riscos específicos e
segurança geral. Um exemplo de risco específico é o da formação de hidratos em linhas de
gás de alta pressão. O software para avaliar a segurança geral inclui aquele para projetar
redes de liberação de emergência e para projetar diques para embarcações que correm o
risco de perder integridade.
A dinâmica de fluidos computacionais (CFD) é uma ferramenta amplamente usada
para estudar o fluxo através e entre as unidades de processo. As simulações podem incluir
transferência de calor e massa e podem ser por meio de geometrias complexas. Observe
que os resultados obtidos do CFD dependem criticamente dos modelos de fl uxo adotados.
Para fluidos newtonianos homogêneos, os resultados dependerão do modelo de turbulência
adotado. Geralmente, é preferível implantar modelos que foram usados com sucesso em
aplicativos semelhantes com números de Reynolds comparáveis. Para fl uxo através de
leitos empacotados e particulados, deve-se levar em consideração a possível resistência ao fl
uxo anisotrópico; alguns pacotes de CFD têm dificuldade em acomodar tal anisotropia.
Muitos fluidos de interesse para engenheiros são não homogêneos e / ou não newtonianos.
Esses fluidos incluem óleos lubrificantes, tintas, alimentos, suspensões, coloides, fundidos
de polímero, e fl uxos multifásicos (como misturas de gás / líquido). Quase nunca é possível
derivar, a partir dos primeiros princípios, o elemento constitutivo apropriado
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 9

equações para tais fluidos. Portanto, qualquer estudo CFD deve ser construído em
correlações empíricas e verificado por comparação com resultados medidos para aplicações
semelhantes.
2.6. Controle e Monitoramento On-line.Cobertura muito breve de controle
o software será fornecido aqui porque esta enciclopédia tem um artigo separado dedicado
ao controle. O software on-line é empregado por quatro razões:

1. Controle de regulação para manter as condições estáveis desejadas


2. Otimizando o controle para atingir e manter as condições operacionais ideais em face dos
parâmetros variáveis no tempo (decadência do catalisador, incrustação, mudança na
especificação de matérias-primas, etc)
3. Alarme e monitoramento de emergência, incluindo a emissão de alarmes visuais / sonoros e
desligamento de emergência automatizado
4. Controle de programação empregado tanto para programar processos em lote e
semilote e para operar procedimentos padrão de inicialização e desligamento

As medições on-line também são usadas para identificar falhas ou problemas em


potencial que podem exigir uma ação corretiva. Os sinais de monitoramento podem ser
obtidos diretamente de medições ou podem ser derivados por meio de um modelo de
processo continuamente atualizado. O modelo pode ser executado on-line (quando pode ser
vinculado a um modelo de otimização on-line) ou os sinais podem ser transmitidos para um
modelo off-line que é atualizado em intervalos regulares. O modelo off-line pode ser
conforme descrito posteriormente neste artigo. As medições de monitoramento podem ser
aquelas também usadas para fins de controle (como temperaturas, pressões e taxas de
vazão) ou podem ser sinais de monitoramento de condição (como o ruído de um rolamento
ou bomba).
Na maioria dos países, espera-se que o software de controle on-line requeira acreditação de qualidade como parte dos padrões de qualidade estabelecidos para todo o projeto da planta. ISO9001 é geralmente

aplicável e o software se enquadra nas diretrizes gerais dos padrões ISO9001. Existem adaptações específicas da ISO9001. Por exemplo, ISO / IEC 90003 produz diretrizes para a produção de software que atenda a ISO9001. A

ISO29001 se aplica especificamente ao gerenciamento da qualidade para o projeto, produção, instalação e serviço de produtos para as indústrias de petróleo, petroquímica e gás natural (dos quais o software é um

componente). ISO13485 é o padrão ISO para dispositivos médicos (e aplicativos médicos relacionados) e inclui software dentro de sua competência geral. Desse modo, o desenvolvimento e o uso de ferramentas de software

devem ser realizados dentro de uma estrutura geral de qualidade cobrindo todos os aspectos de projeto, construção e operação. Esses requisitos não implicam que todos os fornecedores e empreiteiros na cadeia de

abastecimento devam ser certificados individualmente quanto à qualidade; é responsabilidade do usuário final garantir que a atividade integrada tenha a qualidade adequadamente assegurada. Observe que os padrões se

aplicam igualmente a todo o procedimento de projeto e operação. No entanto, geralmente há mais preocupação com o software de controle on-line do que com o software off-line, porque o software on-line faz parte da

entrega final e está permanentemente instalado da mesma forma que um disco de ruptura ou qualquer outro componente projetado para garantir a operação segura e eficiente do processo. e operação. Esses requisitos não

implicam que todos os fornecedores e empreiteiros na cadeia de suprimentos devam ser certificados individualmente pela qualidade; é responsabilidade do usuário final garantir que a atividade integrada tenha a qualidade

adequadamente assegurada. Observe que os padrões se aplicam igualmente a todo o procedimento de projeto e operação. No entanto, geralmente há mais preocupação com o software de controle on-line do que com o

software off-line, porque o software on-line faz parte da entrega final e está permanentemente instalado da mesma forma que um disco de ruptura ou qualquer outro componente projetado para garantir a operação segura e

eficiente do processo. e operação. Esses requisitos não implicam que todos os fornecedores e empreiteiros na cadeia de suprimentos devam ser certificados individualmente pela qualidade; é responsabilidade do usuário final

garantir que a atividade integrada tenha a qualidade adequadamente assegurada. Observe que os padrões se aplicam igualmente a todo o procedimento de projeto e operação. No entanto, geralmente há mais preocupação

com o software de controle on-line do que com o software off-line, porque o software on-line faz parte do produto final e está permanentemente instalado da mesma forma que um disco de ruptura ou qualquer outro

componente projetado para garantir a operação segura e eficiente do processo. é responsabilidade do usuário final garantir que a atividade integrada tenha a qualidade adequadamente assegurada. Observe que os padrões

se aplicam igualmente a todo o procedimento de projeto e operação. No entanto, geralmente há mais preocupação com o software de controle on-line do que com o software off-line, porque o software on-line faz parte do

produto final e está permanentemente instalado da mesma forma que um disco de ruptura ou qualquer outro componente projetado para garantir a operação segura e eficiente do processo. é responsabilidade do usuário

final garantir que a atividade integrada tenha a qualidade adequadamente assegurada. Observe que os padrões se aplicam igualmente a todo o procedimento de projeto e operação. No entanto, geralmente há mais

preocupação com o software de controle on-line do que com o software off-line, porque o software on-line faz parte do produto final e está permanentemente instalado da mesma forma que um disco de ruptura ou qualquer

outro componente projetado para garantir a operação segura e eficiente do processo.


10 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

2.7. Melhoria off-line de processos existentes.Otimização de


a operação da planta pode ser alcançada por uma combinação de computação on-line e off-
line.
A primeira etapa em qualquer otimização é determinar as condições reais de fluxo no
processo. É muito improvável que a operação corresponda exatamente às condições do
projeto. Ao mesmo tempo, toda medição exibe algum erro e muitas características
importantes do processo nem são medidas. Para fazer a melhor estimativa das condições
atuais do processo, um software para validação e reconciliação de dados (DVR) pode ser
empregado. Esse software está disponível em muitos fornecedores, por exemplo, Belsim SA
(10). Esse software compreende um simulador de processo com rotinas estatísticas
vinculadas que refinam o equilíbrio de calor e material para fornecer estatisticamente a
melhor estimativa do desempenho real do equipamento. Valores como coeficientes de
transferência de calor, que foram estimados na fase de projeto, agora podem ser
conhecidos com mais precisão (e suas mudanças ao longo do tempo podem ser rastreadas).
As leituras do instrumento medido precisam ser ajustadas para compensar os erros que
ocorrem por várias razões. Exemplos de fontes de erro de medição incluem instabilidade de
operação (que dá origem a valores medidos flutuantes aleatoriamente), erros aleatórios nos
instrumentos de medição, erros de calibração e erros de interrogação e transmissão.
Também pode haver erros grosseiros ('' outliers '') onde a leitura está errada como resultado
de uma falha grave no instrumento de medição, sua localização ou interpretação. O
software pode detectar e eliminar esses erros (normalmente com validação de entrada do
usuário). Os valores discrepantes podem ser originados, por exemplo, de instrumentos de
medição com falha ou mal conectados. Uma variedade de métodos pode ser empregada
para identificar e eliminar outliers, incluindo métodos de mínimos quadrados modificados.
Um exemplo de mínimos quadrados modificados é apresentado aqui. Em procedimentos
tradicionais de ajuste de mínimos quadrados, minimize:

S ¼ SCeue2 eu

Onde Ceu é o peso da medição eu e eeu é a diferença entre o valor medido e o valor calculado
a partir do modelo:

eeu ¼ y0 eu yeu

0
Onde yeu é o valor medido e yeu é o valor calculado pelo modelo de simulação (cujo valor
depende dos parâmetros do modelo que devem ser ajustados).
Usando esse método tradicional de mínimos quadrados, os valores discrepantes podem ter
um grande impacto no modelo ajustado. (Um ponto 10 vezes mais longe da linha de melhor
ajuste do que os outros contribuirá 100 vezes mais para o valor deS como qualquer um dos
pontos '' corretos '', e isso arrastará o ajuste para longe do valor correto.)
Uma função de erro modi fi cada pode ser empregada, como:

S ¼ SCeue2 i =ð1 º e2 eu º
i =uma2

Nesta equação, o termo de erro é quase o mesmo que no mínimo tradicional


quadrados se adequam a erros muito menores do que o limite umaeu. No entanto, o máximo de '' erro ''
para um outlier é limitado a umaeu.
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 11

Após a validação e reconciliação dos dados, estudos de otimização semelhantes aos


realizados na fase de projeto podem ser realizados. Os processos raramente funcionam
exatamente como projetado. As incertezas permitidas no projeto são amplamente
resolvidas na operação, o que permite uma simulação mais precisa do que aquela disponível
para os projetistas. Maior precisão permite a otimização da política operacional para
explorar resultados favoráveis às incertezas e mitigar as consequências de resultados
desfavoráveis. Normalmente, 20 a 50 variáveis estão disponíveis para otimização. Além de
2 ou 3 variáveis de otimização, é impossível determinar as condições ideais manualmente,
e o ótimo pode até ser contra-intuitivo. Existem exemplos em que a otimização off-line
dobrou ou triplicou as margens operacionais dos processos. O impacto na lucratividade da
planta pode, portanto, ser alto. Estudos off-line também são realizados para avaliar a
melhoria potencial do processo, por exemplo, por meio da modificação dos cronogramas
operacionais ou do projeto de retroajuste. Além disso, esses modelos refinados podem ser
empregados para planejar mudanças na operação. por exemplo, para planejar um período
de operação de abertura. Também foi possível, em várias ocasiões, aumentar a produção
além da capacidade nominal de projeto.

3. Uso de software de engenharia

A responsabilidade moral e profissional pelas decisões de engenharia recai sobre o


engenheiro que toma as decisões, e não sobre os autores de qualquer software empregado.
O engenheiro precisa mostrar a devida diligência na preparação, realização e interpretação
de um estudo baseado em computador. Este artigo descreve algumas etapas que devem ser
seguidas para criar uma trilha de auditoria consistente com um estudo que mostra a devida
diligência. Normalmente, a responsabilidade legal também recai sobre o engenheiro que
toma as decisões. Os engenheiros precisam registrar uma trilha de auditoria ligando cada
decisão aos dados ou estimativas originais, com limites nas incertezas dessas estimativas.
Quando o engenheiro não for pessoalmente responsável pelo código ou dados, deve haver
um registro dos testes feitos para determinar a confiabilidade da fonte empregada.

Os produtores e vendedores de software incluem cláusulas em seus termos e


condições que os isentam de toda responsabilidade por perdas físicas ou financeiras que
podem resultar do uso de seu software. (Esses termos também se aplicam a sistemas
operacionais e compiladores dos principais fornecedores de software.) Esta seção considera
a responsabilidade do engenheiro que usa o software de fornecedores terceirizados e as
etapas que podem ser executadas para cumprir essa responsabilidade. Uma parte
significativa do material aqui apresentado deriva da orientação do Institution of Chemical
Engineers para usuários de software de engenharia (11).
Os engenheiros que usam programas de computador escritos por terceiros devem compreender
completamente o aplicativo ao qual o programa é aplicado. Eles devem fornecer uma trilha de auditoria
de decisão para que todas as recomendações possam ser verificadas. A trilha de auditoria deve incluir:

1. Uma declaração clara do problema que está sendo enfrentado


2. Uma declaração das suposições feitas e sua justificativa
3. Uma revisão do software aplicável ao problema
12 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

4 Identificação das espécies químicas que podem se desenvolver


5 Revisão das fontes de dados e a faixa de temperatura, pressão e composição sobre a
qual são válidos
6 Revisão dos modelos empregados pelo software, sua validade e aplicabilidade

7 Um registro dos testes usados para determinar a exatidão do software empregado

8 Estimativa dos erros que podem ser introduzidos através dos dados ou dos modelos

9 Testes de sensibilidade para avaliar as consequências de possíveis dados ou erros de


10 modelo Soluções alternativas que foram geradas
11 Uma avaliação crítica do desempenho e dos riscos das soluções alternativas

12 A solução recomendada

A trilha de auditoria também deve incluir todas as mensagens de erro geradas pelo
software utilizado e uma avaliação crítica das implicações das mensagens.
A definição do problema é o ponto de partida vital para o estudo. As metas
econômicas, de segurança e ambientais devem ser claramente definidas. Para a produção
de materiais, os requisitos de pureza do produto e taxa de produção devem ser declarados e
as razões para esses requisitos devem ser registradas. Por exemplo, os usos finais do
produto podem ser fornecidos e as consequências das impurezas podem ser anotadas.

O software disponível para o estudo deve ser listado. Um estudo pode empregar até
30 programas separados. Estes podem variar de modelagem simplificada e software de
síntese para gerar uma gama de variantes de processo possíveis, através de simulação de
processo detalhada, a software para projeto mecânico, avaliação de segurança e avaliação
de impacto ambiental. Cada programa potencial deve ser avaliado de acordo com critérios
de adequação ao propósito; esses critérios são discutidos com mais detalhes
posteriormente neste artigo. Deve-se observar até que ponto cada programa foi validado.
Programas de uso geral obtidos de fornecedores terceirizados podem ser bem validados.
No entanto, tais programas não terão sido validados para o problema específico ao qual
devem ser aplicados.

Todo software precisa ser validado tanto pelo usuário quanto pelo gravador (11,12). A
documentação deve descrever completamente os modelos empregados e fornecer
orientações claras sobre o uso do programa. Se esta informação for de fi ciente, é indicativo
de que o programa também pode ser de fi ciente. Onde a empresa que emprega o
engenheiro tem padrões internos, um software validado pela empresa deve ser empregado.
O engenheiro deve compreender claramente os fenômenos que estão sendo modelados
pelo software. Não é possível assumir a responsabilidade por decisões tomadas por
ignorância. As empresas devem contratar um consultor ou especialista interno em qualquer
software que utilizem. Desta forma, todos os usuários podem consultar especialistas que
entendem perfeitamente o software empregado. O programa deve ser verificado para
sistemas mais simples para os quais os resultados são conhecidos com antecedência.
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 13

Uma parte importante de qualquer estudo é identificar as espécies químicas que


podem ocorrer; nenhum programa de computador pode modelar componentes omitidos
dos dados. Componentes menores podem se acumular se não houver maneira de
descarregá-los. Existem casos (particularmente com o processo em lote) em que
componentes menores causaram explosões e liberações tóxicas. Esses componentes
menores também podem modificar as propriedades das misturas, por exemplo, causando
ou quebrando azeótropos.
Para cada componente químico, a confiabilidade dos dados disponíveis deve ser revisada e as fontes de dados devem ser identificadas. Onde as propriedades são representadas por parâmetros em equações

correlacionadas, o intervalo válido das correlações deve ser estabelecido para garantir que elas se apliquem ao problema específico a ser resolvido. Devem ser estabelecidas bandas de erro para os valores previstos pelas

correlações. Onde valores fora da faixa ajustada são necessários, as extrapolações devem ser baseadas em princípios termodinâmicos fundamentais e na aplicação da teoria com uma base científica sólida, como a teoria

cinética dos gases. Muitas equações correlacionadas são polinômios com pouca base científica sólida. Uma extrapolação baseada em princípios científicos será mais confiável do que uma extrapolação baseada em uma

fórmula polinomial de um banco de dados. Onde os valores são extrapolados, os limites de erro também devem ser definidos por referência a princípios científicos. Um cuidado especial deve ser tomado quando as condições

próximas a um ponto crítico se desenvolverem. Considerações semelhantes se aplicam aos dados estimados quando faltam dados experimentais. Não se deve presumir que os dados de livros de referência conhecidos são

confiáveis. Esses livros negam expressamente a responsabilidade por erros. Os dados dessas fontes devem ser verificados quanto à consistência termodinâmica e à consistência com dados de espécies químicas semelhantes.

Considerações semelhantes se aplicam a dados e correlações fornecidos com software comercial. A confiabilidade de tais dados deve ser determinada entrando em um acordo de confidencialidade com o fornecedor do

software ou comparando as previsões com experimentos e dados de outras fontes. limites de erro também devem ser estabelecidos por referência a princípios científicos. Deve-se tomar cuidado especial quando ocorrerem

condições próximas a um ponto crítico. Considerações semelhantes se aplicam aos dados estimados quando faltam dados experimentais. Não se deve presumir que os dados de livros de referência conhecidos são confiáveis.

Esses livros negam expressamente a responsabilidade por erros. Os dados dessas fontes devem ser verificados quanto à consistência termodinâmica e à consistência com dados de espécies químicas semelhantes.

Considerações semelhantes se aplicam a dados e correlações fornecidos com software comercial. A confiabilidade de tais dados deve ser determinada entrando em um acordo de confidencialidade com o fornecedor do

software ou comparando as previsões com experimentos e dados de outras fontes. limites de erro também devem ser estabelecidos por referência a princípios científicos. Deve-se tomar cuidado especial quando ocorrerem

condições próximas a um ponto crítico. Considerações semelhantes se aplicam aos dados estimados quando faltam dados experimentais. Não se deve presumir que os dados de livros de referência conhecidos são confiáveis.

Esses livros negam expressamente a responsabilidade por erros. Os dados dessas fontes devem ser verificados quanto à consistência termodinâmica e à consistência com dados de espécies químicas semelhantes.

Considerações semelhantes se aplicam a dados e correlações fornecidos com software comercial. A confiabilidade de tais dados deve ser determinada entrando em um acordo de confidencialidade com o fornecedor do

software ou comparando as previsões com experimentos e dados de outras fontes. Deve-se tomar cuidado especial quando ocorrerem condições próximas a um ponto crítico. Considerações semelhantes se aplicam aos dados

estimados quando faltam dados experimentais. Não se deve presumir que os dados de livros de referência conhecidos são confiáveis. Esses livros negam expressamente a responsabilidade por erros. Os dados dessas fontes

devem ser verificados quanto à consistência termodinâmica e à consistência com dados de espécies químicas semelhantes. Considerações semelhantes se aplicam a dados e correlações fornecidos com software comercial. A

confiabilidade de tais dados deve ser determinada entrando em um acordo de confidencialidade com o fornecedor do software ou comparando as previsões com experimentos e dados de outras fontes. Deve-se tomar

cuidado especial quando ocorrerem condições próximas a um ponto crítico. Considerações semelhantes se aplicam aos dados estimados quando faltam dados experimentais. Não se deve presumir que os dados de livros de

referência conhecidos são confiáveis. Esses livros negam expressamente a responsabilidade por erros. Os dados dessas fontes devem ser verificados quanto à consistência termodinâmica e à consistência com dados de espécies químicas semelhantes. Considerações semelhantes se aplicam a

Recomenda-se que as previsões de propriedades físicas sejam exibidas graficamente


para fornecer uma comparação mais clara do que a disponível em uma tabela de números.
As propriedades da mistura precisam ser avaliadas da mesma maneira. Ao estudar misturas
binárias, a validação deve incluir concentrações muito baixas de cada componente. A teoria
simplificada está disponível para baixas concentrações, e erros de descontinuidade (onde as
equações de mistura diferem das equações de componentes puros) são mais prováveis de
serem aparentes.
As correlações e os dados devem ser aplicados apenas nas condições para as quais
foram estabelecidos. Por exemplo, se as correlações foram derivadas para misturas não
polares, é improvável que sejam válidas para misturas polares. O uso de computadores não
elimina a necessidade de investigação experimental. Quando uma mistura não foi estudada
anteriormente, pode ser necessária a confirmação experimental das propriedades previstas.

Os modelos empregados devem ser validados de forma semelhante. Os fornecedores de


software devem fornecer todos os detalhes dos modelos que empregam. A aplicabilidade dos
modelos precisa ser verificada. Por exemplo, se a pressão de um gás em fluxo muda em mais de
10% ou 20%, modelos de fluxo compressíveis são necessários. Quanto aos dados de propriedades
físicas, os modelos devem ser verificados quanto à continuidade em pontos onde o modelo pode
mudar. Por exemplo, a queda de pressão para uma fase bifásica
14 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

gás / líquido deve se aproximar da queda de pressão de um gás para baixas concentrações
de líquido.
Pode ser necessário avaliar a inicialização, bem como o desempenho estável. Por exemplo,
um número significativo de contravenções de descarga ambiental ocorre durante a inicialização
quando os catalisadores não atingiram a temperatura de operação e os sistemas de separação
não estão funcionando com plena eficiência. Deve-se tomar cuidado para que os modelos de
simulação não estável sejam adequados para a inicialização da modelagem. Modelos dinâmicos
desenvolvidos para estudos de controle de regulação raramente são válidos em uma faixa
suficiente para estudos de inicialização e desligamento.
Soluções alternativas devem ser consideradas. Por exemplo, ao gerar um projeto de
processo, processos alternativos devem ser gerados, com estruturas de planilha alternativas
e operações unitárias alternativas. Em muitos países, é um requisito que alternativas
genuínas sejam avaliadas e a alternativa com o melhor desempenho ambiental seja
selecionada. A avaliação adequada dessas alternativas é, portanto, uma parte vital da trilha
de auditoria de decisão que leva ao projeto final. O impacto das incertezas nas alternativas
também deve ser avaliado; algumas alternativas podem ser mais sensíveis a dados incertos
do que outras.

Quaisquer que sejam as ferramentas de software escolhidas, os engenheiros devem


lembrar que uma planta de processo pode durar décadas e o software usado e os
resultados obtidos fazem parte do dossiê de projeto que permanece com a planta ao longo
de sua vida. As empresas de software ganham a vida lançando novas versões de seus
softwares a cada poucos anos. Portanto, em 10 anos, pode ser impossível reproduzir os
resultados originais no software mais recente disponível. Conclui-se que o código-fonte e os
compiladores devem ser arquivados junto com o restante do design. Os programas que
param de funcionar após uma data predefinida não devem ser usados para nenhum
elemento significativo do projeto.
Breves notas são fornecidas agora sobre as considerações especiais no uso de
planilhas e redes neurais, seguidas por uma metodologia de análise de sensibilidade para
avaliar o efeito integrado de várias incertezas.
3.1. Uso de planilhas.Conforme discutido na seção '' Programação '',
a garantia da qualidade dos resultados obtidos nas planilhas requer atenção especial. Em
particular, existe a possibilidade de o usuário alterar inadvertidamente as fórmulas nas
células. Devem ser emitidas diretrizes rígidas sobre o uso de planilhas. É necessário cuidado
para aplicações críticas de segurança. A trilha de auditoria de decisão deve incluir uma cópia
completa do programa de planilha, não apenas seus resultados.
A orientação sobre a preparação e uso de planilhas é fornecida por Barker et al. (13).
Observe que a Nota de Orientação informa que as planilhas não devem ser usadas para
aplicativos de alta integridade. Portanto, as planilhas são ferramentas de definição de
escopo muito úteis para explorar relacionamentos e traçar gráficos comparativos. No
entanto, exceto para usos simples e imediatamente transparentes, os aplicativos devem ser
restritos. Onde tal transparência pode não ser aparente, planilhas ainda podem ser
empregadas para cálculos de escopo, mas o código final deve ser escrito em linguagem bem
documentada, suportável e de alto nível apoiada por um padrão ISO. (Observe que há um
padrão ISO aberto que cobre planilhas e outros softwares de escritório, a saber, ISO / IEC
26300: 2006.)
3.2. Redes neurais.As redes neurais contêm um grande número de
parâmetros ajustados. Estatisticamente, quanto maior o número de parâmetros, menos
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 15

significado que tal ajuste tem. Em muitos casos, a significância estatística das previsões da
rede neural é mínima. Conseqüentemente, a rede neural pode ser um método eficaz de
interpolação das condições em que foi treinada, mas pode não ser uma boa base para
prever o comportamento fora da região de treinamento. Os aplicativos sob controle podem
ser válidos porque há um fluxo constante de dados permitindo que o retreinamento seja
realizado e os dados provavelmente abrangem as condições previstas. Em outras aplicações,
no entanto, os engenheiros devem usar redes neutras com cautela.

3.3. Análise sensitiva.É responsabilidade do engenheiro garantir


que as incertezas são compreendidas e abrangidas. As incertezas têm origem nos dados e
nos modelos dos programas empregados. As incertezas se estendem aos possíveis riscos,
confiabilidade e impacto ambiental do processo estudado. Uma vez que as incertezas
tenham sido identificadas, testes de sensibilidade podem ser realizados para avaliar seu
impacto. As consequências podem ser classificadas em riscos à segurança, impacto
ambiental, operacionalidade e impacto econômico.
Esta seção apresenta um método de adaptação de testes de sensibilidade
convencionais para fornecer informações estatísticas adicionais sobre o provável
desempenho geral do processo. O tratamento a seguir fornece uma base racional para
selecionar as quantidades de perturbação e, em seguida, um método de combinação dos
resultados para obter uma estimativa melhor do desempenho provável e da incerteza no
desempenho. Ao escolher os pontos em que as perturbações são calculadas, os valores
esperados e as variâncias podem ser calculados usando umn-quadratura hermite
dimensional.
Como ilustração, o valor esperado, ye, de um valor calculado, y, Aquilo é um
função de três paridade incertaZumaZm

Zeters é:
ye ¼ y C1C2C3dx1dx2dx3

Nesta equação, as funções C são funções de distribuição normal (gaussiana)


correspondentes às variáveis incertas x.
Uma quadratura que gera uma avaliação exata para a integral quando o
expressão y é até um cúbico em cada um dos parâmetros é:

ye ¼ y0 þ ½ðyfs1g þ yf s1gÞ =2 y0 þ ½ðyfs2g þ y½ s2 Þ =2 y 0

þ ½ðyfs3g þ yf s3Þ = 2_ y0

'' Até cúbico '' inclui termos em x1; xeuxj; x2 eu ; xeuxjxk; e x2 eu xj.
Generalizado para n-dimensões produz:

ye ¼ y0 º S½ðyfseug þ yf seugÞ =2 y0 ð1º

Onde y pode ser qualquer medida de desempenho incerta. y0 é o valor de y com


colocado com todos os parâmetros incertos em seus valores esperados. yfseug é o valor de y
calculado com todos os parâmetros incertos em seus valores esperados, exceto para
número variável eu, que tem seu valor em ðx0eu º seuº. A soma é sobre todos os parâmetros
incertos. seu é o desvio padrão do parâmetro eu.
16 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

Observe que a equação 1 combina valores obtidos de uma análise de sensibilidade


convencional em que cada parâmetro incerto, por sua vez, é perturbado sobre seu valor
esperado. Assim, organizando adequadamente uma análise de sensibilidade convencional, é
possível calcular os valores esperados das medidas de desempenho necessárias. A fórmula
também elimina o efeito das interações entre os parâmetros incertos até a quarta potência
em uma aproximação polinomial.

Deve-se tomar cuidado ao empregar a fórmula porque as variáveis (tanto do lado


direito quanto do esquerdo) da equação 1 são restritas, de modo que deve ser possível que
todas sejam normalmente distribuídas. Especificamente, eles devem ser capazes de assumir
valores na faixa1 para þ1. Variáveis com faixas restritas devem ser transformadas em
variáveis com as faixas irrestritas exigidas. As seguintes transformações foram
consideradas eficazes:
Para variáveis z isso deve ser positivo, pegue a transformação:

x ¼ emfzg

Para variáveis que devem estar dentro de um intervalo fixo, a <z <b, pegue a
transformação:

x ¼ emfðzaÞ = ðbelezaÞg

Exemplos de variáveis que devem ser fisicamente positivas são os coeficientes de


transferência, volumes, densidades e temperaturas e pressões absolutas. Para essas
variáveis, é mais significativo expressar o intervalo de confiança como uma porcentagem do
valor absoluto. Assim, se houver 68% de confiança de que o valor está dentro de 20% da
melhor estimativa, o valor des é 0,182. A justificativa é que 68% das estimativas caem dentro
do desvio padrão, de modo que o padrão
o desvio é de 20%. O valor 0,182 é o logaritmo de 1,20 (ou seja, o valor mais 20%).

Exemplos de variáveis que devem estar fisicamente dentro de um intervalo fixo são
eficiências e concentrações molares, ambas as quais devem estar dentro da faixa
0,0 a 1,0. Para essas variáveis:

x ¼ emfz =ð1 zÞg

Pegando um valor mais provável de z ¼ 90% e s ¼ 0,182, uma confiança de 68% é encontrada que
z encontra-se no intervalo: 0,882 < z < 0.915. Quando variáveis incertas limitadas estão perto de
seus limites, mesmo incertezas relativamente grandes na física subjacente dão origem a essas
bandas de erro relativamente estreitas.
Às vezes, não é conveniente calcular com perturbações dos parâmetros incertos de
exatamente 1 desvio padrão. Por exemplo, pode ser mais conveniente definir as
perturbações de modo que 80%, 90% ou 95% da faixa de incerteza esteja dentro dos limites
definidos pelas perturbações. Em tais circunstâncias, é possível generalizar a equação 1 para
permitir perturbações diferentes do desvio padrão. A seguinte relação então se mantém:

ye ¼ y0 º S½ðyfDxeug þ yf DxeugÞ =2 y0 ðsi =Dxeuº2


ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 17

Aqui, nomenclatura semelhante é usada para aquela empregada para a equação 1. Ou seja,
yfDxeug é o valor de y calculado com todos os parâmetros incertos em seus esperados
valores exceto para o número da variável eu, que tem seu valor em ðx0eu º Dxeuº.
Não apenas a equação 1 vale para todas as medidas de desempenho, ela também vale
para os quadrados desses níveis de desempenho. Calculando o valor esperado
do quadrado da medida de desempenho, sua variância, s2 y, pode ser calculado
a partir de:

s2y ¼ y2 0 y2e º S½ðy2fseug þ y2f seugÞ =2 y2 0 ð2º

Novamente, a relação pode ser generalizada para permitir perturbações diferentes de 1


desvio padrão, a saber:

s2y ¼ y2 0 y2e º S½ðy2fDxeug þ y2f DxeugÞ =2 y2 0 ðsi =Dxeuº2

Observe que momentos superiores a y2 não pode ser calculado porque a quadratura calcula
apenas integrais com precisão de 2 na medida de desempenho.
Onde existem n parâmetros incertos, (2n º 1) simulações são necessárias
para calcular todos os valores esperados e variações de todas as medidas de desempenho.
Assim, o número total de cálculos é independente do número de medidas de desempenho a
serem avaliadas e não são necessários mais cálculos para estimar as variações de todas
essas medidas de desempenho.
No projeto de engenharia, a maioria dos parâmetros tem incertezas independentes.
Além disso, onde a interação é moderada, a fórmula da quadratura permite adequadamente
as interações (até termos de terceira ordem). No entanto, fortes interdependências podem
se desenvolver, particularmente quando dois ou mais parâmetros incertos são estimados a
partir de um conjunto de resultados experimentais. Por exemplo, uma constante de taxa
medida experimentalmente (K) normalmente pode ser calculado usando:

K ¼ Ae E = RT ð3º

Na equação 3, tanto o pré-exponencial, UMA, e a energia de ativação, E, será incerto e há


uma interação entre as duas estimativas. Assim, altas taxas de reação podem ser obtidas
aumentandoUMA ou diminuindo E. Como consequência, a incerteza resultante em K pode
ser menor do que a incerteza em UMA ou
E. Essas estimativas correlacionadas são reconhecidas na análise de sensibilidade
convencional e etapas são executadas para conduzir a análise de sensibilidade com
variáveis com incertezas não correlacionadas. A abordagem mais simples é incluir um
parâmetro que fornece diretamente a incerteza na taxa de reação. Por exemplo, use o
multiplicador,s, Onde
K ¼ sAe E = RT

Tratar UMA e E como certas variáveis e s como uma variável incerta com uma melhor estimativa
de 1,0. Claramente,s deve ser positivo, de modo que (como discutido) a variável transformada seja
empregada:

x ¼ emfsg
18 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

Conforme discutido para outras variáveis, se o desvio padrão da taxa de reação for de 20%,
o transformado s terá uma melhor estimativa de 0 e um desvio padrão de 0,182.

É possível empregar fórmulas de quadratura mais precisas, mas isso ocorre às custas
de um cálculo muito maior. Ao mesmo tempo, os limites raramente são conhecidos com
precisão e a extensão em que é válido empregar uma distribuição Gaussiana normal dos
erros é ainda menos bem estabelecida. Portanto, não há justificativa para o emprego de
fórmulas de quadratura mais precisas.
Essa abordagem para integrar incertezas pode ser incorporada ao software.
Raramente é, mas os engenheiros rotineiramente realizam análises de sensibilidade e os
métodos descritos anteriormente podem ser empregados para extrair mais informações de
tal análise. Se as perturbações forem escolhidas apropriadamente, as equações 1 e 2 podem
ser usadas para calcular o efeito integrado das incertezas sobre o desempenho esperado de
um processo e a confiança nesse desempenho.

4. Desenvolvimento de Software de Engenharia

Esta seção apresenta princípios gerais no desenvolvimento de software de engenharia. O


software de engenharia deve:

1. Atender às metas de engenharia definidas


2. Ser baseado em princípios sólidos de química e física
3. Ser testável e sustentável
4. Ser testado para garantir que codifica corretamente os modelos nos quais se baseia,
por exemplo, que é dimensionalmente consistente
5. Leve em consideração a precisão finita da aritmética computacional para produzir resultados
numericamente precisos

Esta seção cobre o projeto, a preparação e os testes do programa, além de aspectos


da análise numérica relevantes no desenvolvimento de software de engenharia. Os
princípios gerais são ilustrados com exemplos de tópicos de engenharia química bem
conhecidos.
4.1. Desenho do programa.Diretrizes amplamente baseadas no Espaço Europeu
Padrões de Engenharia de Software da Agência (ESA) são fornecidos (14). Essas diretrizes
são facilmente adaptáveis a aplicações específicas de engenharia. As empresas de software
profissional podem aplicar ferramentas mais detalhadas e formais. Por exemplo, a Uni fi ed
Modeling Language (15) apresenta uma abordagem formal orientada a objetos para o
projeto de software, apoiada por ferramentas de software comerciais. Numerosos textos
estabelecidos (por exemplo, NIST (16) e Perry (17)) oferecem orientação para engenheiros
de software profissionais. Tanzio (12) coloca esses métodos de validação em um contexto de
engenharia química. A abordagem geral fornecida aqui é consistente com essas
ferramentas detalhadas.
O primeiro estágio em qualquer projeto de software é especificar exatamente o que o
usuário deseja, os '' Requisitos do Usuário ''. Quando o software automatiza um procedimento
bem conhecido dos usuários finais pretendidos, esses requisitos devem ser elaborados em
consulta com os usuários finais . Onde o software pode fornecer funcionalidade
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 19

além da experiência dos usuários atuais, a contribuição de inovadores no campo é


necessária.
A justificativa (raciocínio) por trás de cada requisito deve ser registrada para garantir
que o programa seja escrito com eficiência. Por exemplo, pode haver um requisito de que
uma simulação seja capaz de lidar com o fluxo de gás / líquido de duas fases. Se o uso
pretendido for simular a ebulição e evaporação da água para alimentar turbinas a vapor,
toda a faixa de 100% líquido a 100% vapor deve ser coberta. O equilíbrio vapor / líquido
também deve ser abordado, e uma abordagem usando termodinâmica a vapor pode ser
apropriada. Por outro lado, o uso pretendido pode ser a simulação de fl uxo em gasodutos
nos quais podem ocorrer pequenos níveis de contaminação por líquido. Esse requisito é
mais fácil de atender com um software mais simples, rápido e testado com mais facilidade.

Os requisitos do usuário cobrem:

A funcionalidade, ou seja, os problemas de engenharia química a serem resolvidos.


A interface do usuário, ou seja, como o usuário irá interagir com o programa (a
aparência de quaisquer janelas, o uso de botões e teclas, etc.).
O hardware (ou faixa de hardware) no qual o programa deve ser executado, por exemplo, um
servidor para uma rede, um sistema PLC / SCADA para uma sala de controle, um PC ou Apple
Mac, um aplicativo de telefone ou software integrado para uma alta - instrumento de integridade
ou dispositivo médico.
O sistema operacional (ou sistemas operacionais) em que o programa será
executado, por exemplo, UNIX, Linux, Microsoft, Mac OS ou sistema operacional
integrado seguro para aplicativos essenciais à segurança.
O ambiente em que o programa será utilizado: Será autônomo, acessado pela Web ou
utilizado de alguma outra forma, por exemplo, como uma função adicional a ser
anexada a uma planilha?
Os programas aos quais deve estar conectado: Importa dados de outro programa e /
ou exporta resultados para outro programa?
Os serviços que deve usar: por exemplo, deve empregar um pacote de propriedades
físicas definidas?
Para programas on-line, uma lista completa de todas as entradas e saídas é necessária (por exemplo,
para controlar válvulas ou de sensores).

Os requisitos do usuário priorizam a funcionalidade necessária. Os requisitos ''


essenciais '' devem ser atendidos na primeira versão; sem essa funcionalidade, o software
não atinge seus objetivos básicos. Requisitos '' desejáveis '' agregariam valor ao programa,
mas poderiam ser adiados ou omitidos. Os recursos desejáveis podem ser priorizados
ainda mais, variando daqueles que a maioria dos usuários gostaria de ver em uma versão
inicial, até aqueles que agregariam apenas um valor marginal. Se forem facilmente
atendidos, recursos desejáveis podem aparecer na primeira versão. Um documento de
Requisitos do Usuário deve incluir recursos que foram considerados e rejeitados por um
bom motivo.
Os Requisitos do Usuário devem se traduzir diretamente em testes que verificarão se
(pelo menos para os valores específicos testados) o software atende aos requisitos.
20 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

Esses testes fazem parte de um plano de validação do software. O conjunto resultante de


problemas de teste é mantido e aumentado ao longo da vida do programa.
O pacote de software geral é dividido em seus componentes principais. Esses componentes
de software podem ser sub-rotinas, classes (objetos), componentes vinculados dinamicamente
por middleware ou programas separados que serão chamados conforme necessário. As interfaces
entre esses componentes devem ser definidas para que possam trabalhar juntos. Nesse estágio,
testes de aceitação separados para cada componente principal de software são definidos.

Os principais componentes de software são subdivididos e os testes de aceitação para


cada subcomponente são definidos. A extensão da subdivisão depende do tamanho e da
complexidade do programa.
Quando o programa é escrito, cada componente é verificado em relação aos testes
pré-definidos antes de ser integrado no programa final. Da mesma forma, os
subcomponentes são testados antes e depois da integração. O procedimento de teste é
parte integrante do design do programa.
Antes de iniciar a programação, uma seqüência de '' construção '' é definida. A metodologia
de construção fornece entrega antecipada de um programa simples, oferecendo um subconjunto
dos requisitos. O programa é aprimorado em cada construção subsequente à medida que mais
funcionalidades são adicionadas. Por exemplo, uma simulação pode funcionar inicialmente
apenas para misturas monofásicas com termodinâmica ideal simples e um pequeno subconjunto
de componentes químicos. Cada construção é testada e avaliada à medida que é desenvolvida.
Haverá várias compilações antes que a primeira versão que atenda aos requisitos essenciais do
usuário seja lançada.
A abordagem de construção tem benefícios tanto no cumprimento das datas de entrega quanto
na melhoria da qualidade do programa. As datas de entrega são aprimoradas porque qualquer atraso
na primeira compilação sinaliza problemas que podem ser identificados e corrigidos antecipadamente.
Uma programação sem entrega antecipada pode permitir que tais problemas de software permaneçam
não reconhecidos por um longo período. A qualidade é aprimorada porque a experiência com as
primeiras compilações permite que os requisitos do usuário sejam refinados. O refinamento iterativo
produz um produto final melhor. O uso real de um programa (mesmo uma versão com funcionalidade
limitada) é mais eficaz para destacar oportunidades e dificuldades do que qualquer estudo em papel.
Esses primeiros lançamentos também fornecem uma oportunidade de envolver os usuários finais
pretendidos onde, anteriormente, a especificação era amplamente elaborada por inovadores
especializados.
A disciplina de construção se estende além da versão inicial para a fase de suporte e
desenvolvimento. A experiência do usuário fornece sugestões para melhorias e descobre bugs
que escaparam ao teste de pré-lançamento. Em resposta a essa experiência, o documento
Requisitos do Usuário é atualizado, as mudanças são priorizadas e novos lançamentos são
planejados, cada um com seu próprio teste e cronograma de construção. A priorização das
mudanças depende do uso final pretendido do programa. Por exemplo, um bug que causa o
travamento do programa requer correção urgente em um aplicativo de controle online. No
entanto, um bug do programa de design de engenharia que fornece respostas que levam a
designs inseguros requer uma correção mais urgente do que um bug que causa travamentos
ocasionais do programa.
Cada build e release deve ser arquivado para que permaneça acessível por longos
períodos. (Por exemplo, em uma atualização de planta, os usuários podem desejar
comparar os resultados com os resultados obtidos 5 ou 10 anos antes. Além disso, as
melhorias podem introduzir novos bugs, e pode ser desejável voltar ao último
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 21

versão livre de erros.) As versões dos componentes principais devem ser arquivadas
separadamente. Observe que os componentes vinculados dinamicamente podem seguir padrões
separados, não sincronizados, de construção e liberação. Portanto, as versões empregadas no
estudo original devem ser arquivadas para que o software original possa ser recuperado em sua
totalidade. Também pode ser necessário arquivar o sistema operacional original no qual o
programa foi construído. Esses sistemas operacionais têm suas próprias bibliotecas que são
atualizadas a cada versão e podem alterar o desempenho do seu software.
Um projeto de software eficaz e procedimento de validação, portanto, perduram por
toda a vida do software.
4.2. Ambiente de programação.Software de engenharia química
pode ser escrito em uma linguagem convencional de alto nível, uma linguagem de IA, um
propósito geral ou sistema de modelagem baseado em equações específicas, ou usando
ferramentas de planilha. Muitos engenheiros constroem simulações usando ferramentas de
modelagem em vez de escrever programas para fins especiais. Simulações desenvolvidas com
essas ferramentas devem ser projetadas e testadas como para programas convencionais. Existe o
mesmo escopo para erros lógicos e numéricos.
Uma lista separada de referências é fornecida para linguagens de programação e
sistemas de modelagem. A lista de linguagens de uso geral na discussão a seguir não é
referenciada porque são muito conhecidas e os textos e compiladores atualizados podem
ser localizados facilmente por meio de mecanismos de busca na Internet ou livrarias.
Linguagens de uso geral: C / Cþþ, Java, Fortran90, Python, Ada, Modula II,
Delphi, Smalltalk, Eiffel e BASIC. A maioria das linguagens de alto nível
agora são orientados a objetos. Essas linguagens orientadas a objetos agrupam métodos e
dados de uma maneira natural para o engenheiro. Na verdade, a linguagem orientada a
objetos original, Simula (18), foi desenvolvida especificamente para simulação de eventos
discretos, e algumas de suas primeiras aplicações foram para o projeto e operação de
processos químicos em lote e semilote.
Atualmente, as linguagens mais usadas para software de engenharia em grande
escala são Fortran e Cþþ, com a maioria dos novos softwares escritos em Cþþ. Outros
idiomas mantiveram uma base de usuários limitada. Por exemplo, Ada é usado na
preparação de software ultra-seguro.
A evolução do Cþþ de C resulta em alternativas para muitos recursos comuns. Por exemplo,
existem quatro tipos de array sutilmente diferentes: um '' vetor, '' a '' valarray, '' um array
declarado diretamente de limite fixo e um ponteiro para memória alocada dinamicamente. O
programador também pode criar classes de contêiner semelhantes a array. A confusão entre
alternativas fornece espaço para erros sutis. As instalações posteriores frequentemente oferecem
alternativas mais seguras aos métodos anteriores relativamente arriscados. Em reconhecimento
dos riscos, Stroustrup (19) enfatiza repetidamente métodos de programação seguros. Um
subconjunto simples de Cþþ é recomendado, enfatizando a segurança ao invés da velocidade. Por
exemplo, use apenas '' vetor '' para matrizes.
Linguagens projetadas para inteligência artificial: LISP e Prolog. AI lan-
medidores podem ser usados para programação baseada em regras. Eles podem ser
convenientes para implementar padrões que são apresentados como regras. Para programas
mais gerais, as regras podem ser heurísticas (baseadas na experiência) ou baseadas na ciência
fundamental. Quando se baseiam na experiência, as aplicações devem, de preferência, restringir-
se aos sistemas para os quais a experiência foi adquirida. Recursos de interrogação devem ser
fornecidos para mostrar as regras empregadas, e as conclusões podem precisar ser testadas por
ferramentas de modelagem convencionais.
22 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

Sistemas de modelagem baseados em equações: Mathematica, MathCad, GAMS,


SpeedUp e gProms. Os sistemas baseados em equações variam de sistemas de
manipulação de equações, como o Mathematica, passando por ferramentas gerais para
resolver e otimizar problemas definidos como equações (por exemplo, GAMS) até
ferramentas específicas para engenheiros químicos, como SpeedUp e gProms.
Sistemas de manipulação de equações, como o Mathematica, raramente são usados
para grandes cálculos de engenharia. A dificuldade é que não há controle sobre as
características numéricas das equações resultantes. Esses sistemas são mais geralmente
usados no desenvolvimento de algoritmos. As equações manipuladas são examinadas
antes que os resultados sejam incorporados a um programa do tipo atribuição ou a um
sistema de modelagem orientado por equação.
Os sistemas baseados em equações usados com mais frequência em aplicações de
engenharia, como gProms, não reorganizam equações individuais. Por exemplo, eles não
podem converteruma ¼ emðbº para b ¼ expðumaº. Grandes conjuntos esparsos de
equações algébricas são resolvidos formando uma linearização local e resolvendo a
linearização local. As equações são re-linearizadas no ponto de solução resultante, e a
iteração é continuada até que uma solução seja obtida. As equações diferenciais são
resolvidas numericamente usando métodos de integração robustos.
Ferramentas de planilha: Excel (da Microsoft), Calc (da Open Office) e
Lotus 1-2-3. As planilhas oferecem muitos atrativos para o engenheiro. Um cálculo pode
ser montado rapidamente e uma variedade de resultados gráficos está imediatamente
disponível sem programação especial. A maioria das planilhas também possui interfaces de
banco de dados padrão para entrada e saída de dados extensos.
As planilhas têm a desvantagem de que as fórmulas tendem a ficar ocultas e as
expressões condicionais necessárias para manter a precisão numérica são difíceis de
programar. A seleção de células conforme os tamanhos da matriz são alterados também
depende da maneira como o programador trata as referências de células. É fácil expandir
uma tabela e fazer referência às células erradas e sobrescrever células com valores. O
perigo, então, é que respostas plausíveis, mas erradas, podem ser obtidas.
Conseqüentemente, é mais difícil aplicar medidas de garantia de qualidade a cálculos em
planilhas (consulte a seção intitulada '' Uso de planilhas ''). É por esse motivo que Barker et
al. (13) recomendam que planilhas não sejam utilizadas para aplicações de alta integridade.

É sugerido que os cálculos da planilha sejam restritos a operações simples do tipo


contábil que são facilmente verificadas à mão. Cálculos relativamente complexos devem ser
realizados com uma linguagem de programação convencional. Se necessário, um programa
convencional pode ser vinculado a uma planilha para obter os benefícios da entrada / saída
da planilha e das ferramentas de pós-processamento que se tornam imediatamente
disponíveis.
4.3. Programação.Os programas devem ser escritos para minimizar o programa
erros ming. Esta seção concentra-se especificamente em técnicas para minimizar resultados
incorretos e falhas em tempo de execução. A próxima seção trata de erros numéricos em
programas corretos. Os tópicos abordados nesta seção são os seguintes:

Escreva software suportável


Fornece consistência dimensional de programas
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 23

Limite os efeitos colaterais

Limite de tempo de execução

Limite o tamanho do programa

Reduza as falhas aritméticas Avalie o


componente de software Verifique Projeto
os dados
Reconheça a incerteza
Minimize as mensagens de erro

Escreva software suportável. Não apenas um programa deve ser totalmente documentado
ted, o próprio programa deve ser comentado para consultar a documentação. Dentro do
programa, as unidades e dimensões de cada variável devem ser definidas onde quer que a
variável seja declarada. Também é útil adicionar as unidades às linhas de código onde as
expressões complexas são avaliadas.
Os programas não devem incluir constantes in-line. Portanto, todas as constantes que
serão acessadas dentro do programa devem ser declaradas no início do programa
(constante de gás universal, pressão padrão, temperatura padrão, etc). O programador e os
usuários subsequentes têm então um único ponto de referência para verificar o valor e suas
dimensões. Por exemplo, um cabeçalho pode dizer:

const double PStandard ¼ 100000,0;


// Pressão padrão em Pascal (unidades SI)

Dentro do programa, podem ser desenvolvidas expressões como as seguintes:

V ¼ V0 * PStandard / P

A constante não deve ser codificada em expressões como:

V ¼ V0 * 100000.0 / P;

Constantes enterradas no programa não podem ser verificadas sem pesquisar


páginas de código. Se um erro for cometido, ele deve ser corrigido a cada instância, em vez
de simplesmente corrigir o valor único.
Middleware deve ser usado com cautela. Ele foi anunciado como a ferramenta para
eliminar o "fatware monolítico". Assim, uma rotina poderia ser escrita em qualquer
linguagem de computador apelada ao autor e a única parte do código poderia ser acessada
por todos os programas no computador que dela precisassem. Além disso, sem reescrever
nenhum de seu código, você pode ter certeza de que seu programa sempre acessará a
versão mais recente da rotina. O middleware agora é amplamente utilizado, principalmente
em sistemas de comunicação. Ele também permite que softwares de engenharia química de
uma variedade de fontes sejam vinculados por meio dos padrões CAPEOPEN (7).

No entanto, a motivação para reduzir o tamanho dos programas não é mais válida; era uma
preocupação do final dos anos 1960. Em um computador moderno, uma imagem de alta definição
pode ocupar mais memória do que a que pode ser preenchida com código por um
24 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

programador em sua vida. Também existem desvantagens. Os soquetes de middleware são


uma rota de acesso para programas prejudiciais. Requer apenas um hacker malévolo para
corromper uma rotina que você emprega para danificar todo o seu cálculo. O uso
generalizado (e necessário) de middleware em sistemas operacionais de computador
padrão é a principal rota de acesso por vírus e outros malwares. Além disso, para um
programa de longa duração, você nunca pode garantir que resultados consistentes serão
obtidos ao longo de décadas. As rotinas nas quais você confiava para acessar por meio de
middleware podem mudar ou se tornarem indisponíveis. Portanto, a menos que haja um
forte requisito para usar middleware, é vantajoso compilar todo o código de que você
precisa para seus propósitos. Você pode então ter certeza de que o código que testou
continua sendo o código usado daqui em diante. Você também minimiza o risco de fornecer
acesso para malware. O uso de código vinculado dinamicamente por meio de middleware
pode produzir problemas de manutenção onerosos. Para garantir a qualidade, a cada novo
lançamento de um componente, todo o portfólio de teste do programa deve ser executado
novamente. Para evitar a vinculação dinâmica por meio de middleware, os componentes
podem ser fornecidos como classes ou funções que são vinculadas como partes integrantes
do programa compilado.
Linguagens de programação orientadas a objetos são projetadas para serem modulares, e
pequenos componentes podem ser escritos como classes e vinculados a vários programas
diferentes. A maioria dos componentes é melhor fornecida como classes e funções dentro dessas
linguagens de programação orientadas a objetos.
O código on-line deve ser escrito para atender aos padrões de qualidade mais
exigentes. Ao aderir a tais padrões, o programador é normalmente obrigado a aceitar a
responsabilidade por cada linha de código. Portanto, um compilador e um sistema
operacional aprovados devem ser empregados. Para tais aplicações, as ferramentas de
código aberto de funcionalidade limitada podem ser preferidas às ferramentas comerciais
multifuncionais porque cada parte pode ser visualizada e testada pelo programador. O
próprio código será então embutido no hardware como um firmware. Desta forma, é
garantido que o código não pode ser alterado por nenhum agente externo que possa
corromper o código. Essa corrupção pode ter consequências de segurança, ambientais ou
de qualidade do produto.
Fornece consistência dimensional de programas. Cada tarefa e
a comparação em um programa de engenharia química deve ser dimensionalmente consistente.
Portanto, qualquer programa que atribua uma velocidade a uma massa está certamente errado.
Erros como escrita

E ¼ 0,5 * m * v

quando a tarefa pretendida é

E ¼ 0,5 * m * v * v

não pode ser detectado por nenhum dos compiladores de alto nível padrão. Esses erros não
fazem o programa travar e raramente produzem erros óbvios de tempo de execução. No
exemplo anterior, o erro não é óbvio, a menos que '' v '' seja consideravelmente diferente da
unidade. Esses erros podem ser detectados verificando se todos os termos do lado direito
de uma atribuição ou comparação têm as mesmas dimensões e se as dimensões são iguais
às do lado esquerdo. Ferramentas estão sendo
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 25

desenvolvido para automatizar tais testes antes da compilação, mas geralmente os testes devem
ser feitos manualmente.
Alternativamente, a consistência dimensional pode ser verificada dinamicamente (em
tempo de execução). Qualquer linguagem de computador que permita sobrecarga (incluindo
todas as linguagens orientadas a objeto) permite a definição de novos tipos de dados. Um tipo de
dados '' dimensionado '', que consiste no valor do ponto flutuante mais as dimensões, pode
fornecer a validação de tempo de execução desejada. Por exemplo, com dimensões na sequência
Massa, Comprimento, Tempo, Temperatura, uma força de 27,9 Newtons pode ser registrada
como:

27,9, 1, 1, -2, 0

A signi fi cância é de 27,9 unidades, com dimensão MLT 2


Nesse sistema, as operações matemáticas padrão são modificadas para que a
multiplicação multiplique os valores e adicione as dimensões. Além disso, a comparação e a
atribuição verificam se as dimensões são consistentes e geram um erro de tempo de
execução para qualquer inconsistência. Outras operações são modificadas de forma
semelhante. A técnica é lenta, mas fornece uma verificação completa. A versão final de
lançamento pode ter o recurso de verificação removido.
Para uma garantia ainda maior, os programas de engenharia devem ser escritos em
unidades dimensionalmente consistentes. Assim, não misture a viscosidade em poise (a
unidade cgs) com Pascal-segundos (kg m1 s 1, unidade SI). Desde que as constantes
universais (pressão padrão, constante de gás, etc.) sejam modi fi cadas adequadamente, um
programa dimensionalmente consistente funcionará igualmente bem nos sistemas cgs, SI
(MKS) ou fps. Isso evita constantes dimensionais embutidas no programa. Onde um
programa é projetado para operar com conjuntos alternativos de unidades consistentes, o
conjunto de constantes universais deve ser fornecido por meio de uma classe (ou classes)
em vez de por constantes globais. Em todos os casos, a conversão da unidade deve ser
aplicada na entrada e na saída, não dentro do próprio programa.
Limite os efeitos colaterais. Os efeitos colaterais ocorrem da seguinte forma. Uma declaração é escrita
como:

y ¼ alguma função (x);

Esta operação altera y. Suspeita-se que x também pode ser alterado. Nenhuma outra
variável deve ser alterada. Se, ao ligaralguma função, uma variável não relacionada z é
alterada, a mudança é conhecida como um efeito colateral. Os efeitos colaterais produzem
programas sujeitos a erros e dificultam a depuração e a atualização. Onde os efeitos
colaterais são excluídos, um problema na declaração anterior pode ser localizado em
alguma função. Essa é então a única função que precisa ser verificada. Se os efeitos colaterais
forem permitidos, todas as funções que possam conterz deve ser verificada, assim como todas as
linhas de código em que z parece. Se uma função contendoz também contém efeitos colaterais, o
número de linhas de código que precisam de verificação é ainda mais multiplicado. Portanto, é
altamente recomendável que os efeitos colaterais sejam evitados.
A maioria dos idiomas permite efeitos colaterais. FortranCOMUM permite que cada módulo
de programa acesse as variáveis listadas após um COMUM etiqueta. Não é necessário colocar
essas variáveis em listas de argumentos para acessá-las. Atribuindo valores aCOMUM
variáveis, portanto, cria um efeito colateral. COMUM foi recomendado no
26 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

nos primeiros dias do Fortran, porque oferecia melhor eficiência de tempo de execução do que
passar parâmetros como sub-rotina ou argumentos de função. Fortran90 desencoraja o uso de
COMUM e oferece alternativas mais seguras. Cþþ fornece ponteiros e variáveis globais. Os
ponteiros permitem que várias variáveis se refiram ao mesmo local de memória. Portanto,
atribuir um valor a uma variável altera todas as outras. Variáveis de referência podem fornecer
confusão semelhante. Variáveis globais podem ser acessadas de qualquer lugar e, se não forem
declaradas como '' constante '', podem ser alteradas de qualquer lugar. Assim, qualquer rotina
que é chamada pode alterar uma ou mais variáveis globais (Cþþ
variáveis globais são semelhantes a Fortran COMUM a este respeito). Essas variáveis
globais alteradas podem ter efeitos inesperados em outras partes do programa. Ponteiros
foram recomendados nos primeiros dias de C para evitar a cópia de estruturas inteiras. A
eficiência do tempo de execução foi melhorada. Em programas de engenharia, a economia
de tempo provavelmente será mínima; há muito mais operações realizadas nos elementos
de uma estrutura do que simplesmente copiá-los. O principal uso atual do Cþþ ponteiros
está acessando componentes vinculados dinamicamente por middleware.

O polimorfismo fornece uma maneira concisa de executar tarefas relacionadas. (O


polimorfismo fornece uma interface comum capaz de invocar uma variedade de comportamentos
relacionados que não precisam ser definidos com antecedência.) No entanto, seu uso emprega
efeitos colaterais e é deliberadamente excluído de algumas linguagens (Fortran90). Deve ser
usado apenas quando a alternativa for um programa mais complexo.
Os efeitos colaterais devem ser evitados ou usados com moderação. Se forem usados, todos os
usos devem ser comentados com destaque.
Limite de tempo de execução. Deve haver um limite superior conhecido no tempo de
execução para todos os softwares de engenharia. Os programas on-line devem ser
cronometrados estritamente com antecedência para que haja sempre folga e as interrupções não
possam se acumular sem limite. Os possíveis tempos de execução longos para programas off-line
devem ser anotados na documentação e uma mensagem de aviso deve ser exibida antes que a
parte demorada do cálculo comece.
O tempo de execução deve ser estimado a partir dos valores de dados lidos. Onde a teoria é
deficiente, o programador de engenharia deve produzir uma correlação experimental de tempo
de execução versus tamanho do problema. É então possível definir um limite superior fixo no
número de iterações que produzirá um tempo de execução aceitável na maioria dos
computadores. Onde, por causa do limite, o programa fica sem iterações, o programador pode
fornecer uma mensagem significativa relacionada ao problema de engenharia que está sendo
resolvido. Na maioria dos casos, uma estimativa do resultado também pode ser gerada. A menos
que o programa tenha seu próprio botão de parada, um programa interrompido pelo usuário não
pode fornecer nenhuma mensagem significativa.
Limite o tamanho do programa. Os computadores modernos têm grande quantidade de
memória disponível. No entanto, os erros de programação podem dar origem a demandas ilimitadas de
espaço de memória e esses erros podem se manifestar apenas com determinados conjuntos de dados.
Quanto ao tempo de execução, deve ser possível fazer uma estimativa conservadora de quanta memória
será necessária em função dos valores dos dados. Um limite superior para o espaço necessário deve ser
definido com antecedência para que o excesso de memória seja evitado. Onde espaço adicional é
ocupado em cada iteração (por exemplo, na otimização de ramificação e limite), uma contagem de
iterações pode limitar a memória usada. Uma mensagem de erro em tempo de execução do sistema
operacional do computador quando a memória do computador se esgota não tem valor para o usuário.
No entanto, o programador pode fornecer um
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 27

mensagem significativa relacionada ao problema de engenharia específico. Sempre que


possível, é mais eficiente alocar o máximo de memória necessária no início do cálculo do
que redimensionar os arrays à medida que o cálculo prossegue.
Reduza as falhas aritméticas. Os erros aritméticos incluem divisão por zero, raiz quadrada ou
logaritmo de um número negativo e estouro exponencial. Esses erros se originam mais frequentemente
durante cálculos iterativos nos quais estimativas implausíveis são geradas pelo procedimento iterativo. Cada
falha potencial deve ser testada antes que a expressão seja calculada. Assim, os denominadores devem ser
avaliados e verificados antes da divisão ser feita e os expoentes devem ser avaliados e verificados antes do
exponencial ser calculado. A ação apropriada deve então ser executada dentro do código para evitar que o erro
ocorra. Por exemplo, o procedimento iterativo pode ser forçado a gerar uma iteração alternativa ou o valor
resultante deve ser ajustado para afastar o erro do ponto problemático. Se o erro ocorrer no meio de uma
iteração, o erro deve ser suprimido (consulte a seção intitulada '' Minimizar mensagens de erro ''); caso
contrário, uma mensagem de erro significativa deve ser exibida (por exemplo, cruzamento no cálculo da
temperatura média logarítmica). A maioria das falhas aritméticas pode ser evitada pela análise numérica
apropriada (consulte a seção intitulada '' Análise Numérica '') ou pela organização do programa. Um programa
de computador de engenharia nunca deve falhar com uma mensagem gerada pelo sistema operacional do
computador; tais falhas não ajudam Um programa de computador de engenharia nunca deve falhar com uma
mensagem gerada pelo sistema operacional do computador; tais falhas não ajudam Um programa de
computador de engenharia nunca deve falhar com uma mensagem gerada pelo sistema operacional do
computador; tais falhas não ajudam
o usuário final.
Divisão em partes componentes. Programas divididos em autoescritos lógicos
componentes contidos são mais rápidos para e mais fáceis de testar. No entanto, com
o tamanho do ponente deve ser escolhido com cuidado. Os benefícios da componentização são perdidos com componentes
excessivamente grandes. Ainda assim, um programa dividido em componentes excessivamente pequenos é dominado pela
programação de interface. A programação da interface apresenta mais linhas de código e mais bugs potenciais. Também aumenta
o tempo de execução e obscurece a lógica do programa. As considerações sobre o tamanho do programa e o tempo de execução
não devem dominar na decisão sobre o tamanho do componente. Demora muitos homens-ano para escrever um megabyte de
código-objeto. A maior parte da memória é ocupada por dados numéricos, texto e, principalmente, dados gráficos. Qualquer
espaço marginal economizado pelo compartilhamento de código de objeto entre programas seria completamente inundado por
uma economia que poderia ser feita exibindo um gráfico mais simples. Similarmente, a economia de tempo com a codificação em
linha (repetição do código-fonte em cada rotina para evitar o tempo gasto para chamar o código comum por meio de uma
interface) é insignificante. O próximo lançamento de hardware proporcionará uma economia de tempo muito maior. A redução do
tempo pode ser melhor alcançada prestando atenção ao algoritmo. As escolhas importantes são empregar um algoritmo
polinomial em vez de um algoritmo NP, ou empregar um algoritmo de segunda ordem em vez de terceira ordem no tamanho do
problema. O tamanho do componente deve, portanto, ser feito com base na clareza, simplicidade e facilidade de manutenção, e
não com base no tempo de execução e no tamanho. ou empregar um algoritmo de segunda ordem em vez de terceira ordem no
tamanho do problema. O tamanho do componente deve, portanto, ser feito com base na clareza, simplicidade e facilidade de
manutenção, e não com base no tempo de execução e no tamanho. ou empregar um algoritmo de segunda ordem em vez de
terceira ordem no tamanho do problema. O tamanho do componente deve, portanto, ser feito com base na clareza, simplicidade e
facilidade de manutenção, e não com base no tempo de execução e no tamanho.
Verifique os dados. A saída incorreta de um programa bem escrito provavelmente é
o resultado de dados incorretos inseridos pelo usuário. Os programas devem ser resistentes
a dados errôneos, verificando as magnitudes dos valores inseridos e verificando a
consistência dos dados. Uma mensagem de erro deve ser emitida se o sinal estiver errado.
Por exemplo, a convenção de sinais para o coeficiente '' B '' na equação de Antoine difere em
bancos de dados diferentes. O coeficiente deve ser verificado para garantir que o sinal é
consistente com a convenção do programa.
28 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

O erro de entrada de dados mais comum é a confusão sobre unidades e dimensões.


Esses erros podem ser detectados verificando se os números estão dentro de limites
razoáveis. Por exemplo, um programa projetado para lidar com hidrocarbonetos líquidos
deve alertar contra densidade maior que 3000kg / m3 ou menos de 300kg / m3
A densidade da água é 1000kg / m3, 1,0 g / cc e 62,5 lb / cuft. Esta verificação detectará
unidades incorretas para todos os líquidos comuns. Da mesma forma, a conversão incorreta
entre unidades métricas pode ser detectada porque a maioria das conversões introduz um
erro de potência de dez. Emita um aviso, em vez de um erro, caso um usuário queira
modelar espécies menos comuns. É responsabilidade do usuário final verificar todas as
mensagens de aviso (consulte a seção intitulada '' Usando Software de Engenharia ''). Testes
adicionais estão disponíveis para propriedades específicas. Por exemplo, calores específicos
de gás podem ser verificados usando a relação Cp / Cv, com 1,0 <Cp / Cv <1,7. Para gases, o
número de Prandtl é bem previsto a partir da proporção de calores específicos, o que
fornece uma verificação adicional sobre a consistência dos dados de capacidade de calor,
viscosidade e condutividade térmica. Existem também vários testes rigorosos para a
consistência termodinâmica dos dados.
Para dados gerados pelo programa, devem ser produzidas mensagens que fornecem
limites de erro prováveis. Essas mensagens devem ser emitidas para dados estimados (por
exemplo, propriedades físicas calculadas pelo método de contribuição do grupo) e para
valores padrão. Essas mensagens de aviso têm o propósito adicional de lembrar o usuário
de que um padrão foi usado. Por exemplo, um programa projetado para líquidos de
hidrocarbonetos pode empregar uma densidade padrão média, mas pode gerar uma
mensagem indicando a faixa possível do mais leve ao mais pesado.
Reconheça a incerteza. Os engenheiros químicos empregam muitas correlações semi-empíricas e as estimativas geradas por essas correlações podem ser de baixa precisão. Os usuários devem estar cientes

de tais erros potenciais. Essas correlações fornecem previsões incertas, mesmo com dados precisos. Por exemplo, cálculos de queda de pressão são freqüentemente baseados no trabalho de Stanton e Pannell (20) e

atualizados por Moody (21). Correlações turbulentas de transferência de calor são derivadas do trabalho de Dittus e Boelter (22) e atualizadas por McAdams (23). Há considerável dispersão experimental sobre os gráficos

empíricos e equações apresentadas por esses autores. Recomenda-se que os programas não adicionem margens de segurança para contabilizar as incertezas de correlação. O limite '' seguro '' cauteloso depende da aplicação

do usuário e é responsabilidade do usuário aplicar as margens de segurança. É responsabilidade dos programadores deixar as incertezas claras para o usuário final. Provisões também devem ser feitas para que o usuário

explore o efeito das incertezas nos resultados do cálculo. Em muitos casos, o efeito pode ser simulado sem acesso direto ao modelo ou seus parâmetros embutidos. Por exemplo, o usuário pode investigar o efeito de um

coeficiente de transferência de calor incerto alterando a área correspondente. Em outros casos, pode ser necessário fornecer ao usuário acesso direto aos parâmetros do modelo incertos. Por exemplo, o usuário pode receber

um parâmetro definido como 0,0 para o resultado mais provável. É definido como 1.0 para o resultado alto no nível de probabilidade de 90% e -1.0 para o resultado baixo no nível de probabilidade de 90%. Provisões também

devem ser feitas para que o usuário explore o efeito das incertezas nos resultados do cálculo. Em muitos casos, o efeito pode ser simulado sem acesso direto ao modelo ou seus parâmetros embutidos. Por exemplo, o usuário

pode investigar o efeito de um coeficiente de transferência de calor incerto alterando a área correspondente. Em outros casos, pode ser necessário dar ao usuário acesso direto aos parâmetros do modelo incertos. Por

exemplo, o usuário pode receber um parâmetro definido como 0,0 para o resultado mais provável. É definido como 1.0 para o resultado alto no nível de probabilidade de 90% e -1.0 para o resultado baixo no nível de

probabilidade de 90%. Provisões também devem ser feitas para que o usuário explore o efeito das incertezas nos resultados do cálculo. Em muitos casos, o efeito pode ser simulado sem acesso direto ao modelo ou seus

parâmetros embutidos. Por exemplo, o usuário pode investigar o efeito de um coeficiente de transferência de calor incerto alterando a área correspondente. Em outros casos, pode ser necessário dar ao usuário acesso direto

aos parâmetros do modelo incertos. Por exemplo, o usuário pode receber um parâmetro definido como 0,0 para o resultado mais provável. É definido como 1.0 para o resultado alto no nível de probabilidade de 90% e -1.0

para o resultado baixo no nível de probabilidade de 90%. o efeito pode ser simulado sem acesso direto ao modelo ou seus parâmetros embutidos. Por exemplo, o usuário pode investigar o efeito de um coeficiente de

transferência de calor incerto alterando a área correspondente. Em outros casos, pode ser necessário fornecer ao usuário acesso direto aos parâmetros do modelo incertos. Por exemplo, o usuário pode receber um parâmetro

definido como 0,0 para o resultado mais provável. É definido como 1.0 para o resultado alto no nível de probabilidade de 90% e -1.0 para o resultado baixo no nível de probabilidade de 90%. o efeito pode ser simulado sem

acesso direto ao modelo ou seus parâmetros embutidos. Por exemplo, o usuário pode investigar o efeito de um coeficiente de transferência de calor incerto alterando a área correspondente. Em outros casos, pode ser

necessário dar ao usuário acesso direto aos parâmetros do modelo incertos. Por exemplo, o usuário pode receber um parâmetro definido como 0,0 para o resultado mais provável. É definido como 1.0 para o resultado alto no

nível de probabilidade de 90% e -1.0 para o resultado baixo no nível de probabilidade de 90%. 0 para o resultado mais provável. É definido como 1.0 para o resultado alto no nível de probabilidade de 90% e -1.0 para o

resultado baixo no nível de probabilidade de 90%. 0 para o resultado mais provável. É definido como 1.0 para o resultado alto no nível de probabilidade de 90% e -1.0 para o resultado baixo no nível de probabilidade de 90%.

Minimize as mensagens de erro. A maioria dos cálculos de engenharia química são


iterativos. O usuário final está preocupado apenas com a exatidão do resultado final.
Mensagens de erro e aviso devem ser suprimidas até a iteração final. Essas mensagens
devem ser geradas onde podem ser arquivadas como parte de uma decisão
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 29

trilha de auditoria criada pelo usuário final. Onde condições de falha em potencial se
desenvolvem durante a iteração (por exemplo, subfluxo ou transbordamento), um valor
adequado deve ser gerado para permitir que a iteração continue na expectativa de que o
erro desaparecerá conforme a solução é abordada. Os valores gerados devem evitar a
introdução de descontinuidades de função, que podem ter um efeito adverso na
convergência.
As rotinas devem ser escritas de forma que, mesmo nas condições mais extremas,
produzam um resultado que não cause uma falha no tempo de execução. Além disso, não
deve haver nenhuma quebra brusca no ponto em que a condição difícil é detectada.
Considere o código projetado para evitar o transbordamento ao assumir um exponencial.
Código como o seguinte não deve ser usado:

if (x <log (1070))
resultado ¼ exp (x)
outro
resultado ¼ 1070

Este código tem uma descontinuidade na derivada que irá atrapalhar qualquer solucionador de
equações ou rotina de otimização. Seria melhor colocar:

if (x <log (1070))
resultado ¼ exp (x)
outro
resultado ¼ 1070 º 1070 (x log (1070))

Este código é contínuo na primeira derivada, mas tem uma descontinuidade na segunda
derivada. Essa descontinuidade de segunda derivada tende a ter um impacto menor na
convergência. A função ainda pode falhar, mas agora apenas para valores muito grandes de
x. A condição de falha deve ser verificada para produzir uma mensagem de falha significativa para
o usuário. Uma falha em tempo de execução meramente apresentando um estouro não oferece
ao usuário orientação sobre onde está a falha ou o que a causa.
4,4. Análise numérica.Um programa que produz respostas erradas ou
falhar é inaceitável. Esta seção apresenta princípios gerais e ferramentas úteis para evitar ou
minimizar esses problemas. Os princípios são apresentados por meio de exemplos simples e
específicos que ilustram casos que serão enfrentados pela maioria dos engenheiros
programadores. Por exemplo, expressões que podem ser avaliadas como 0/0 são
consideradas. Esta situação ocorre potencialmente onde quer que haja uma divisão. Existem
muitos casos numericamente difíceis que não são tratados neste artigo, por exemplo,
solução de equações diferenciais rígidas (aquelas com uma gama muito ampla de
constantes de tempo) ou grandes conjuntos de equações algébricas mal condicionadas. Os
programadores são encaminhados para textos especializados em análise numérica em tais
casos, por exemplo, Epperson (24). Os engenheiros químicos são mais propensos a incluir
rotinas de terceiros em vez de escrever tais métodos especializados eles próprios.

(26) e Receitas Numéricas (27). O conselho básico fornecido neste artigo para casos
relativamente simples ainda se aplica a problemas mais difíceis; por exemplo, ainda é
necessário evitar erros numéricos na avaliação de expressões e verificar a convergência.
30 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

Quatro áreas que podem dar origem a problemas numéricos são cobertas:

1 Expressões avaliadas como 0/0.


2 Solução de equações e inversão de matrizes.
3 Convergência de iterações simples. Tanto a iteração de variável única quanto a
iteração multivariável são consideradas.
4 Solução numérica de equações diferenciais.

Expressões que avaliam para 0/0. Considere um programa para projetar um


trocador de calor contra-corrente. O programa emprega uma diferença de temperatura
média logarítmica. O método simples de programar a média é colocar:

deltaTmean ¼ (deltaT1 - deltaT2) / ln (deltaT1 / deltaT2)

Aqui:

deltaT1, deltaT2 e deltaTmean

são as diferenças de temperatura nas duas extremidades e a média logarítmica dessas duas
diferenças.
A expressão é impossível de calcular se uma das seguintes condições se aplicar:

1. As diferenças de temperatura têm sinais opostos nas duas extremidades. Tal


cruzamento é fisicamente impossível. O programa irá falhar com um erro de ''
logaritmo de número negativo ''.
2. A diferença de temperatura é zero em uma extremidade ou na outra. O programa irá
falhar com um erro de '' divisão por zero '' (deltaT2 zero) ou erro '' logaritmo de zero
'' (deltaT1 zero).
3. As diferenças de temperatura são iguais nas duas extremidades. A razão deltaT1 /
deltaT2 é a unidade, cujo logaritmo é zero. O programa então falha com um erro de ''
divisão por zero ''. Essa condição é termodinamicamente a mais favorável e é trivial
para computar manualmente.
Além dessas falhas óbvias, ocorrem erros significativos quando deltaT1 e deltaT2 são
semelhantes. Considere o seguinte caso:
4 deltaT1 é diferente de deltaT2 por uma pequena diferença fracionária d, e a precisão da
máquina é e. Para aritmética de ponto flutuante, e é um erro fracionário quase
independente do tamanho absoluto de deltaT1 ou deltaT2.
O erro proporcional no numerador e no denominador é então
e =d. Esses erros raramente são cancelados. Sed é suficientemente pequeno, o erro
pode exceder 100%. Essa situação não é tão rara quanto pode parecer. Por exemplo,
uma otimização pode trazer gradualmente as duas diferenças de temperatura juntas
até que a condição de erro se desenvolva. Este erro é pior do que os erros (1) - (3)
porque pode fornecer uma resposta errada sem nenhum aviso.

Os casos (3) e (4) são ambos problemas numéricos resultantes da precisão finita da
aritmética computacional. Casos (1) e (2) são mais fundamentais, e eles
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 31

são tratados na seção intitulada '' Organizando Expressões para Computação ''. Resolver o
caso (4) resolve automaticamente o caso (3) e pode ser tratado da seguinte maneira.
Escrevendo as diferenças de temperatura comovocê e v, e a média como y, dá:

y ¼ ðuvÞ =emðu = vº ð4º

A abordagem geral é expandir os termos que se aproximam de zero como uma série. O
denominador então se torna:

emðu = vÞ ¼ 2½ðuvÞ = ðvocê º vÞ þ fðuvÞ = ðvocê º vÞg3 =3 º . . . ð5º

Substituir a equação 5 na equação 4 dá:

y ¼ 0: 5ðvocê º vÞ = ½1 þ fðuvÞ = ðvocê º vÞg2 =3 º . . . ð6º

As Equações 4 e 6 são formas alternativas de calcular a média. Para pequenos valores da


diferença, o termo entre chaves (na eq. 6) é dado por:

ðuvÞ = ðvocê º vÞ ¼ d =2

Quando d for pequeno, é evidente que a equação 6 fornece o resultado correto. Para
valores maiores, o erro de truncamento aumenta continuamente. A Equação 4 tem o
comportamento oposto; para pequenos valores ded, arredondamento produz resultados
errôneos, mas é preciso quando d é grande. A Figura 1 mostra a dependência de
arredondamento e erro de truncamento emd para precisão única em um PC compatível com
IBM. Para manter a precisão máxima ao longo, a equação 6 deve ser usada quando for mais
precisa do que a equação 4. Os erros proporcionais são, respectivamente:
Equação 4, erro de arredondamento resultante da aritmética de no computador
precisão finita:

r ¼ abdômenðe =dº

0,00012

0,0001

0,00008
Erro

erro de arredondamento
0,00006
erro de truncamento

0,00004

0,00002

0
0,000 0,002 0,004 0,006 0,008 0,010 0,012 0,014 0,016 0,018 0,020
diferença proporcional entre diferenças de temperatura

Figura 1. Comparação de erros de truncamento e arredondamento para cálculo de média logarítmica.


32 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

Equação 6, erro de truncamento ao tomar apenas um número finito de termos em


uma série infinita:

t ¼ d2 =12 ð7º

A Equação 7 é derivada da Equação 6, tomando apenas um termo na série, de modo que o


primeiro termo ignorado seja fðuvÞ = ðvocê º vÞg2 =3. A Equação 6 é preferida à equação 4
quando t <r. Ou seja, quando:

abdômenðd3Þ < 12e ð8º

Tomando apenas o primeiro termo da equação 6, obtém-se a seguinte expressão simples:

y ¼ 0: 5ðvocê º vº

Assim, para pequenos intervalos de diferença de temperatura, é mais preciso usar a média
aritmética como uma estimativa da média logarítmica do que avaliar a média logarítmica
diretamente.
O valor de e pode ser obtido da documentação do compilador usado ou diretamente
dos recursos disponíveis como parte da linguagem de computador empregada. Por
exemplo, em Cþþ, o valor é dado por:

eps ¼ numeric_limits <float> :: epsilon ();

eps ¼ numeric_limits <double> :: epsilon ();

dependendo se o cálculo de precisão simples ou dupla é empregado. Em um PC, o valor de


eps para precisão simples é 1,19207e-7. O pior erro usando a equação 5 é então:

r ¼ t ¼ e2 = 3 =121 = 3 ¼ 1: 058e 5

Assim, mesmo que o melhor método de cálculo da média seja selecionado, o erro máximo
ainda é 100 vezes pior do que a precisão da máquina. A Figura 1 mostra os erros de
truncamento e arredondamento plotados contra a razão das diferenças de temperatura
para um PC em precisão simples. A figura mostra que é mais preciso usar a média aritmética
até diferenças superiores a 1%.
Na precisão dupla, o valor de eps para um PC é 2,22045e-16 e o pior erro é 1,6e-11.
Neste caso, a precisão do computador é reduzida por um fator de
100.000.
Se a precisão resultante não for adequada, o erro pode ser ainda mais reduzido tomando os
primeiros dois termos da equação 5. A Equação 5 agora pode ser usada em uma faixa mais ampla
de até:

abdômenðd5Þ < 40e


ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 33

Em um PC, o erro máximo é dado por:

r ¼ t ¼ e4 = 5 =401 = 5 ¼ 1: 382e 6 ðprecisão únicaº ou 1: 1435e 13 ðdupla precisãoº

A perda de precisão é então reduzida a um fator de 10 na precisão simples e um


fator de 100 na precisão dupla.
Essas considerações de precisão numérica se aplicam igualmente à equação
sistemas baseados. Tais sistemas devem empregar uma função de média logarítmica codificada
como anteriormente, ou uma média logarítmica aproximada que não pode acumular
erro, por exemplo, a média de Underwood:

y ¼ ½ðvocê1 = 3 º v1 = 3Þ =2 3 ð9º

Deve-se tomar cuidado ao implementar a equação 9 para garantir que a função de raiz
cubo empregada seja capaz de calcular as raízes de números negativos.
Este exemplo ilustra um ponto geral em software de engenharia. Onde quer que
possa haver um erro de '' divisão por zero '', verifique se há um valor definido no ponto zero.
Se houver, grandes erros são prováveis quando o numerador e o denominador estão
próximos de zero. É então necessário fazer uma expansão em série, em muitos casos, tanto
do denominador quanto do numerador. A expansão resultante pode ser usada para
encontrar o intervalo no qual é melhor usar os primeiros termos da expansão em vez de
usar a expressão avaliada como 0/0. Também é possível determinar quantos termos da
expansão empregar para atingir a precisão desejada.

Solução de Equações e Inversão de Matrizes. Aqui, os métodos para sol-


ving as equações são apresentadas. Na próxima seção, são discutidos os métodos para
julgar se as soluções obtidas atendem às necessidades do usuário. Primeiro, um método
confiável é introduzido para resolver uma única equação antes de prosseguir para a solução
de conjuntos de equações.
Onde uma única equação não linear é resolvida, o programador normalmente
escreverá a rotina de solução. O problema é simplesmente encontrar uma solução para o
problema:

yfxg ¼ 0

Para convergência segura, é desejável que a solução seja limitada. O seguinte esquema é
recomendado. O ponto de solução é primeiro limitado por dois pontos com resíduos de
sinal oposto. Desse modo:

y1 ¼ yfx1g

y2 ¼ yfx2g

Aqui y1 é o resíduo calculado avaliando a expressão com o ensaio


solução x1 Onde os resíduos dos dois primeiros pontos calculados não têm sinais opostos,
um ponto limite é movido sucessivamente até um resíduo do
o sinal oposto é alcançado. Normalmente, este ponto é obtido começando no ponto
34 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

com o menor residual e gerando um novo ponto para produzir um limite mais amplo,
incluindo o ponto com o menor residual. Se o ponto recém-gerado não tiver um resíduo de
sinal oposto, o limite é sucessivamente movido adiante até que um ponto que tenha um
resíduo de sinal oposto seja alcançado. Freqüentemente, usando o insight físico, os
engenheiros podem gerar dois dois pontos iniciais que garantem ter resíduos do sinal
oposto, por exemplo, uma solução com 100% de fase gasosa e outra com 100% de fase
líquida ou uma solução sem reação e outro com 100% de conversão. Onde as equações têm
soluções múltiplas (como freqüentemente ocorre com equações não lineares), o insight
físico deve ser empregado para estabelecer os limites em torno da solução necessária. O
esquema iterativo então procede da seguinte forma:

1. Um novo ponto é gerado dentro dos limites.


2. O residual é calculado no novo ponto.
3. O novo ponto substitui o limite anterior, tendo um resíduo com o mesmo sinal do novo
ponto.

Agora é fornecido um intervalo mais estreito dentro do qual a solução está garantida.
Este procedimento é repetido até que os limites estejam tão próximos que uma solução de
precisão desejada seja alcançada, ou até que algum outro critério de convergência seja
alcançado.
Existem vários meios de gerar pontos dentro dos limites. O mais simples é dividir o
intervalo e, com mais frequência, o intervalo é simplesmente dividido pela metade para que
o novo ponto fique no ponto médio entre os dois limites anteriores. O
a eficiência pode ser ligeiramente melhoradap d empregando uma pesquisa de Média Áurea. este
a pesquisa divide o intervalo na proporção 5 = 2: ðp 5 1Þ =2 com o novo ponto mais próximo
ao limite que tem o resíduo com o menor valor absoluto. Ambos os métodos alcançam a
convergência muito lentamente. A redução pela metade leva o log (r) /log (2) iterações para
reduzir o intervalo por um fator de r.

usando
ðxeuº1ºUma o métodomais
convergência Newton – Raphson:
rápida geralmente pode ser alcançada gerando o próximo ponto

xeuº1 ¼ xeu yfxeug = ðdy = dxºeu

Aqui, a derivada é calculada no ponto xeu. Quando o ponto recém-gerado fica fora dos limites
(ou a derivada é zero), o ponto gerado é substituído
por um ponto obtido por bissecção ou por Golden Mean. Normalmente, Newton-Raphson
fornece convergência de segunda ordem (consulte a seção intitulada '' Convergência de
Esquemas Iterativos Simples '').
Em aplicações de engenharia química, muitas vezes é difícil realizar uma diferenciação
analítica e a derivada resultante pode ser mais complexa e demorada para calcular do que a
função original. (Também pode ser mais difícil verificar a exatidão do código.) Nessas
circunstâncias, o método da Secante pode ser empregado. O método Newton-Raphson
desenha uma linha reta tangente aoy versus x curva no ponto mais recente avaliado e gera
seu próximo ponto onde a linha tangente cruza o x-eixo. O método da secante desenha uma
linha reta unindo os dois pontos avaliados mais recentemente
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 35

e gera seu próximo ponto onde esta linha secante cruza o x-eixo. A fórmula resultante é:

xeuº1 ¼ ðxeuyeu 1 xeu 1yeuÞ = ðyeu 1 yeuº

A convergência é superlinear, mas menor que a segunda ordem; é de proporção áurea


pedido (1 þ p 5) / 2. Quanto a Newton-Raphson, o ponto gerado é substituído se
está fora dos limites estabelecidos.
Há um requisito frequente na engenharia química para resolver conjuntos de equações. Por
exemplo, os aplicativos se desenvolvem na modelagem de processos complexos de reações
múltiplas, em análises estatísticas ajustando dados experimentais e em planilhas de equilíbrio,
incluindo reciclagens. Freqüentemente, as equações são não lineares, quando um método de
resolução de conjuntos de equações não lineares deve ser empregado.
O meio mais robusto de resolver conjuntos de não lineares é empregar um método de equação única aninhado. Por exemplo,

considere um conjunto de três equações. O método funciona inicialmente fixando valores para as variáveis 1 e 2 e resolvendo para a variável

3 como uma equação de variável única. Esta etapa produz um resíduo zero para a equação 3 e resíduos diferentes de zero para as equações 1

e 2. Assim, essencialmente uma função é encontrada que calcula os resíduos para as equações 1 e 2 enquanto garante que o resíduo para a

equação 3 permaneça em zero. Este é o ninho interno. O ninho interno é uma nova função que pode calcular resíduos para quaisquer valores

das variáveis 1 e 2. Usando esta nova função, um valor fixo inicial é definido para a variável 1. Fixar a variável 1 e resolver para a variável 3

fornece uma equação apenas na variável 2 , que é resolvido como uma única equação de variável. Esta etapa fornece resíduos zero para as

equações 2 e 3 com um resíduo diferente de zero para a equação 1. Este é o segundo ninho usado apenas como uma nova função da equação

1. A Equação 1 agora é resolvida como uma equação de variável única. Quando esta equação é resolvida, uma solução completa é fornecida

para todos os três conjuntos de equações. O método pode ser empregado para qualquer número de equações de 2 para cima. Observe que,

com a variável fixa 1, a solução da equação 3 é uma função da variável 2. Após algumas iterações externas (equação 2), a solução da equação 3

pode ser aproximada por uma função linear da variável uma solução completa é fornecida para todos os três conjuntos de equações. O

método pode ser empregado para qualquer número de equações de 2 para cima. Observe que, com a variável fixa 1, a solução da equação 3 é

uma função da variável 2. Após algumas iterações externas (equação 2), a solução da equação 3 pode ser aproximada por uma função linear

da variável uma solução completa é fornecida para todos os três conjuntos de equações. O método pode ser empregado para qualquer

número de equações de 2 para cima. Observe que, com a variável fixa 1, a solução da equação 3 é uma função da variável 2. Após algumas

iterações externas (equação 2), a solução da equação 3 pode ser aproximada por uma função linear da variável

2. Desta forma, estimativas muito boas da solução interna podem ser geradas de forma que
a convergência possa ser alcançada em apenas três ou quatro iterações. Observe que, para
alcançar uma convergência geral confiável, cada nível de aninhamento deve ser resolvido
com uma convergência mais estreita do que seu aninhamento externo (caso contrário, os
resíduos para o próximo aninhamento aparentemente variam aleatoriamente dependendo
do ponto em que a iteração interna pára). Um fator de aumento de 4 na precisão em cada
nível é considerado o mínimo para alcançar uma convergência confiável. O benefício do
método de solução aninhada é que todas as variáveis podem ser limitadas com limites
iniciais fisicamente significativos, de modo que um método muito confiável esteja disponível
para obter a solução necessária. A desvantagem é que a carga computacional aumenta
exponencialmente com o número de equações. Como consequência, mesmo com boas
estimativas iniciais de variáveis internas, o método requer muitos milhares de iterações
para resolver apenas cinco equações simultâneas. A hierarquia dos critérios de
convergência também pode resultar em precisão inaceitável para a iteração mais externa ou
precisão inatingível para a iteração mais interna. Por esse motivo, é freqüentemente o
método preferido para resolver duas ou três equações, mas raramente é usado para mais
de cinco equações.
36 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

Engenheiros não especializados geralmente resolvem grandes conjuntos de equações


não lineares usando ferramentas de terceiros que foram otimizadas para minimizar o
acúmulo de erros numéricos. Aqui, apenas conjuntos moderadamente grandes de até
algumas centenas de equações são considerados e a discussão dos métodos especializados
de resolução de conjuntos esparsos muito grandes de equações é omitida. (Um conjunto de
equações é esparso quando apenas algumas variáveis aparecem em cada equação.) Os
métodos disponíveis para compactar grandes conjuntos esparsos de equações em
conjuntos mais compactos de equações relativamente densas (eliminando automaticamente
uma grande proporção das variáveis) também não são discutidos . Quando usadas como
parte de um esquema iterativo maior, essas ferramentas de terceiros podem falhar porque
um conjunto de equações sem solução foi gerado ou devido ao acúmulo de erros numéricos.
Algumas características dos problemas de engenharia química podem tornar as
equações difíceis de resolver. É útil ter essas características em mente ao usar ferramentas
de terceiros e quando os engenheiros pretendem desenvolver seus próprios métodos de
solução. É necessário reconhecer essas áreas de problemas potenciais a fim de fornecer
uma base sólida tanto para a seleção de ferramentas adequadas quanto para a criação de
solucionadores sob medida.
Existem dois casos em que os métodos de solução falham com frequência. O primeiro
é quando as equações são redundantes e o segundo é quando são inconsistentes. Esses
casos podem ser ilustrados por referência aos seguintes conjuntos de equações:
Considere as equações:

2x1 º 2x2 ¼ 2 2x
1º 2x2 ¼ 2

e:

2x1 º 2x2 ¼ 3 2x
1º 2x2 ¼ 1

O primeiro conjunto mostra redundância (a mesma equação é repetida duas vezes), e há um


número infinito de soluções. O segundo mostra inconsistência e não há soluções. Essas
equações podem se originar em problemas de engenharia química (e outros). Por exemplo,
um processo pode incluir a reciclagem de uma saída de um separador. Sob uma ampla
gama de condições, 100% de uma determinada espécie química pode sair da saída reciclada.
Enquanto essas condições se aplicam, não pode haver uma solução equilibrada de estado
estacionário para a planilha. Qualquer que seja o método empregado para resolver as
equações correspondentes, ocultas no conjunto de equações, há uma expressão que se
reduz a:

r¼rºf

Onde r é a quantidade que é 100% reciclada e f é a taxa de alimentação adicionada ao ciclo de


reciclagem. Assim, a alimentação é constantemente adicionada à reciclagem e aumentaria
indefinidamente. É provável que um conjunto de equações incluindo tais equações inconsistentes
também inclua equações redundantes. Equações redundantes também podem se desenvolver
como resultado do caminho iterativo que o solucionador segue até a solução. Por exemplo, o
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 37

o solucionador pode usar um n-versão dimensional do método Newton – Raphson ou


Secant. Esses métodos geram uma aproximação linear local para as superfícies curvas que
representam as equações (planos tangenciais ou planos secantes). Considere apenas uma
superfície curva plana em três dimensões. Agora considere duas linhas na superfície (que
podem ser geradas como tangentes ou secantes). Se as linhas se cruzam e estão em
direções diferentes, um plano pode ser traçado através das linhas e podem resultar
equações lineares que não são redundantes ou inconsistentes. Se as linhas são ponta a
ponta e na mesma direção (noxy plano), uma superfície linear não pode ser desenhada
através das linhas e as equações lineares resultantes são redundantes (se as linhas
coincidem) ou são inconsistentes se as inclinações são diferentes. Com um
n-superfície curva dimensional, é mais difícil rastrear as possíveis redundâncias e
inconsistências que podem se desenvolver.
A maneira mais freqüentemente usada para resolver conjuntos de equações lineares é
empregar fatoração LU (ver Perry's Chemical Engineers 'Handbook (28, Seção 3)). Seja ou
não o inverso da matriz dex coeficientes também é produzido, o tempo de execução é
proporcional ao cubo do número de equações. A discussão anterior está relacionada
principalmente a esta estratégia de solução. No entanto, vários programas de engenharia
química empregam métodos alternativos na resolução de conjuntos de equações não
lineares que, em princípio, são mais rápidas. Os métodos alternativos também podem ser
modificados para contornar muitos dos problemas que desafiam os métodos padrão.

Note-se que a matriz a ser invertida muda apenas ligeiramente a cada linearização
sucessiva. Em seguida, um esquema iterativo pode ser configurado de modo que:

x
_ euº1 ¼ x _ eu UMAeuy
_ eu

Nesta equação, _xeu representa aquele conjunto de valores que produz um valor aproximado
solução para o conjunto de equações após eu iterações. UMAeu é uma aproximação da
matriz Jacobiana inversa e x _ euº1 é uma solução melhorada. Os vários métodos

(geralmente conhecidos como métodos quase-Newton) diferem na maneira como


atualizar UMAeu após cada iteração e nas etapas que eles executam para evitar os problemas
de redundância e inconsistência observados anteriormente. Tanto o cálculo de
a próxima iteração e a atualização da matriz são proporcionais ao quadrado do número de
equações a serem resolvidas. Com mais de 10 equações, os métodos podem ser
significativamente mais rápidos. Esses métodos são conhecidos há muito tempo; consulte,
por exemplo, a Referência 29. O método exato descrito nessa referência é aplicável quando
uma linha / coluna é substituída a cada iteração. O método pode ser empregado quando a
nova coluna / linha é gerada por uma etapa de Newton – Raphson ou por uma etapa de
Secante. O método detecta automaticamente quando a matriz ficaria mal condicionada (o
que poderia ocorrer pela introdução de uma linha / coluna que seria quase uma combinação
linear de um subconjunto das linhas / colunas anteriores). Nessas circunstâncias, o método
organiza que a nova linha / coluna substitua uma das linhas / colunas que não estão no
subconjunto linear. Nesse caminho, problemas numéricos são evitados e a convergência de
ordem relativamente alta é mantida. Abordagens alternativas atualizam o inverso Jacobiano
aproximado de maneiras que garantem uma melhoria, mas não para atingir o inverso
exato. Uma estratégia que muitas vezes é empregada em engenharia química e disciplinas
relacionadas é organizar as equações de tal forma que uma simples iteração de
ressubstituição provavelmente
38 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

convergem, embora lentamente. A estimativa inicial do inverso é então definida para a matriz
unitária de forma que o Jacobiano nunca seja avaliado e uma inversão completa nunca seja
realizada. Mesmo quando ocorrem problemas de redundância ou inconsistência, o progresso
para uma solução pode ser mantido, revertendo total ou parcialmente para a matriz da unidade.

Agora, dois recursos que se desenvolvem ao resolver conjuntos de equações são


considerados. A primeira é como lidar com o acúmulo de erros numéricos na atualização da
matriz Jacobiana inversa. A segunda é como o esquema iterativo pode ser limitado de forma
que não divirja. Quando esses dois tópicos forem considerados, o método de continuação e
seu uso em cálculos de engenharia serão descritos.

Limitando o acúmulo de erros numéricos. Uma desvantagem de alguns


métodos de atualização é que a qualidade do inverso pode deteriorar-se progressivamente
à medida que os erros se acumulam. Segue-se um procedimento simples para verificar e
refinar matrizes inversas quando o próprio Jacobiano está disponível. Onde o Jacobiano
ainda não estiver disponível, ele pode ser gerado, por exemplo, fazendo uma estimativa da
diferença central das derivadas fazendo perturbações em cada variável. Desse modo,

Beu j ¼ @yi = @xj yeufdxjg yeuf dxjg = ð2dxjº

Nesta equação yeufdxjg é o valor de yeu calculado com todos os valores de xno ponto de base,
exceto para o elemento j. Elemento j tem o valor ðxj º dxjº, Onde xj é o seu valor base.

O teste mais direto dessa matriz B é o inverso da matriz UMA é formar a diferença e
calcular o tamanho dos elementos da matriz de diferença; portanto:

D ¼ AB 1
Deu j ¼ P UMAik Bkj eu 6¼ j
k

Dii ¼ P UMAik Bki 1


k

O tamanho de D pode ser medido de várias maneiras. O mais simples é encontrard, a


tamanho da raiz quadrada média do elementor ffitffiffisffi ffiT X
enffi X ffi.ffiffi

ffiffiffiffihffiffiffivocêffiffiffisffiffi, ffi para um milímetros matriz:


2
d¼ D2ij =m
eu k

Se d é comparável à precisão da máquina, B é uma boa estimativa do inverso de


UMA. Se d é muito grande, uma estimativa melhorada de B É dado por:
0
B ¼ Bð1 Dº

Se d <1 /m, é garantido que d'< d, Onde d'é encontrado na matriz AB'. Este critério de
convergência é conservador, eB'pode ser melhor do que B, até
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 39

quando a condição não for atendida. O refinamento pode ser aplicado iterativamente para
alcançar precisão suficiente a partir de qualquer estimativa inversa adequada. O método é
simples e seguro de programar porque não requer divisões. No entanto, requer tempo
computacional proporcional ao cubo do número de equações. (Requer cerca de duas vezes
mais operações do que recomputar o inverso por fatoração LU.) Pode ser usado para aparar
ocasionalmente procedimentos de atualização inversa direta que, de outra forma, poderiam
acumular erros numéricos.
Métodos semelhantes podem ser empregados para lidar com inversões de matriz que
ocorrem na otimização não linear e análise estatística.
Definindo limites nas variáveis. Em contraste com os casos de variável única e solução aninhada, as variáveis
individuais não podem ser limitadas de forma que, a cada iteração, os limites se tornem mais estreitos. Isso não pode ser feito
porque o melhor valor de qualquer variável individual depende dos valores das outras variáveis. Portanto, à medida que a iteração
prossegue, qualquer variável particular pode aumentar e, subsequentemente, diminuir. Em vez de limitar variáveis individuais, a
técnica mais amplamente usada é garantir que a soma dos quadrados dos resíduos diminua a cada iteração. Tendo estabelecido
um ponto com uma soma dos quadrados dos resíduos de '' S, '' a soma dos quadrados dos resíduos no próximo ponto é calculada.
Se essa soma for menor que '' S, '' o ponto é aceito. Se a soma for maior que '' S, '' o ponto é rejeitado. Tipicamente, uma pesquisa
linear ao longo da linha que une os dois pontos mais recentes é conduzida para estabelecer o ponto ao longo da linha em que a
soma dos quadrados é mínima. Não há nenhum requisito para estabelecer este ponto mínimo com precisão; apenas um ponto é
necessário no qual a soma dos quadrados diminui para permitir que a iteração continue. O método de pesquisa de linha mais
amplamente empregado é calcular o ponto mínimo na suposição de que todos os resíduos variam linearmente entre os dois
pontos calculados. Existe então uma base analítica simples para calcular a posição do próximo ponto. A equação necessária é:
apenas um ponto é necessário no qual a soma dos quadrados diminui para permitir que a iteração continue. O método de
pesquisa de linha mais amplamente empregado é calcular o ponto mínimo na suposição de que todos os resíduos variam
linearmente entre os dois pontos calculados. Existe então uma base analítica simples para calcular a posição do próximo ponto. A
equação necessária é: apenas um ponto é necessário no qual a soma dos quadrados diminui para permitir que a iteração continue.
O método de pesquisa de linha mais amplamente empregado é calcular o ponto mínimo na suposição de que todos os resíduos
variam linearmente entre os dois pontos calculados. Existe então uma base analítica simples para calcular a posição do próximo
ponto. A equação necessária é:

2
z ¼ Sðy0euðy0eu y1euÞ =Sðy0eu y1euº

Nesta equação, y0eu é residual eu no ponto base e y1eu é o residual eu no novo ponto que não
é melhor do que o ponto de base. O melhor conjunto
de estimativas de _x São então:

xeu ¼ ð1 zºx0eu º zx1eu

Os subscritos têm o mesmo significado que na equação anterior. Se o novo ponto resultante
não for melhor do que o anterior, o procedimento é repetido.
Método de continuação. Onde um conjunto de equações tem várias soluções, um
método de continuação pode ser empregado para localizar a solução desejada. A continuação
também pode ser empregada para conjuntos de equações "difíceis" para os quais não é possível
encontrar estimativas iniciais que permitam o progresso da iteração. O método de continuação
(às vezes conhecido como método Davidenko Path) funciona da seguinte maneira.
O objetivo é resolver o conjunto de equações:

yfx
_ _g ¼ 0
40 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

Onde _y é o vetor de resíduos e _x é o vetor de variáveis cujo valor deve ser encontrado.
Este conjunto de equações é substituído pelo conjunto:

yfx
_ _; vocêg ¼ 0

Neste conjunto de equações:

yfx
_ _; 1g ¼ 0

tem a solução do conjunto inicial de equações, e:

yfx
_ _; 0g ¼ 0

tem uma solução facilmente encontrada. Em seguida, um conjunto de problemas é resolvido começando
comvocê ¼ 0 e progredindo com valores sucessivamente maiores de você até que o problema do alvo
original seja resolvido. Por exemplo, pode ser apresentado um problema de separação difícil para o qual
é difícil encontrar estimativas iniciais que levem a uma solução. Uma estratégia de continuação pode ser
inicialmente definir as eficiências de palco da seguinte forma:

E ¼ uE0

Nesta equação, E0 é a eficiência de estágio real que é empregada e E é a eficiência de


estágio usada para problemas intermediários. A solução inicial,
com eficiência de estágio zero, é trivial. Essa solução fornece um ponto de partida pronto (conjunto de
estimativas iniciais) para resolver um conjunto de equações com um pequeno valor devocê.
Então, essa solução é usada como ponto de partida para um valor ligeiramente maior de
você ou as duas soluções anteriores são usadas para projetar uma boa estimativa inicial da
solução com o maior valor de você. O processo continua desta forma com uma estimativa
inicial muito boa para cada problema sucessivo até você ¼ 1 é alcançado, quando o
problema desejado foi resolvido com todas as eficiências do estágio em seus valores
requeridos. Dessa forma, é gerado um caminho de um problema trivial para o problema de
destino. A cada passo ao longo do caminho, boas estimativas iniciais da solução local
garantem uma convergência estável e melhor do que a primeira ordem.
Observe que na maioria dos livros didáticos de análise numérica (incluindo a Referência 24),
a recomendação é resolver alguns conjuntos de problemas como:

yfx
_ _; vocêg ¼_ yfx
_g º
ð1 vocêºy fx g
_ G_ _G
¼0

Nesta equação, _yG _ x _G é o conjunto de resíduos obtidos com uma estimativa inicial x _ G
da solução. Esta formulação garante que, quandovocê ¼ 0, há um conhecido
solução x _ G e quando você ¼ 1, o problema do alvo original foi resolvido. No entanto,
esta abordagem raramente tem sucesso em problemas de engenharia química porque
pode não ser possível reduzir todos os resíduos proporcionalmente. Por exemplo, ao viajar
ao longo do caminho de continuação, a razão de refluxo em uma coluna de destilação
multicomponente pode se alterar. Ao fazer isso, um componente após o outro sai da
extremidade leve. Se esses fl uxos de componentes contribuem para o conjunto de resíduos,
qualquer caminho de solução viável requer que os resíduos sejam reduzidos a zero um de
cada vez e é impossível reduzi-los proporcionalmente. Outras situações semelhantes
ocorrem. O critério importante na seleção de um caminho de continuação é o uso físico
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 41

compreensão e julgamento da engenharia na definição de um caminho para o qual as soluções são


possíveis em todos os pontos.
Esse julgamento também é necessário para definir um caminho que rastreie uma
determinada solução desejada. Por exemplo, um processo que inclui uma reação
exotérmica resfriada freqüentemente tem três soluções. A primeira solução é aquela em
que o resfriamento predomina e o reator permanece frio; nenhuma reação jamais começa a
gerar o calor necessário para manter a reação. A segunda solução é aquela em que a reação
exotérmica domina e o reator fica muito quente produzindo produtos indesejados (ou
mesmo perdendo integridade). A terceira e desejada solução é aquela em que o calor
gerado e removido é equilibrado a uma temperatura intermediária, dando origem aos
produtos desejados (por exemplo, em oxidações parciais). Qualquer caminho de
continuação deve ser configurado de forma que comece em uma solução equilibrada, não
em um dos extremos.

Outro método que às vezes é eficaz é substituir o problema que resolve equações
algébricas por um problema de minimização que minimiza a soma dos quadrados dos
resíduos (ponderados, se desejado, para dar prioridade a algumas equações sobre outras).
Uma minimização adequadamente projetada não será interrompida quando as equações se
tornarem redundantes ou inconsistentes. Os métodos de minimização de segunda ordem
podem ter dificuldade porque a função objetivo torna-se independente de algumas
variáveis. No entanto, a minimização ajustando as outras variáveis pode continuar com a
esperança de que a causa da redundância ou inconsistência local desapareça à medida que
o cálculo continua. Um comprimento máximo da etapa pode ser definido para evitar
grandes etapas em variáveis quase redundantes.
Convergência de esquemas iterativos simples. Conforme descrito no anterior
seção, métodos iterativos são usados para resolver muitos problemas de engenharia. Esta
seção se preocupa em definir e alcançar critérios de convergência que produzam um
resultado com um nível desejado de precisão. Deve-se enfatizar que esta seção não se
preocupa com soluções limitantes ou com etapas intermediárias que podem gerar soluções
piores. Nesse estágio, assume-se que os métodos descritos anteriormente foram
empregados para fornecer a estimativa da solução suficientemente perto da solução de que
os resíduos estão diminuindo a cada iteração. Assim, esta seção se preocupa apenas em
determinar se os resíduos são suficientemente pequenos para que a solução seja aceitável.
Em muitos casos, é desejável permitir que o usuário estabeleça limites de convergência. No
entanto, tanto o usuário quanto o programador devem estar cientes de que a medida mais
simples de convergência, ou seja, os valores dos resíduos, podem não refletir a magnitude
dos erros que ainda estão presentes. As características de convergência de equações
simples são apresentadas primeiro; então, conjuntos de equações simultâneas são
considerados.
Para um problema de variável única, estimativas sucessivas podem ser escritas:

x º e1; x º e2; x º e3; x º e4; . . .

Onde x é o resultado correto e e é o erro. (x º e1) é o primeiro palpite da solução. Paran


convergência de ordem, erros sucessivos são dados por:

eeuº1 ¼ ken eu
42 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

k é um coeficiente constante. Se, por qualquereu; ken eu < eeu, todos os erros subsequentes irão
diminuem e o esquema converge.
Convergência de primeira ordem (n ¼ 1) é comumente encontrado em engenharia química
cálculos. (É necessário apenas um passo de primeira ordem em um esquema de segunda
ordem para reduzir a ordem de convergência de todo o esquema.) Para convergência de
primeira ordem:

ej ¼ kje0

Muitos programas de engenharia química aceitam convergência se:

abdômenðf Þ < c; Onde c é algum critério de convergência e f É dado por:


f ¼ ðxeu x eu
Þ 1¼ keue0 keu 1e0

Nesta equação, xeu 1 é a estimativa anterior da solução e xeu é a estimativa atual (mais
recente). Esta diferença entre duas estimativas sucessivas
fornece uma medida de erro. Usando essa medida, é garantido que a medida de erro tem as
mesmas unidades da variável desejada. Além disso, em vários esquemas iterativos, os
resíduos são calculados substituindo as estimativas das incógnitas em equações que
recalculam essas variáveis. Os resíduos então correspondem diretamente às diferençasf
acima. Usando essa medida de erro, é importante decidir se aceita os valores estimados
como uma solução adequada para o problema. Para convergência de primeira ordem, o erro
e pode ser maior que f. O erro é dado por:

eeu ¼ keue0 ¼ kf =ð1 kº ð10º

Portanto, se k é negativo, o erro é menor que f (soluções sucessivas estão em lados opostos
da resposta correta), mas se k>1, o erro é maior do que f. Se k
está próximo de 1,0, o erro do ponto mais recente (eeu) é muito maior do que a diferença
entre estimativas sucessivas da solução (f). A taxa de conversão
gence (medido por k) é provável que mude de conjunto de dados para conjunto de dados.
Em conjuntos de dados de convergência lenta, por exemplo, comk ¼ 0,9, o erro é grande em
comparação com o critério de convergência c. A estratégia recomendada é calcular k
(por f i =f eu 1) e calculá-lo em várias iterações. O erro dado pela equação 10 pode então ser
estimado e uma precisão consistente pode ser aceita
na convergência.
Claramente, a equação 10 pode ser empregada para gerar uma estimativa melhor do
solução. Da definição def:

x ¼ ðxeu kxeu 1Þð1 kº ð11º

Nesta equação, x é uma estimativa melhor da solução. Uma estimativa do


erro nesta solução pode ser obtido a partir de uma indicação da variabilidade de k
de iteração em iteração.
Onde a magnitude de k diminui consistentemente de iteração para iteração, a convergência
é melhor do que a primeira ordem. Para convergência de ordem superior, equação 10
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 43

gera uma estimativa conservadora do erro residual (portanto, o erro real é menor que o
valor calculado pela eq. 10).
Para um problema multivariável com m variáveis, f na equação 10 pode ser
substituído por:
sX ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi

2 =m
f eu
¼ xj; eu xj; eu 1
j

As variáveis devem ser escaladas para tornar a precisão desejada de cada variável
semelhante. feu é então uma medida da etapa média de uma iteração para a próxima, em
que a taxa média de convergência pode ser calculada a partir de:

k ¼ f euº1 =f eu

Se k aproxima-se de um valor constante, a equação 10 pode ser aplicada a cada variável


separadamente, a fim de obter estimativas de erro para cada uma. Observe que o mesmo valor de
k deve ser usado para cada um. Onde uma convergência de ordem superior é alcançada, este
procedimento produz uma estimativa conservadora de erros residuais.
Crowe e Nishio (30) mostram que a equação 11 pode ser aplicada também a conjuntos
de equações, desde que os erros para todas as variáveis estejam diminuindo na mesma
proporção. Esses autores apresentam métodos de convergência acelerada modi fi cados
aplicáveis quando os erros das variáveis individuais não estão diminuindo na mesma
proporção. Isso também deixa claro que, as equações 10 e 11 não devem ser aplicadas a
cada variável separadamente (método de Wegstein) quandok não é o mesmo para todas as
variáveis. Para reiterar, o método de Wegstein não deve ser aplicado a conjuntos de
equações porque, como resultado de interações entre as variáveis, pode
gerar amplamente divergentes e estimativas erráticas.
A ordem de convergência pode ser verificado a partir das seguintes relações:

f euº1 ¼ kf neu

f eu
º 2 ¼ kf neuº1

Por isso:

n ¼ em f euº2 =f euº1 =em f euº1 =f eu ð12º

Onde as equações podem ou não convergir satisfatoriamente dependendo do


conjunto de dados, é recomendado que o usuário seja capaz de definir um critério de
convergência alvo e um limite no número de iterações. O usuário tem então a oportunidade
de experimentar conjuntos de dados para estabelecer um conjunto que mostra
convergência adequada. Onde a ordem de convergência é maior do que a primeira ordem
(por exemplo, ao usar um método Newton-Raphson ou método Secant), geralmente não é
útil fornecer a opção para o usuário definir limites de convergência. O programador deve
definir um limite no número de iterações e no critério de convergência. (Observe que é
particularmente difícil para o usuário estabelecer limites de convergência quando há um
procedimento de solução aninhado e cada nível de ninho requer convergência
sucessivamente mais estreita.) Em vez disso, é melhor definir um
44 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

limite de convergência próximo à precisão da máquina. (O limite deve ser um múltiplo


adequado da precisão da máquina ou do pior erro de arredondamento, o que for maior).
Geralmente, levará um número significativo de iterações para chegar perto da solução, após
o que a convergência é muito rápida. Assim, para uma boa aproximação, o número de
dígitos corretos na solução dobra a cada iteração com métodos de segunda ordem e
aumenta em 60% com a iteração secante. Considere o caso em que, após várias iterações, o
resultado é preciso para três números significativos. Com a convergência de segunda
ordem, o número de dígitos corretos em cada iteração seria o seguinte: 3, 6, 12 e 24. Assim,
com apenas três ou quatro iterações adicionais, qualquer critério de convergência razoável é
ultrapassado. Com a convergência secante,

8, 13 e 21. Assim, com apenas quatro ou cinco iterações adicionais, qualquer critério de
convergência razoável é ultrapassado. Para esse pequeno cálculo adicional, vale a pena
garantir que o próprio cálculo introduza um erro desprezível. Assim, é garantido que
qualquer erro no resultado se origina nos dados ou nas deficiências básicas das equações
empregadas.
Solução de equações diferenciais. Livros didáticos de análise numérica (para
Por exemplo, Epperson (24) descreve vários métodos robustos para resolver equações
diferenciais e diferenciais parciais, e muitos desses métodos estão disponíveis em
bibliotecas de programas de computador, como aquelas referenciadas anteriormente. Está
além do escopo deste artigo classificar e descrever esses métodos. Em geral, é
recomendado consultar fontes especializadas no desenvolvimento de soluções para
problemas de engenharia. No entanto, químicos e engenheiros frequentemente empregam
discretização simples ao resolver problemas como alterações de composição de
rastreamento por meio de um reator de leito empacotado de fluxo de plugue ou o
progresso de uma reação em um lote bem agitado. Esta discretização simples é equivalente
a um procedimento de solução de diferença direta (Euler direto). O fraco desempenho
numérico do método é bem conhecido. Uma modificação é apresentada aqui que pode
melhorar o desempenho de métodos de discretização simples sem empregar métodos de
biblioteca mais poderosos. O método da diferença central (ou regra trapezoidal) é descrito.

Para resolver uma única equação diferencial para produzir f como a função de t, o método
de diferença direta funciona da seguinte maneira. f e seu derivado df / dt são calculados no tempo
t. Uma estimativa de f na próxima vez, o incremento é então:

f tºdt ¼ f t þ ðdf = dtºtdt ð13º

O valor de f no tempo ðt º dtº permite que a derivada neste ponto seja calculada e a
integração continue. O procedimento é simples e não requer iteração. No entanto, tem
várias desvantagens. Mesmo sem acumular erros numéricos, ele pode prever o
comportamento oscilatório instável para sistemas que são estáveis na prática.

O desempenho aprimorado pode ser obtido substituindo a derivada calculada em t


pela média das derivadas calculadas em t e ðt º dtº. O novo
fórmula é:

f tºdt ¼ þf t ð = dt tÞ þ ð df = dtºtºdt dt
0: 5 dt ð14º
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 45

O cálculo prossegue da seguinte maneira. O valor no momentoðt º dtº é calculado como


para o caso de diferença direta. A derivada no novo ponto é calculada e substituída na
equação 14 para fornecer uma estimativa melhorada. A iteração continua até a
convergência. O valor def que resolve a equação pode ser obtido por métodos
estabelecidos, como o método Secant ou o método de Newton-Raphson ou, se a expressão
derivada for suficientemente simples, analiticamente.

Onde há um grande número de elementos em f, o método da diferença central


requer, portanto, a solução de um conjunto de equações algébricas não lineares (em geral).
Os simuladores de processo já incluem métodos poderosos para resolver tais equações
(para equilibrar as reciclagens, etc.). O método foi estendido com sucesso para discretizar
objetos tridimensionais para rastrear seu comportamento ao longo do tempo ao simular um
processo químico completo.
Os benefícios da diferença central são que a mesma precisão pode ser alcançada com
menos etapas (mais longas) e o método não mostra comportamento instável espúrio.

Onde a verificação de erros não faz parte da rotina de integração empregada, a


precisão da integração deve ser verificada. Para umnintegração de ordem, o erro é dado por:

e ¼ kDxn

Onde e é o erro e Dx o comprimento do passo para integração. Para integração de primeira


ordem, o erro por etapa varia como o quadrado do comprimento da etapa. O erro total é o erro
por etapa multiplicado pelo número de etapas, que é inversamente proporcional ao comprimento
da etapa. O efeito líquido é que o erro total é diretamente proporcional ao comprimento do passo.

Uma verificação simples que pode ser colocada em qualquer programa de engenharia é repetir
a integração com o dobro do comprimento do passo. Resultado de duas estimativas de erro:

y1 ¼ y º kDxn

e:
y2 ¼ y º 2nkDxn

Combinar as duas equações dá:

y1 ¼ y þ ðy2 y1Þ = ð2n 1º ð15º

O erro na integração mais precisa é, portanto, menor ou igual à diferença entre as duas
estimativas. Adicionar essa integração de passo duplo aumenta o tempo computacional em
50% para integração simples e em 25% para integração bidimensional. O custo em tempo
computacional é, portanto, relativamente baixo para fornecer uma medida de controle de
qualidade para a integração. Onde há confiança na ordem de integração, a equação 15 pode
ser usada para obter uma melhor estimativa dey. (Para n ¼ 2, isso é conhecido como
Richardson's h-método ao quadrado.) Quando houver dúvida sobre a ordem, é cauteloso
assumir uma ordem superior para prever uma solução, mas uma ordem inferior para
estimar o erro. Teoricamente,
46 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

integração da diferença para a frente é de primeira ordem e a integração da diferença central é


segunda ordem.
4.5. Organizando Expressões para Computação. O princípio geral
plos a serem aplicados no arranjo de equações para computação são como segue:

1. As equações devem ser o mais linear possível em uma faixa tão ampla quanto possível.

2. As equações devem ser computáveis para todos os valores das variáveis do lado
direito.
3. Expressões explicitamente computáveis devem ser preferidas a expressões que precisam
ser resolvidas iterativamente.

A linearidade é necessária porque as expressões freqüentemente fazem parte de


esquemas iterativos maiores. Essas iterações quase sempre são resolvidas por linearização
local (por exemplo, iteração de Newton-Raphson). O tamanho da região dentro da qual a
convergência rápida é alcançada é determinado pelo tamanho da região dentro da qual as
equações relevantes são (quase) lineares. Essas considerações se aplicam igualmente a
programas convencionais (tipo atribuição) e a sistemas de modelagem baseados em
equações.
Se o lado direito (ou equação) não for computável, nenhum esquema iterativo pode fazer
um progresso razoável para uma solução convergente.
As expressões explícitas são preferidas porque são mais rápidas e porque o risco de
uma iteração não convergir é eliminado.
Para colocar as equações na melhor forma de cálculo, pode ser necessário derivá-las
dos primeiros princípios, em vez de empregar uma fórmula de livro didático convencional.
Os princípios gerais serão ilustrados por referência a dois exemplos específicos, simulação
de trocador de calor e simulação de fl ash isotérmico.
Para simulação de trocador de calor, a equação mais frequentemente encontrada na
literatura de engenharia química é:

Q ¼ UADT

Onde DT é a diferença de temperatura média logarítmica. Esta equação tem sido usada
extensivamente em simulação, otimização e até mesmo estudos de síntese de processos. O
trocador de calor é simulado estimando-se a temperatura de saída de um trocador,
calculando a outra por equilíbrio de calor e, portanto, determinando a diferença logarítmica
de temperatura média. A diferença de temperatura média logarítmica é usada para calcular
o calor transferido. As temperaturas de saída são então recalculadas e a iteração continua.
Esta iteração é usada explicitamente em simuladores modulares, mas, embora presente,
pode não ser imediatamente óbvia em simuladores baseados em equações.

Uma formulação melhorada pode ser obtida observando-se que a temperatura média
logarítmica é derivada de uma solução analítica de um trocador de contra-corrente (ou co-
corrente) ideal com propriedades físicas constantes. Esta solução analítica pode ser
empregada diretamente para evitar a iteração da temperatura; portanto:

TFora ¼ noem þ ð1 umaºtem ð16º


ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 47

Onde:

uma ¼ pð1 SÞ = ð1 pSº

p ¼ expfUAðS 1Þ = ðMhChÞg

S¼ MhCh =McCc

T é a temperatura do fluxo quente, t é a temperatura do fluxo frio, M é a taxa de fluxo


de massa, C é calor específico, e subscritos c e h correspondem a riachos frios e quentes.

Existe uma equação semelhante para a temperatura fria de saída.


QuandoS 1, os mesmos problemas numéricos ocorrem conforme observado para a equação 1
quando u v. Uma expansão semelhante é necessária para calcular uma para este caso.
Os seguintes objetivos foram alcançados:

1. T e t são funções lineares das temperaturas de entrada


2. As temperaturas são computáveis para todas as variáveis do lado direito.
Especificamente, os problemas de cruzamento de temperatura associados ao cálculo
de temperaturas logarítmicas são eliminados.
3. As expressões para a temperatura de saída são explícitas e não iterativas.

A Equação 16 é particularmente útil no cálculo da distribuição de temperatura em uma


rede com fl uxos de fl uidos fixos. A distribuição da temperatura é determinada por
equações lineares, e a distribuição completa da temperatura pode ser obtida de forma
rápida e não literária.
Para propriedades físicas não constantes, a equação fornece os mesmos erros
incorridos pelo emprego da temperatura média logarítmica. (Baseia-se exatamente nas
mesmas suposições, portanto, esse comportamento é esperado.)
A temperatura média logarítmica é encontrada com mais frequência na literatura
porque é adequada para cálculos de '' design '' manuais. A abordagem auxiliada por
computador é projetar por meio de simulação. Assim, um projeto é hipotetizado e então
simulado. Os tamanhos e condições operacionais são ajustados para melhorar o
desempenho.
Para o problema de troca de calor, é possível gerar equações que são exatamente
lineares nas variáveis requeridas (temperatura). Onde tal linearização exata não é possível,
ainda é desejável fazer as equações tão lineares quanto possível. O exemplo a seguir ilustra
a aplicação do princípio a tal problema, a saber, a simulação de um flash isotérmico simples.

Na simulação de fl ash isotérmico mais simples, uma mistura ideal de composição


conhecida e taxa de alimentação é fornecida a um recipiente mantido em temperatura
constante. A alimentação se divide nas fases líquida e vapor, e o objetivo é determinar a
proporção e composição de cada fase. No caso mais simples, a fração molar de vapor,
yeu, é calculado a partir da fração molar líquida, xeu, pelo k-relação de valor assumindo que k-
os valores dependem apenas da temperatura; portanto:

yeu ¼ keuxeu
48 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

Uma solução iterativa é empregada começando com uma estimativa inicial da líquido
fração, você. O equilíbrio do material dá:

zeu ¼ uxeu þ ð1 vocêºyeu ¼ uxeu þ ð1 vocêºkeuxeu ð17º

Onde z é a fração molar da alimentação.


Reorganizando a equação 17 dá:

xeu ¼ zi =½vocêð1 keuÞ þ keu ð18º

As frações molares líquidas somam um. Portanto, a equação 18 fornece:

1 ¼ Szi =½vocêð1 keuÞ þ keu ð19º

A Equação 19 é uma equação de variável única para você. A solução pode ser
substituída na equação 18 para obter as frações molares líquidas e, portanto, as frações
molares de vapor. O fl ash pode, portanto, ser totalmente calculado.
A Equação 19 não atende ao critério de um relacionamento quase linear. A Figura 2
mostra um gráfico típico com uma solução emvocê ¼ 0,5. É mostrado que existe uma
solução espúria emvocê ¼ 1.0. Qualquer esquema iterativo mostrará propriedades de
convergência pobres se a estimativa for maior que 0,5 e pode convergir para a solução
errada. Essas dificuldades são experimentadas igualmente em programas convencionais e
em sistemas de modelagem baseados em equações.
Uma linha mais próxima é obtida tomando a diferença entre as frações molares de
vapor e líquido, o que resulta na equação 20:

0 ¼ Sðkeu 1ºzi =½vocêð1 keuÞ þ keu ð20º

A curva correspondente é mostrada na Figura 3. Diferenciação da equação


20 mostra que é monotonicamente positivo e quase linear, para todas as composições
e k-valores.

0,25

0,2

0,15
residual

0,1

0,05

0
0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0.9 1

- 0,05
Fração líquida

Figura 2. Solução iterativa do cálculo do fl ash, método A.


ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 49

0,3

0,2

0,1
Residual

0
0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0.9 1

- 0,1

- 0,2

- 0,3
Fração líquida

Fig. 3. Solução iterativa do cálculo do fl ash, método B.

A Equação 20 fornece o benefício adicional de que os pontos finais correspondem


t¼o as condições de orvalho e de ponto de bolha relevantes. Assim, se a função é zero emvocê
0, a mistura é totalmente líquida, apenas no ponto de bolha. Um valor positivo corresponde
esponja para um líquido monofásico abaixo de seu ponto de bolha. Da mesma forma, se a função for zero em
você ¼ 1, a mistura é totalmente vaporizada em seu ponto de orvalho e os valores negativos correspondem a
uma fase gasosa acima de seu ponto de orvalho.
Para misturas não ideais, os valores de k dependem da composição e são recalculados
a cada iteração. Um conjunto den agora são fornecidas equações simultâneas que devem
ser iteradas também nos valores de k. A formulação da equação 20 ainda produz um
conjunto de equações mais linear e mais facilmente resolvido do que a equação 17. De fato,
essa quase linearização é mais importante na resolução de grandes conjuntos de equações
do que na solução de equações de variável única. Soluções espúrias locais são mais difíceis
de detectar em um grande conjunto de equações do que em apenas uma equação. Também
é mais difícil implementar um método que possa ter sucesso quando essas condições
difíceis ocorrem. Considere, por exemplo, a Figura 2. Se, durante a iteração, uma fração
líquida de 0,9 se desenvolve, a iteração única variável pode ter sucesso porque haverá um
limite com uma fração líquida menor que 0,5 e uma ou mais etapas de bissecção trarão o
limite superior abaixo de 0,75. O mesmo limite impedirá que uma etapa de Newton –
Raphson, ou semelhante, gere uma iteração fora dos limites. No entanto,

0,75 é atingido.
É reconhecido que, para este problema específico, há muitos casos em que a não-
idealidade é tão branda (como as frações do petróleo) que a variação de
k com composição é pequena. Nessas circunstâncias, apenas o cálculo da divisão de fase
precisa ser resolvido usando um método poderoso como Newton – Raphson ou Secant; as
demais variáveis são resolvidas por simples re-substituição. No entanto, na generalidade
dos casos, a nãoidealidade introduz equações adicionais. Então, torna-se ainda mais
importante que cada equação seja monotônica (e tão próxima
50 ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR

linear quanto possível) em toda a gama de todas as variáveis que ocorrem na equação.

A linearidade das equações geralmente pode ser melhorada por uma escolha
criteriosa de variáveis. Por exemplo, no cálculo de pontos de bolha e orvalho, a relação entre
o logaritmo da pressão total e 1 /T é mais linear do que a relação entre P e T. Em outros
casos, geralmente é melhor escolher as pressões parciais do que a pressão total e as frações
molares como variáveis.

5. Conclusões

O uso de recursos de computador não reduz a responsabilidade dos engenheiros. Na


verdade, com menos suposições simplificadoras, há um requisito maior de que o
engenheiro tenha um conhecimento fundamental da tecnologia. Além disso, modelos mais
detalhados exigem dados mais extensos que também precisam ser obtidos e avaliados
criticamente. A velocidade e a precisão dos cálculos tornam viável projetar processos
melhores. Os processos podem ser avaliados de forma mais completa e seus riscos e
oportunidades avaliados de forma mais completa. Os avanços contínuos na engenharia
química auxiliada por computador prometem processos melhores, mais limpos e mais
seguros.

BIBLIOGRAFIA

'' Engenharia Assistida por Computador '' em ECT 4ª ed., Vol. 7, pp. 128-163, por MT Tayyabkhan,
Tayyabkhan Consultants, Inc. e H. Britt, Aspen Technology, Inc., '' Computer-Aid Engineering '' emECT (
online), data de publicação: 4 de dezembro de 2000, por MT Tayyabkhan, Tayyabkhan Consultants, Inc. e
H. Britt, Aspen Technology, Inc .; emECT 5ª ed., Vol. 7, pp. 479-572, por WR Johns, Chemcept Ltd.

PUBLICAÇÕES CITADAS

1. L. Puigjaner e G. Heyen, eds., Engenharia de Processo e Produto, Wiley-VCH, Weinheim, Alemanha,


2006.
2. L. Achenie, V. Venkatasubramaniam e R. Gani, eds., Projeto de molécula auxiliado por computador,
Elsevier, Amsterdam, Holanda, 2002.
3. WR Johns, Chem. Eng. Progresso,97 (4), 59 (abril de 2001).
4. IC Kemp, Análise de compressão e integração de processos, Butterworth-Heinmann, Oxford, Reino
Unido, 2007.
5. LM Chavez-Islas, CL Heard e IE Grossmann, Ind. Eng. Chem. Res.48,
2972–2990 (2009).
6. AspenTech, Inc, www.aspentech.com.
7. Rede de acesso ao laboratório CAPE-OPEN, www.colan.org.
8. KP Halemane e IE Grossman, AIChemE J. 29 (3), 425-433 (1983).
9. WR Johns, G. Marketos e DWT Rippin, Trans. IChem.56 (1978).
10. Belsim SA, www.belsim.com.
11. R. Best, G. Goltz, J. Hulbert, A. Lodge, FA Perris e M. Woodman, O Uso de Computadores por
Engenheiros Químicos, IChemE (Grupo de Assunto CAPE), Rugby, Reino Unido,
1999.
ENGENHARIA QUÍMICA AUXILIADA POR COMPUTADOR 51

12. M. Tanzio, Chem. Eng. Progresso.97 (7), 64 (2001).


13. RM Barker, PM Harris e GI Parkin, Suporte de software para metrologia, Guia de práticas
recomendadas nº 7, Desenvolvimento e teste de aplicativos de planilha,
National Physical Laboratory, Teddington, Middlesex, Reino Unido, julho de 2000.
14. C. Mazza, J. Fairclough, B. Melton, D. DePablo, A. Scheffer e colegas de trabalho,
Guias de engenharia de software, Pearson Education, Harlow, UK, 1995.
15. G. Booch, I. Jacobson e J. Rumbaugh, Guia do usuário da linguagem de modelagem unificada,
2ª ed., Addison-Wesley Longman Publishing Co., Reading, Mass., 2005.
16. NIST, Informações de referência para o processo de verificação e validação de software,
Publicação Especial NIST 500-234, Departamento de Comércio dos EUA, Washington,
DC, março de 1996.
17. NÓS Perry, Métodos eficazes para teste de software, 3ª ed., John Wiley & Sons, Inc., Nova York, 2006.

18. GM Birtwistle, Simula - Comece, Chatwell-Bratt, Bromley, UK, 1980.


19. B. Stroustrup, Princípios de programação e prática usando Cþþ, Addison-Wesley Publishing Co.,
Reading, Mass., 2008.
20. T. Stanton e J. Pannell, Phil. Trans. Royal Soc.214, 199 (1914).
21. LF Moody, Trans. Sou. Soc. Mech. Engrs.66, 671 (1944).
22. FW Dittus e LMK Boelter, Universidade de Berkeley, Pubs. Eng.2, 443 (1930). Reimpresso emIntl.
Com. Heat Mass Transfe.12, 3 (1985).
23. WH McAdams, Transmissão de calor, 2ª ed., McGraw-Hill, New York, 1942.
24. JF Epperson, Uma introdução a métodos e análises numéricas, John Wiley & Sons, Inc., Nova York,
2010.
25. The HSL Library, www.hsl.ac.uk.
26. The Numerical Algorithms Group, www.nag.co.uk.
27. Numerical Recipes (parte da Cambridge University Press), www.nr.com.
28. D. Green e R. Perry, eds., Perry's Chemical Engineers 'Handbook, 8ª ed., McGraw-Hill, Nova York,
2007.
29. WR Johns, Considerações matemáticas na preparação de programas de computador de uso geral
para o projeto ou simulação de processos químicos, Simpósio EFCE, The Role of Computers
Preceding the Design of Chemical Processes, Florença, Itália,
1970.
30. CM Crowe e M. Nishio, AIChemE J. 21, 528–533 (1975).

CILLIAM JOHNS
Chemcept Ltd

Você também pode gostar