Вы находитесь на странице: 1из 12

Anais do XXXIV COBENGE. Passo Fundo: Ed. Universidade de Passo Fundo, Setembro de 2006.

ISBN 85-7515-371-4

SOFTWARES CIENTFICOS E DE ENGENHARIA: LIVRES versus


PROPRIETRIOS
Paulo E. Polon pauloep@deq.uem.br
Cid M. G. Andrade - cid@deq.uem.br
Paulo R. Paraso - paulo@deq.uem.br
Luiz M. de M. Jorge- lmmj@deq.uem.br
Universidade Estadual de Maring Departamento de Engenharia Qumica
Av. Colombo 5790
87020-900 Maring - PR

Resumo: A utilizao de ferramentas computacionais em auxlio na resoluo de problemas


matemticos tem grande apelo no ensino de engenharia. Existem softwares com nfase em
clculos e solues numricas no mercado. Uma alternativa aos softwares proprietrios so
os softwares livres. O termo software livre refere-se liberdade do usurio: rodar, copiar,
distribuir, estudar, alterar e melhorar o software. O objetivo deste trabalho introduzir o
conceito de software livre, e mostrar alguns softwares livres para aplicaes cientficas e de
engenharia comparando-os com similares proprietrios. Os softwares focalizados so: as
planilhas de clculo Gnumeric versus Excel, o software de manipulao simblica Maxima
versus Maple, o software de manipulao numrica Octave versus Matlab. Para cada
comparao, ns usamos um problema simples de engenharia. As planilhas so utilizadas na
resoluo de problema de programao linear, os softwares de manipulao simblica so
usados para resolver equaes diferenciais analiticamente, o os softwares de anlise
numrica para a resoluo numrica de equao diferencial. A comparao feita levando
em conta: a facilidade de uso, a qualidade de apresentao dos resultados e o tempo de
execuo. Os softwares apresentam, para os casos analisados, desempenhos muito prximos
com pequenas vantagens para os proprietrios.
Palavras-chave: software livre, planilhas de clculo, matemtica simblica, manipulao
numrica, software proprietrio.

Anais do XXXIV Congresso Brasileiro de Ensino de Engenharia

1.551

1.

INTRODUO

O uso de ferramentas computacionais em cincia e engenharia cresceu muito com o


aumento da velocidade de processamento dos computadores, a diminuio relativa dos seus
preos e o aparecimento de pacotes (ou aplicativos) para usos especficos ou gerais. Os
softwares podem ser proprietrios ou livres, para o uso do primeiro temos que pagar a licena,
e o segundo no. Ambos podem ser de cdigo (linguagem de programao) aberto ou
fechado, ele aberto quando o usurio tem acesso a ele podendo inclusive modific-lo,
quando no, ele esta encapsulado, ou oculto, e o usurio no tem acesso a ele, Andrade
(2004).
Os programas de cdigo aberto (open source software) de livre distribuio (free
software) caracterizam-se por terem os seguintes graus de liberdade: execuo, copiar,
distribuir, estudar, modificar e aperfeioar. A utilizao de aplicativos cientficos de livre
distribuio ainda muito modesta em vrios seguimentos da comunidade cientfica,
Domingues e Mendes Junior (2002).
Para que a comunidade cientfica possa decidir dentro, de suas especificidades, qual a
melhor opo ela precisa conhecer as opes existentes. Assim, o objetivo deste trabalho
mostrar que existem opes de softwares livres similares a softwares proprietrios.
Os programas a serem abordados neste trabalho, num enfoque ilustrativo e introdutrio
so: a planilha eletrnica proprietria Excel versus o software livre Gnumeric; o software
proprietrio de manipulao matemtica simblica Maple versus o software livre Mxima; o
software proprietrio de manipulao numrica Matlab versus software livre Ocatave.
Para cada comparao, ns usamos um problema simples de engenharia. As planilhas
so utilizadas na resoluo de problema de programao linear, os softwares de manipulao
simblica so usados para resolver equaes diferenciais analiticamente, o os softwares de
anlise numrica para a resoluo numrica de equao diferencial. A comparao feita
levando em conta: a facilidade de uso, a qualidade de apresentao dos resultados e o tempo
de execuo.
2.

GNUMERIC versus EXCEL

Para a comparao do uso das planilhas eletrnicas Gnumeric e Excel utilizaremos um


problemas de otimizao, via programao linear.
A planilha proprietria Excel vem com o Office da Microsoft, e a planilha Gnumeric,
um software livre GNU (GNU is not UNIX) sob licena GPL (General Public License),
disponvel em www.gnome.org/projects/gnumeric.
O exemplo considerado foi tomado de Edgar et al. (2002), e considera uma verso muito simples de uma refinaria. A Figura 1
uma representao esquemtica da entrada de matria-prima e sada de produtos de uma refinaria. A Tabela 1 lista as informaes sobre os
produtos esperados dos quatro tipos de leo bruto quando processados pela refinaria. Note que a distribuio da refinaria completamente
diferente para os quatro tipo leo bruto. A refinaria agregada em dois processos: uma corrente de combustvel e uma corrente de
lubrificante. A tabela 1 tambm mostra a previso dos limites superiores sobre os mercados estabelecidos para os vrios produtos em termos
da produo mxima permitida semanalmente.

Anais do XXXIV Congresso Brasileiro de Ensino de Engenharia

1.552

1
2
3

Gasolina

x1
x2

Cadeia
Combustvel

leo de
Aquecimento

Q2

x3
Combustvel Jet

Q3

leo Lubrificante

Q4

x4

Q1

x5

Cadeia
lubrificante

Figura 1 - Esquema da Operao de Processamento.

Tabela 1 - Dados da Refinaria.


Produo de Produtos
(bbl/bbl dru)

Crus

Produtos
Gasolina
(P1)
leo de aquecimento (P2)
Combustvel Jet
(P3)
leo Lubrificante
(P4)
Perdas operacionasi
Custo do leo cru ($/bbl)
Custo de Operao ($/bbl)
Fornecimento disponvel
de leo cru (103bbl/wk)

Cadeia Combustvel
1
2
3
4
(x1)
(x2)
(x3)
(x4)
0,6
0,2
0,1
0,0
0,1
15,00
5,00
100

0,5
0,2
0,2
0,0
0,1
15,00
8,50
100

0,3
0,3
0,3
0,0
0,1
15,00
7,50
100

Anais do XXXIV Congresso Brasileiro de Ensino de Engenharia

0,4
0,3
0,2
0,0
0,1
25,00
3,00

Cadeia Valor do
Lubrifica produto Deman
nte
[preo
da
de
mxima
5
venda (103bbl/
(x5)
($/bbl)]
wk)
0,4
0,1
0,2
0,2
0,1
25,00
2,50
200

45,00
30,00
15,00
60,00
-

170
85
85
20
-

1.553

O problema completo declarado :


Maximizar:

v p Q p C c xc

(1)

x1 S1

(2)

x2 S 2

(3)

x3 S 3

(4)

x 4 + x5 S 4

(5)

Sujeito a:

Qp Dp

( p = 1,...,4)

Q p = a p1 x1 + a p 2 x 2 + a p 3 x3 + a p 4 x 4 + a p 5 x5

(6)

( p = 1,...,4)

(7)

Qp 0

( p = 1,...,4)

(8)

xc 0

c( p = 1,...,5)

(9)

Sendo:
Qp: quantidade de produo do produto p
vp : valor do produto p
Cc : custo de operao do leo bruto c (soma do custo do leo bruto e do custo de operao)
xc : quantidade de leo bruto c
apc : rendimento do produto p do leo bruto c
Sc : disponibilidade de fornecimento de leo bruto c
A soluo tima obtida usando ambas planilhas; os fluxos timos so 100, 100. 66,667, e
100 kbbl/wk, respectivamente, de crus 1, 2, 3 e 4 e so produzidos 170, 70, 170, e 20 kbbl/wk,
respectivamente, de gasolina, leo de aquecimento, combustvel jet, e leo lubrificante. Todo
o cru 4 usado na cadeia de lubrificante. O lucro mximo obtido 3.400 k$/wk.
A vantagem do Gnumeric que os relatrios apresentados pelo solver mais completo
pois alm dos relatrios de resposta, de sensibilidade e de limite, iguais do Excel, tambm
apresenta dois relatrios complementares, que so: relatrio de desempenho e relatrio do
modelo.

Anais do XXXIV Congresso Brasileiro de Ensino de Engenharia

1.554

Figura 3 - Planilha Gnumeric.

Anais do XXXIV Congresso Brasileiro de Ensino de Engenharia

1.555

Figura 4 Planilha Excel.


A resoluo para ambas as planilhas foi simples, tendo a Gnumeric relatrios mais
completos, a qualidade na apresentao se equivalem e o tempo de programao, por tratar de
problema muito simples no pode ser quantificado, e foram muito prximos.

3.

MAPLE versus MAXIMA

O Maxima um software livre, GNU/GPL, para lidar com sistemas algbricos. Ele est
baseado na implementao original do Macsyma, do MIT (Massachusetts Institute
Technology), que deu origem tambm aos programas proprietrios como o Maple, o
Mathematica e o Derive. O Mxima pode ser obtido em: http://maxima.sourceforge.net/.
Aqui pretende-se resolver a Equao Diferencial Ordinria (EDO), com as condies
iniciais:

d 2 y
2 + y = 4x
dx
y ( 0) = 1
dy
dx (0) = 3

Anais do XXXIV Congresso Brasileiro de Ensino de Engenharia

(10)

1.556

Resoluo por meio do Maple:


> eq:=diff(y(x),x,x)+y(x)=4*x;
2

eq := 2 y( x ) + y( x ) = 4 x
x

> dsolve(eq,y(x));

y( x ) = sin( x ) _C2 + cos ( x ) _C1 + 4 x

> sol:=dsolve({eq,D(y)(0)=3,y(0)=1},y(x));

sol := y( x ) = sin( x ) + cos ( x ) + 4 x

Figura 5 - Na rea de trabalho do Maple.


No Maxima:
(%i1) eqn: 'diff(y,x,2)+y=4*x;

(%o1)

2
dy
--- + y = 4 x
2
dx

(%i2) sol:ode2(eqn,y,x);
(%o2)
y = %k1 sin(x) + %k2 cos(x) + 4 x
(%i3) ic2(sol,x=0,y=1,diff(y,x)=3);
(%o3)
y = - sin(x) + cos(x) + 4 x

Figura 6 - Na rea de trabalho do Mxima.

Para esta situao a apresentao do Maple bem melhor, a velocidade de


processamento tambm so muito prximas, devido ao pequeno porte do problema, e o uso do
Maple pareceu-nos mais natural.

4.

MATLAB versus OCTAVE

Para a comparao do software de manipulao numrica Matlab, com o software livre


Octave, GNU/GPL, disponvel em: http://www.octave.org/. Resolvermos um problema de
engenharia das reaes qumicas, que origina um sistema de equaes diferenciais ordinrias.
Exemplo adaptado dos exemplos 4.6 e 4.7 do Fogler (2002). Queremos calcular a massa
de catalisador necessria para se alcanar 60% de converso quando xido de etileno (C) for
produzido em fase vapor, via oxidao cataltica do etileno(A) com ar(B).
A+ B C
Etileno e oxignio so alimentados em propores estequiomtricas a um reator de
leito fixo, operando isotermicamente a 260C. O etileno alimentado a uma presso de 10
atm e uma vazo de 0.30 lbmol/s. Prope-se utilizar 10 feixes de tubos de 1 polegada de
dimetro, srie 40, com 100 tubos por feixe, recheados com catalisador. Conseqentemente,
a vazo molar em cada tubo ser 3x10-4 lbmol/s. As propriedades do fluido reagente devem
ser consideradas idnticas quelas do ar, a temperatura e presso anteriormente especificadas.

Anais do XXXIV Congresso Brasileiro de Ensino de Engenharia

1.557

A massa especfica das partculas de catalisador de um de polegada de 120 lb/ft3 e a


porosidade do leito de 0.45. A lei da velocidade rA' = kPA1 / 3 PB2 / 3 lbmol/lbcat.h
com k = 0.0141 lbmol/atm.lbcat.h a 260C.
Equacionamento:
dX
Balano molar diferencial: FA0
= rA'
(11)
dW
1/ 3
2/3
Lei da velocidade: rA' = kPA1 / 3 PB2 / 3 = k (C A RT ) (C B RT ) = kRTC 1A/ 3C B2 / 3
(12)
(13)
Estequiometria: Fase gasosa, isotrmico, v = v0 (1 + X )( P0 / P )

C ( X / 2) P
F

C B = B = A0 B
v
1 + X
P0
Combinando a lei da velocidade e as concentraes:
C (1 X ) P 1 / 3 C ( X / 2) P 2 / 3
'
A0 B
=
rA = kRT0 A0

1
1 + X
+
X

P0
P0
CA =

FA C A0 (1 X ) P

=
v
1 + X P0

(14)
(15)

(16)

2/3

P
X

(1 X )1 / 3 B
2

P0
Para a alimentao estequiomtrica, B = 1 / 2 , ento:
=

kC A0 RT0
1 + X

rA' = kPA0

(1 X )1 / 3 (1 / 2 x / 2) 2 / 3
1 + X

P
1 X P
= k '

1 + X P0
P0

(17)

onde: k ' = kPA0 (1 / 2) 2 / 3 = 0.63kPA0 .


Combinando a primeira equao com esta ltima:
dX
1 X P
FA 0
= k'
(18)

dW
1 + X P0
A equao de Ergun para a perda de presso em leitos de recheio na forma diferencial:
dP
T P
=
(1 + X )
(19)
dW
2 T0 P / P0
assumindo operao isotrmica
dP
P
=
(1 + X )
(20)
dW
2 P / P0
e fazendo-se:
P
y=
(21)
P0
ento:
dX
k ' 1 X
=
(22)

y
dW FA0 1 + X
dy
(1 + X )
=
(23)
dW
2y
Para as condies de contorno, W=0 e X=1 e os valores dos parmetros,
=0.0166/lbcat, =-0.15, k ' = 0.026 lbmol/h.lbcat e FA0 = 1.08 lbmol/h.

Anais do XXXIV Congresso Brasileiro de Ensino de Engenharia

1.558

No Matlab, definindo a funo, salvando como foe47.m


function xdot=foe47(w,x)
global ep k
kl=0.0266;
ep=-0.15;
al=0.0166;
fao=1.08;
xdot(1,:)=(kl/fao)*((1-x(1))/(1+ep*x(1)))*x(2);
xdot(2,:)=-al*(1+ep*x(1))/(2*x(2));
Figura 7 - Fila .m do Matlab
t=0:1:60;
>>xo=[0;1];
>>global ep k
>>[w,x]=ode45('foe47',t,xo);
>>plot(w,x(:,1),'+',w,x(:,2),'o')
>>title('Queda de Pressao e conversao versus massa catalisador')
>>xlabel('massa do catalisador (lb)')
>>ylabel('queda de pressao (p/po) e conversao')
>>gtext('o queda de pressao')
>>gtext('+ conversao')
Figura 8 - Na rea de Trabalho do Matlab.
Queda de Pressao e conversao versus massa catalisador

queda de pressao (p/po) e conversao

1
0.9

o queda de pressao

0.8

+ conversao

0.7
0.6
0.5
0.4
0.3
0.2
0.1
0

10

20
30
40
massa do catalisador (lb)

50

60

Figura 9 - Queda de Presso e Converso em funo da Massa do Catalisador.

Anais do XXXIV Congresso Brasileiro de Ensino de Engenharia

1.559

No Octave, definindo a funo, e salvando como foe.m


function xdot=foe(w,x)
kl=0.0266;
ep=-0.15;
a=0.0166;
fao=1.08;
xdot(1,:)=(kl/fao)*((1-x(1))/(1+ep*x(1)))*x(2);
xdot(2,:)=-a*(1+ep*x(1))/(2*x(2));
Figura 10 - Fila .m no Octave.
>>[w,x]=ode45('foe',[0 60],[0;1]);
>> title('queda de pressao e conversao versus massa catalisador');
>> xlabel('massa catalisador');
>> ylabel('queda de pressao e conversao');
>> plot(w,x(:,1),w,x(:,1),"o;queda de pressao;",w,x(:,2),w,x(:,2),"*;conversao;")
Figura 11 - Na rea de Trabalho do Octave.
queda de pressao e conversao versus massa catalisador
1
line 1
queda de pressao
line 3
conversao

queda de pressao e conversao

0.8

0.6

0.4

0.2

0
0

10

20

30

40

50

60

massa catalisador

Figura 12 - Queda de Presso e Converso em funo da Massa do Catalisador.


A apresentao so equivalentes, o tempo de processamento do Matlab foi um pouco
menor, e a amigabilidade no uso so equivalentes.

CONCLUSES
Para os problemas escolhidos (simples e de nvel de graduao), os softwares livres e
proprietrios mostraram-se com desempenhos muito prximos, com ligeira vantagem dos
proprietrios, quanto a apresentao. J foram testados em aulas o Matlab e o Octave, tendo
os alunos boa receptividade igual para os dois, assim como para o Maple e o Maxima com
resultados semelhantes. As planilhas, para o caso deste trabalho, ainda no foi apresentada aos
alunos; o que se pretende fazer este ano.

Anais do XXXIV Congresso Brasileiro de Ensino de Engenharia

1.560

REFERNCIAS BIBLIOGRFICAS
ANDRADE, C. M. G. Software Livre: Alguns Aplicativos Cientficos para Engenharia. In:
Anais, COBENGE, 2004.
DOMINGUES, M. O.; Mendes Junior, O. Introduo a Programas Cientficos de Distribuio
Gratuita: GNU/Octave, GNU/Maxima, Latex, GNU/RCS. Encontro Regional de Matemtica
Aplicada e Computacional. Natal, Anais. Rio Grande do Norte, 2002.
EDGAR, T. F.; HIMMELBLAU, D. M.; LASDON, L. S. Optimization of Chemical
Process. 2 ed., 2002.
FOGLER, H. S. Elementos de Engenharia das Reaes Qumicas. 3 ed., Rio de Janeiro,
2002.

Anais do XXXIV Congresso Brasileiro de Ensino de Engenharia

1.561

SCIENTIFIC AND ENGINEERING FREE SOFTWARES versus


PROPRIETARY SOFTWARES
Abstract: The concept of using computers to help mathematical problem and the teaching has
a particular appeal to engineers. Software programs with strong emphasis on calculation and
numerical evaluation continue to be marketed for the personal computer. As alternative for
the proprietary software, we have the free software. The term free software is matter of the
users freedom to run, copy, distributes, study, change and improve the software. The object
of this work is to introduce the concept of the free software, and show some free software for
scientific applications and engineering comparing them with the similar proprietary. The
software focalized are: spreadsheet GNUMERIC versus EXCEL, the symbolic mathematic
program MAXIMA versus MAPLE, the numerical computations OCTAVE versus MATLAB.
For each of the comparisons, was used an engineering simple problem. The spreadsheet
were utilized on linear programming, the programs of symbolic mathematic were utilized to
resolve analytically differential equations and the programs of numerical resolution of
differential equations. The comparison between the programs was made in face of: facility of
using, quality of the results presentation and time of execution. The programs presented, for
the analyzed cases, performances very similar with little advantage for the proprietary
software.

Key-words: free software, spreadsheet, symbolic mathematic, numerical computations,


proprietary software.

Anais do XXXIV Congresso Brasileiro de Ensino de Engenharia

1.562

Вам также может понравиться