<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" gd:etag="W/&quot;DEMMQHY_fSp7ImA9WhVTEUw.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055</id><updated>2012-02-24T18:48:01.845-02:00</updated><category term="gnuplot" /><category term="cfd" /><category term="método numérico" /><category term="viscoelasticFluidFoam" /><category term="notas" /><category term="análise de resultado" /><category term="tensão superficial" /><category term="CUDA" /><category term="softwares" /><category term="controlDict" /><category term="turbulência" /><category term="computação científica" /><category term="simpleFoam" /><category term="curiosidades" /><category term="modelagem" /><category term="Fluidos viscoelásticos" /><category term="balanço populacional" /><category term="mecânica dos fluidos" /><category term="OpenFOAM" /><title>Notas em CFD</title><subtitle type="html">Blog que pretende abordar notas, comentários e revisões sobre assuntos correlatos a Fluidodinâmica Computacional e sua validação experimental</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>João Felipe Mitre</name><uri>https://profiles.google.com/118295875382548551538</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-Mh3JAJ57NyI/AAAAAAAAAAI/AAAAAAAAD7g/fjv46PsPWcE/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>90</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/NotasEmCfd" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="notasemcfd" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CUIERXc5fip7ImA9WhRUFUw.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-6296635504313196420</id><published>2012-01-23T14:05:00.006-02:00</published><updated>2012-01-25T15:45:04.926-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-25T15:45:04.926-02:00</app:edited><title>Pyfoam: uma ferramenta de manipulação de casos</title><content type="html">&lt;div style="text-align: justify;"&gt;Caros Leitores,&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;  Se desejam automatizar e/ou realizar analises sofisticadas no openFOAM,  o "aplicativo" denominado PyFoam pode ser uma ferramenta interessante.  Pyfoam nada mais é que uma biblioteca de manipulação de arquivos  desenvolvida em Python (linguagem interpretada de alto nível orientada a  objeto). Entre as principais funcionalidades desta biblioteca estão: a  compactação de dados de saída e avaliação de output na forma gráfica  durante a evolução da simulação (bem semelhante aos softwares  comercias), a manipulação dos arquivo texto de dicionário de forma  durante o processo iterativo.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Como  instalar esse "aplicativo"? Primeiro passo, em algumas distribuições  alguns pacotes devem ser instalados, no caso do ubuntu basta instalar:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;instalar os requisitos &lt;span style="font-style: italic;"&gt;python-dev&lt;/span&gt; e &lt;span style="font-style: italic;"&gt;python-numpy&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;baixar a versão mais recente do pyfoam no link abaixo:&lt;br /&gt;&lt;br /&gt;http://openfoamwiki.net/index.php/Contrib_PyFoam#Downloads&lt;br /&gt;&lt;br /&gt;descompactar o arquivo com o comando no terminal&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;tar -xvf PyFoam-0.5.6.tar&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;dentro da pasta &lt;span style="font-style: italic;"&gt;PyFoam-0.5.6&lt;/span&gt;  descompactada abrir terminal executar o seguinte comando:&lt;br /&gt;&lt;br /&gt;python setup.py install&lt;br /&gt;&lt;br /&gt;Pronto o  Pyfoam está instalado no sistema.&lt;br /&gt;&lt;br /&gt;Para instalar em um local especificado basta executar o comando&lt;br /&gt;&lt;br /&gt;python setup.py install --prefix=/home/nomeusuario/pastadeinstalacao&lt;br /&gt;&lt;br /&gt;e incluir as seguintes variáveis de ambiente:&lt;br /&gt;&lt;br /&gt;export PYTHONPATH=/home/nomeusuario/pastadeinstalacao/lib/python-2.3/site-packages:$PYTHONPATH&lt;br /&gt;&lt;br /&gt;e&lt;br /&gt;&lt;br /&gt;export PATH=/home/nomeusuario/pastadeinstalacao/bin:$PATH&lt;br /&gt;&lt;br /&gt;Se o seu sistema for&lt;span style="color: rgb(255, 102, 102);"&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;UBUNTU&lt;/span&gt;&lt;/span&gt;, basta instalar via terminal com o seguinte comando: &lt;span style="font-style: italic;"&gt;sudo apt-get install pyfoam&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Bem,  uma vez instalado existem várias funcionalidades simples, porém  interessantes. Podemos começar com a funcionalidade de verificação de  caso, vá até a pasta "tut", entre em algum exemplo do tutorial execute o  comando "pyFoamCaseReport.py --full-report .", deve aparecer toda a  informação do caso setado, bem interessante quando não se conhece o  caso. Cabe destacar que essa ferramenta não funciona para alguns solver  mais recentes e complexos.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Outra funcionalidade interessante é o pyFoamPlotRunner.py.  No caso no icoFoam, para ativar essa funcionalidade rode o icoFoam com o  comando: pyFoamPlotRunner.py icoFoam. Assim, os gráficos de resíduo  serão plotados no durante o processo iterativo. Infelizmente, essa  funcionalidade aumenta o tempo de computação uma vez que consome recursos computacionais  escrevendo os plots.&lt;br /&gt;&lt;br /&gt;Se  você já programa em python uma forma interessante é criar suas próprias  forma de automatização utilizando as funções predefinidas na biblioteca  pyfoam. No exemplo abaixo, o programa modifica a velocidade de uma  condição de contorno especifica a partir do seu nome. Crie o arquivo texto com os seguintes comando:&lt;br /&gt;&lt;br /&gt;#prototipo da chamada da função ParsedParameterFile da biblioteca pyfoam&lt;br /&gt;from PyFoam.RunDictionary.ParsedParameterFile import ParsedParameterFile&lt;br /&gt;# Arquivo que eu quero modificar&lt;br /&gt;f=ParsedParameterFile("pitzDaily/0/U")&lt;br /&gt;# percorrer todos os bondaryFields e modificar o campo com nome upper&lt;br /&gt;for b in f["boundaryField"]:&lt;br /&gt;if "upper" in b:&lt;br /&gt;  f["boundaryField"][b]["value"]="uniform (10 0 0)"&lt;br /&gt;  f["boundaryField"][b]["type"]="fixedValue"&lt;br /&gt;#Escrever no arquivo U&lt;br /&gt;f.writeFile()&lt;br /&gt;&lt;br /&gt;Salvar o arquivo com o nome tes.py na pasta /incompressible/simpleFoam (pasta do tutorial que vou testar o programa python). Em seguida, executar o script com o comando "python tes.py" na pasta /incompressible/simpleFoam.&lt;br /&gt;&lt;br /&gt;Bem, espero que este post seja útil de alguma forma.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-6296635504313196420?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/6296635504313196420/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2012/01/pyfoam-uma-ferramenta-de-manipulacao-de.html#comment-form" title="7 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/6296635504313196420?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/6296635504313196420?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2012/01/pyfoam-uma-ferramenta-de-manipulacao-de.html" title="Pyfoam: uma ferramenta de manipulação de casos" /><author><name>Fábio Santos</name><uri>http://www.blogger.com/profile/04844036268671157662</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="28" height="32" src="http://4.bp.blogspot.com/-6lnD6e4Yyg8/Tj8G5tHcbzI/AAAAAAAAAAQ/8546PXlJ0XI/s220/rosto.jpg" /></author><thr:total>7</thr:total></entry><entry gd:etag="W/&quot;CUcHSXoycCp7ImA9WhRXE0w.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-7243875317541218058</id><published>2011-12-19T14:43:00.003-02:00</published><updated>2011-12-19T14:43:58.498-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-19T14:43:58.498-02:00</app:edited><title>Lançado o OpenFOAM 2.1</title><content type="html">&lt;a href="http://www.openfoam.com/version2.1.0/" target="_blank"&gt;Hoje, 19 de Dezembro de 2011, foi lançado o OpenFOAM 2.1&lt;/a&gt;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Dessa vez, a quantidade de atualizações foi significativa e, do meu ponto de vista particular, impactante.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Implementação do &lt;a href="http://www.openfoam.com/version2.1.0/ami.php" target="_blank"&gt;AMI&lt;/a&gt;, modificações na &lt;a href="http://www.openfoam.com/version2.1.0/multiphase.php" target="_blank"&gt;modelagem multifásica&lt;/a&gt;, inclusão de um novo&amp;nbsp;&lt;a href="http://www.openfoam.com/version2.1.0/physical-modelling.php" target="_blank"&gt;modelo de turbulência&lt;/a&gt;&amp;nbsp;e de&amp;nbsp;&lt;a href="http://www.openfoam.com/version2.1.0/physical-modelling.php" target="_blank"&gt;combustão&lt;/a&gt;, &amp;nbsp;novas implementações para as&amp;nbsp;&lt;a href="http://www.openfoam.com/version2.1.0/boundary-conditions.php" target="_blank"&gt;condições de contorno&lt;/a&gt;, inclusões de outros&amp;nbsp;&lt;a href="http://www.openfoam.com/version2.1.0/numerics.php" target="_blank"&gt;métodos numéricos&lt;/a&gt;, entre outras.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Estou quase migrando para a 2.1... quase.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-7243875317541218058?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/7243875317541218058/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/12/lancado-o-openfoam-21.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/7243875317541218058?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/7243875317541218058?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/12/lancado-o-openfoam-21.html" title="Lançado o OpenFOAM 2.1" /><author><name>João Felipe Mitre</name><uri>https://profiles.google.com/118295875382548551538</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-Mh3JAJ57NyI/AAAAAAAAAAI/AAAAAAAAD7g/fjv46PsPWcE/s512-c/photo.jpg" /></author><thr:total>1</thr:total></entry><entry gd:etag="W/&quot;CEYNQHk9eCp7ImA9WhdUFkU.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-2816202949489336923</id><published>2011-10-03T15:47:00.011-03:00</published><updated>2011-10-03T19:49:51.760-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-03T19:49:51.760-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><category scheme="http://www.blogger.com/atom/ns#" term="notas" /><title>Anúncio: NUMAP-FOAM no Brasil</title><content type="html">&lt;div style="text-align: center;"&gt;
&lt;b&gt;&lt;span class="Apple-style-span"&gt;Numerical Modelling of Coupled Problems in Applied Physics&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style="text-align: center;"&gt;
&lt;span class="Apple-style-span"&gt;&lt;b&gt;with OpenFOAM&lt;/b&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: 'Lucida Grande',Verdana,Lucida,Helvetica,Arial,sans-serif; line-height: 18px;"&gt;®&lt;/span&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt; (NUMAP-FOAM-Br)&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style="text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: center;"&gt;
Escola de Verão 2012 na Universidade Federal do Rio de Janeiro&lt;/div&gt;
&lt;div style="text-align: center;"&gt;
Escola de Química e Programa de Engenharia da COPPE&lt;/div&gt;
&lt;div style="text-align: center;"&gt;
Rio de Janeiro, RJ; 1 a 15 de Fevereiro de 2012&lt;/div&gt;
&lt;div style="text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5659363563092436482" src="http://3.bp.blogspot.com/-sNwmrRO2BMk/TooZLRDp5gI/AAAAAAAAAbU/xujEQC_uiiY/s320/bubbleCollumn.png" style="cursor: pointer; float: left; height: 200px; margin: 0pt 10px 10px 0pt; width: 320px;" /&gt;&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
Em uma parceria, a &lt;a href="http://www.eq.ufrj.br/"&gt;Escola de Química&lt;/a&gt; e o &lt;a href="http://www.peq.coppe.ufrj.br/"&gt;Programa de Engenharia Química da COPPE&lt;/a&gt; anunciam a primeira edição da Escola de Verão Brasileira em Problemas Numéricos Aplicados usando OpenFOAM&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: 'Lucida Grande',Verdana,Lucida,Helvetica,Arial,sans-serif; font-size: 12px; line-height: 18px;"&gt;®&lt;/span&gt; (NUMAP-FOAM-Br) para alunos de Pós-Graduação e jovens pesquisadores a acontecer no Rio de Janeiro, Brasil. Este evento é baseado na &lt;a href="http://www.fsb.unizg.hr/?OpenFOAM_Summer_School_2011"&gt;Summer School (NUMAP-FOAM)&lt;/a&gt; que ocorre anualmente em Zagreb, Croácia, e organizado pelo Prof. &lt;a href="http://titan.fsb.hr/%7Ehjasak/"&gt;Hrvoje Jasak&lt;/a&gt;, desenvolvedor do OpenFOAM&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: 'Lucida Grande',Verdana,Lucida,Helvetica,Arial,sans-serif; font-size: 12px; line-height: 18px;"&gt;®&lt;/span&gt;. Em sua versão latina, o NUMAP-FOAM-Br está sendo organizado pelos integrantes do Laboratório de Termofluidodinâmica da COPPE/UFRJ e supervisionado pelos Profs. Luiz Fernando Silva (EQ/UFRJ) e Paulo Lage (PEQ/COPPE/UFRJ).&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;span class="Apple-style-span"&gt;Descrição do evento&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
A Escola de Verão tem o intuito de fornecer orientação e treinamento no uso e programação em OpenFOAM&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: 'Lucida Grande',Verdana,Lucida,Helvetica,Arial,sans-serif; font-size: 12px; line-height: 18px;"&gt;®&lt;/span&gt; para um pequeno grupo de estudantes e pesquisadores envolvidos em trabalhos de pesquisa. A ideia da Escola de Verão é expandir os conhecimentos em modelagem de problemas avançados, métodos numéricos e programação, usando o OpenFOAM&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: 'Lucida Grande',Verdana,Lucida,Helvetica,Arial,sans-serif; font-size: 12px; line-height: 18px;"&gt;®&lt;/span&gt; como ferramenta de trabalho. A aplicação do OpenFOAM&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: 'Lucida Grande',Verdana,Lucida,Helvetica,Arial,sans-serif; font-size: 12px; line-height: 18px;"&gt;®&lt;/span&gt; aos projetos de pesquisa terá orientação direta e trabalho prático no código.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Aulas e palestras em tópicos selecionados, como métodos numéricos, programação e modelagem, serão apresentadas de acordo com a necessidade dos alunos. Note que, para garantir a qualidade do trabalho e da supervisão, o número de vagas será limitado.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;span class="Apple-style-span"&gt;Local e data&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5659364558423663858" src="http://4.bp.blogspot.com/-nrXrRfFAiyM/TooaFM9HJPI/AAAAAAAAAbc/yDI5OG5K5vA/s320/bubble.viscoelastic2.png" style="cursor: pointer; float: right; height: 197px; margin: 0pt 0pt 10px 10px; width: 320px;" /&gt;&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
A Escola de Verão ocorrerá em 11 dias de trabalho sob supervisão dos Profs. Luiz Fernando Silva e Paulo Lage e com auxílio de especialistas locais em OpenFOAM&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: 'Lucida Grande',Verdana,Lucida,Helvetica,Arial,sans-serif; font-size: 12px; line-height: 18px;"&gt;®&lt;/span&gt;, incluindo os alunos de doutorado Jovani Favero e Livia Jatobá, entre outros. Tutoriais, palestras e trabalhos em grupo vão acontecer de &lt;b&gt;1 a 15 de Fevereiro de 2012&lt;/b&gt; na sala de aula do &lt;b&gt;Laboratório de Termofluidodinâmica&lt;/b&gt; do Programa de Engenharia da COPPE, &lt;b&gt;Universidade Federal do Rio de Janeiro, Campus Ilha do Fundão&lt;/b&gt;.&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;span class="Apple-style-span"&gt;Como participar: NUMAP-FOAM-Br 2012&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Para participar, pedimos que escrevam em &lt;b&gt;uma página a descrição do projeto&lt;/b&gt; que querem trabalhar durante o NUMAP-FOAM-Br, com os &lt;b&gt;problemas atuais&lt;/b&gt; e os &lt;b&gt;objetivos&lt;/b&gt; a serem atingidos na Escola de Verão. A participação é aberta a &lt;b&gt;qualquer aluno&lt;/b&gt; de pós-graduação e graduação inscritos em universidades assim como pesquisadores pós-doc. Este evento não está restrito a universidades brasileiras, mas encoraja que alunos de universidades fora do Brasil também participem. Neste caso, a comunicação será em inglês.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Note que este &lt;b&gt;NÃO é um curso introdutório&lt;/b&gt; de OpenFOAM&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: 'Lucida Grande',Verdana,Lucida,Helvetica,Arial,sans-serif; font-size: 12px; line-height: 18px;"&gt;®&lt;/span&gt;. Conhecimento prévio do projeto e do &lt;i&gt;software&lt;/i&gt; são pré-requisitos para participação no evento.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style="text-align: justify;"&gt;
&lt;b&gt;O prazo para submissão dos projetos é 15 de Novembro de 2011.&lt;/b&gt; Os candidatos selecionados serão informados até o dia 20 de Novembro de 2011.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;span class="Apple-style-span"&gt;Acomodação e custos&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Participantes da Escola de Verão devem se planejar para cobrir suas despesas de viagem e acomodação. O ideal é que os participantes tragam laptops para desenvolvimento de seus projetos. Será cobrada uma &lt;b&gt;taxa de registro&lt;/b&gt; (após seleção do projeto) no valor de &lt;b&gt;R$ 150,00&lt;/b&gt; por participante. Este evento não é financiado por nenhuma empresa ou agência pública de fomento.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;Contato&lt;/b&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Para maiores detalhes e submissão da proposta de projetos, entre em &lt;b&gt;contato&lt;/b&gt; pelo e-mail &lt;a href="mailto:numapbr@notasemcfd.com"&gt;numapbr@notasemcfd.com&lt;/a&gt;. Você também pode tirar dúvidas pelos comentários deste blog.&lt;/div&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-2816202949489336923?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/2816202949489336923/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/10/anuncio-numap-foam-no-brasil.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/2816202949489336923?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/2816202949489336923?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/10/anuncio-numap-foam-no-brasil.html" title="Anúncio: NUMAP-FOAM no Brasil" /><author><name>Luiz F.</name><uri>http://www.blogger.com/profile/14908549900635467246</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp0.blogger.com/_qN4ZQvAV7GI/R3VwnZZAqGI/AAAAAAAAAEY/40GxjCljVWU/S220/DSC00838.JPG" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-sNwmrRO2BMk/TooZLRDp5gI/AAAAAAAAAbU/xujEQC_uiiY/s72-c/bubbleCollumn.png" height="72" width="72" /><thr:total>2</thr:total></entry><entry gd:etag="W/&quot;C0ECRn0zfyp7ImA9WhdUEEQ.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-4969685105374640994</id><published>2011-09-07T13:40:00.007-03:00</published><updated>2011-09-26T23:47:47.387-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-26T23:47:47.387-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><title>Tutorial para instalação do OpenFOAM-1.6-ext no Ubuntu 11.04</title><content type="html">&lt;p&gt;Caros leitores,&lt;/p&gt;&lt;p&gt;Eu mais o Luiz Fernando estamos atualmente em Zagreb/Croácia participando da escola de verão (NUMAP Summer School 2011).  &lt;/p&gt;&lt;p&gt;Nem precisa comentar que é uma experiência única. Tem &lt;em&gt;experts&lt;/em&gt; em diversas áreas dentro da grande área de CFD e claro, estamos em contato direto com pessoas que conhecem a fundo o gigantesco "core" do OpenFOAM.&lt;/p&gt;&lt;p&gt;Mas sem mais demoras, a verdadeira razão por estar escrevendo este pequeno post é divulgar um tutorial sobre a &lt;a href="http://www.extend-project.de/user-forums/extend-groups/5-openfoam-installation-group-forum/276-short-tutorial-for-installation-openfoam#276"&gt;instalação do OpenFOAM-1.6-ext no Ububtu 11.04&lt;/a&gt; que O colega aqui do curso Nebojsa  Gavrilov fez . &lt;/p&gt;&lt;p&gt;Reparem que em todos os comandos aparece OpenFOAM® ao invés de OpenFOAM. Tenham cuidado com o Ctrl C + Ctrl V, pois vocês devem usar somente OpenFOAM, sem o ®, senão terão problemas. Defendendo o  Nebojsa agora,  este não foi um erro dele, o próprio editor do site do OpenFOAM extended põem automaticamente o ®. Quem já escreveu lá sabe do que estou falando. &lt;/p&gt;&lt;p&gt;Bom, espero que o tutorial seja muito proveitoso a todos vocês. Algumas dicas eu já havia dado em um antigo &lt;a href="http://www.notasemcfd.com/2010/12/instalacao-do-openfoam-16-ext.html"&gt;post&lt;/a&gt;, mas considero o link acima mais completo e mais detalhado para iniciantes em linux.  &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-4969685105374640994?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/4969685105374640994/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/09/tutorial-para-instalacao-do-openfoam-16.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/4969685105374640994?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/4969685105374640994?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/09/tutorial-para-instalacao-do-openfoam-16.html" title="Tutorial para instalação do OpenFOAM-1.6-ext no Ubuntu 11.04" /><author><name>Jovani</name><uri>http://www.blogger.com/profile/16601190182840183680</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://1.bp.blogspot.com/__T5GoMoSCdo/TEJC8UpbDTI/AAAAAAAAAB4/-EoL4gIIpXk/S220/foto.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CEYNQXg8cSp7ImA9WhdXFU4.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-4757168407394233354</id><published>2011-08-28T08:49:00.000-03:00</published><updated>2011-08-28T08:49:50.679-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-28T08:49:50.679-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="softwares" /><category scheme="http://www.blogger.com/atom/ns#" term="notas" /><title>Base de dados da Elsevier</title><content type="html">Recentemente fiz um curso de &lt;a href="http://www.americalatina.elsevier.com/" target="_blank"&gt;treinamento da Elsevier&lt;/a&gt; (oferecido gratuitamente na &lt;a href="http://www.ufrj.br/" target="_blank"&gt;UFRJ&lt;/a&gt; através da &lt;a href="http://www.ct.ufrj.br/bib/" target="_blank"&gt;biblioteca do CT&lt;/a&gt;).&lt;br /&gt;
Aprendi várias coisas legais. &amp;nbsp;Não me cabe aqui discorrer sobre tudo que aprendi e não sabia, mas posso dizer três coisas:&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;O material de apoio, que nos foi entregue impresso no dia, e as apresentações estão &lt;a href="http://www.americalatina.elsevier.com/sul/pt-br/material_apoio.php" target="_blank"&gt;disponíveis para &lt;i&gt;download&lt;/i&gt; gratuitamente na internet&lt;/a&gt;. Vale apena dar uma olhada. O material é bem completo e permite ter um amplo entendimento sobre a plataforma da Elsevier. Depois de 6 anos fazendo pesquisas eu percebi que ainda não uso tudo que eu poderia usar.&lt;/li&gt;
&lt;li&gt;Não consigo criar RSS de uma pesquisa no Chromium. Não consigo criar um RSS de uma pesquisa se não desabilitar o "bloqueador de pop-up". Essas são duas observações distintas. Eu já conhecia esse recurso a algum tempo, mas como não conseguia criar eu achava que o problema não era meu. Mas, ao ver que a palestrante não falou nada, eu percebi que podia estar ligado ao sistema operacional (uso o GNU/Linux) ou ao navegador. De onde conclui o que observei na minha máquina com o GNU/Linux. Por ter funcionado, não testei no Windows. Se não sabe o que é RSS, &lt;a href="http://jfmitre.com/2011/07/rss-o-conteudo-vai-ate-voce.html" target="_blank"&gt;precisa ler esse tópico aqui&lt;/a&gt; e, se for de sua vontade, aproveite para assinar o nosso blog também ! :D &lt;/li&gt;
&lt;li&gt;Eu aprendi a pronunciar "&lt;i&gt;Elsevier&lt;/i&gt;" com a seguinte intonação: el-&lt;b&gt;sé&lt;/b&gt;-vier. Mas a aprendi no curso que a pronuncia correta é: el-&lt;b&gt;sê&lt;/b&gt;-vier. &lt;a href="http://www.americalatina.elsevier.com/sul/pt-br/historia.php" target="_blank"&gt;Encontrei essa informação histórica que explica isso&lt;/a&gt;. Resta saber se eu vou me acostumar com a nova forma de pronunciar a palavra.&lt;/li&gt;
&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-4757168407394233354?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/4757168407394233354/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/08/base-de-dados-da-elsevier.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/4757168407394233354?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/4757168407394233354?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/08/base-de-dados-da-elsevier.html" title="Base de dados da Elsevier" /><author><name>João Felipe Mitre</name><uri>https://profiles.google.com/118295875382548551538</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-Mh3JAJ57NyI/AAAAAAAAAAI/AAAAAAAAD7g/fjv46PsPWcE/s512-c/photo.jpg" /></author><thr:total>3</thr:total></entry><entry gd:etag="W/&quot;CUUEQHkyfip7ImA9WhdXEkw.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-4593441696962121900</id><published>2011-08-24T16:12:00.001-03:00</published><updated>2011-08-24T16:13:21.796-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-24T16:13:21.796-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="tensão superficial" /><category scheme="http://www.blogger.com/atom/ns#" term="curiosidades" /><title>Os segredos por trás de uma mancha de café</title><content type="html">Olá leitores,&lt;br /&gt;
hoje vi um&amp;nbsp;vídeo&amp;nbsp;que me fez lembrar como é complexa a análise dos efeitos da tensão superficial no estudo da&amp;nbsp;mecânica&amp;nbsp;dos fluidos! Ainda mais incluindo a presença de partículas de diferentes geometrias!&lt;br /&gt;
&lt;br /&gt;
O&amp;nbsp;vídeo&amp;nbsp;mostra a movimentação de&amp;nbsp;partículas&amp;nbsp;em uma gota evaporando. Partículas esféricas possuem comportamento diferente de partículas em formato de bastão. Para complicar ainda mais a análise, foi realizado também um&amp;nbsp;experimento&amp;nbsp;onde a tensão superficial do líquido foi alterada pela adição de um tensoativo!&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://3.gvt0.com/vi/ZaCGoSTMHyc/0.jpg" height="266" width="320"&gt;&lt;param name="movie" value="http://www.youtube.com/v/ZaCGoSTMHyc&amp;fs=1&amp;source=uds" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/ZaCGoSTMHyc&amp;fs=1&amp;source=uds" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;
Achei o&amp;nbsp;vídeo&amp;nbsp;lendo um site&amp;nbsp;sobre fluidodinâmica muito interessante: &amp;nbsp;o &lt;a href="http://fuckyeahfluiddynamics.tumblr.com/"&gt;Fuck Yeah Fluid Dynamics&lt;/a&gt;.&amp;nbsp;O nome é sugestivo. Acho que os autores devem gostar bastante de mecânica dos fluidos! A propósito, não consegui encontrar muita informação sobre os autores, mas existem vários outros videos interessantes no site. Fica a dica.&lt;br /&gt;
&lt;br /&gt;
Até a&amp;nbsp;próxima.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-4593441696962121900?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/4593441696962121900/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/08/os-segredos-por-tras-de-uma-mancha-de.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/4593441696962121900?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/4593441696962121900?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/08/os-segredos-por-tras-de-uma-mancha-de.html" title="Os segredos por trás de uma mancha de café" /><author><name>Livia Jatobá</name><uri>http://www.blogger.com/profile/09562213158975927023</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="28" height="32" src="http://3.bp.blogspot.com/-vT6OYXAclYc/Tx2FzuwFiOI/AAAAAAAAAd0/ravJE49R_xI/s220/100_0378.JPG" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CUUMQns4cSp7ImA9WhdXEU0.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-8162970596869581546</id><published>2011-08-23T08:22:00.002-03:00</published><updated>2011-08-23T09:41:23.539-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-23T09:41:23.539-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="notas" /><title>Uma Nova Era no "Notas em CFD"</title><content type="html">Caros leitores, hoje, inauguramos uma nova era no &lt;a href="http://notasemcfd.com/"&gt;Notas em CFD&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Primeiro, como os leitores que frequentam o site já devem ter percebido, foi feito uma remodelagem completa na última semana. Agora temos um design moderno, compatível com os novos &lt;i&gt;templates&lt;/i&gt; do blogger.&lt;br /&gt;
&lt;br /&gt;
Também foram criados páginas estáticas (observe a barra abaixo do título do blog) com informações &lt;a href="http://www.notasemcfd.com/p/sobre-o-blog.html"&gt;sobre o blog&lt;/a&gt;, &lt;a href="http://www.notasemcfd.com/p/sobre-os-autores.html"&gt;sobre os autores&lt;/a&gt; e &lt;a href="http://www.notasemcfd.com/p/contato.html"&gt;informação de contato&lt;/a&gt;&amp;nbsp;(por hora, há apenas uma forma de contato, mas no futuro ... quem saber ?). Para os novos leitores, a página sobre o blog poderá levá-lo a atmosfera de quando o blog foi criado, para quem nos lê desde sempre, trará (espero) um boas lembranças...&lt;br /&gt;
&lt;br /&gt;
Outras pequenas modificações, como botões para facilitar a vida de quem quer compartilhar um tópico em redes sociais também foram feitas. Veja os botões em cada tópico.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;[update]&lt;/b&gt; Um comentário me fez lembrar de colocar a página de comentários embutida na página do tópico. Mais um item para a lista de modificações &lt;b&gt;[/update]&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Mas talvez a modificação mais importante seja o domínio próprio. Sim, agora estamos com domínio próprio. Pode usar:&amp;nbsp;&lt;a href="http://notasemcfd.com/"&gt;http://notasemcfd.com&lt;/a&gt;&amp;nbsp;ou&amp;nbsp;&lt;a href="http://www.notasemcfd.com/"&gt;http://www.notasemcfd.com&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Continuamos a utilizar a plataforma do blogger, então, os velhos nomes continuam funcionando. Nenhum link do site quebrou por causa dessa modificação.&lt;br /&gt;
&lt;br /&gt;
Sejam bem vindos a essa Nova Era, que eu espero que seja de muito tópicos e interação.&lt;br /&gt;
&lt;br /&gt;
Obrigado a todos (leitores e autores) por te feito desses mais de 4 anos de blog um sucesso.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-8162970596869581546?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/8162970596869581546/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/08/uma-nova-era-no-notas-em-cfd.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/8162970596869581546?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/8162970596869581546?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/08/uma-nova-era-no-notas-em-cfd.html" title="Uma Nova Era no &quot;Notas em CFD&quot;" /><author><name>João Felipe Mitre</name><uri>https://profiles.google.com/118295875382548551538</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-Mh3JAJ57NyI/AAAAAAAAAAI/AAAAAAAAD7g/fjv46PsPWcE/s512-c/photo.jpg" /></author><thr:total>2</thr:total></entry><entry gd:etag="W/&quot;DUEESXw-fyp7ImA9WhdQFk4.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-9862774270584727</id><published>2011-08-17T14:59:00.003-03:00</published><updated>2011-08-18T00:20:08.257-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-18T00:20:08.257-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><category scheme="http://www.blogger.com/atom/ns#" term="notas" /><title>SGI compra a OpenFOAM Ltda</title><content type="html">Havia passado despercebido por mim que no último dia 15 de agosto a &lt;a href="http://www.sgi.com/"&gt;SGI&lt;/a&gt; &lt;b&gt;&lt;a href="http://www.sgi.com/company_info/newsroom/press_releases/2011/august/opencfd.html"&gt;comprou&lt;/a&gt;&lt;/b&gt; a &lt;a href="http://www.openfoam.com/"&gt;OpenFOAM Ltda&lt;/a&gt;, criou uma fundação (&lt;a href="http://www.openfoam.org/"&gt;The OpenFOAM Fundation&lt;/a&gt;) para gerenciar o código fonte deu uma reviravolta na minha cabeça. Bom, exageros a parte, a reviravolta fica restrita a parte profissional da cabeça que lida com o OpenFOAM.&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Francamente, ainda é muito cedo para dizer tudo que eu gostaria de saber, mas posso adiantar algumas coisas:&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;A SGI é uma das maiores empresas do mundo computacional, &lt;a href="http://www.sgi.com/products/"&gt;veja só a lista de produtos&lt;/a&gt;. Isso quer dizer que as forças envolvidas ganharam um upgrade e, o OpenFOAM, ganha status de competidor comercial.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;O código fonte foi mantido na GPL, mas parece que eles vão endurecer as regras em relação a licença. Quero dizer: eles vão cobrar que licença seja respeitada pelos outros e, eu pelo menos, espero que eles apliquem essa exigência adicional neles mesmos também. Tenho esperanças, a SGI não é nenhuma empresa pequena que precise desse único produto para viver.&lt;/li&gt;
&lt;li&gt;Alguma coisa vai acontecer. Não se iluda. Até o final do ano que vêm, alguma coisa acontece de significativo nessa história.&lt;/li&gt;
&lt;li&gt;Tenha esperanças de que aquela guerra infantil sobre o uso da marca registrada tenha um fim e que a política de desenvolvimento seja de longo prazo, permitindo não haver grandes modificações no código fonte a cada versão lançada.&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;"&lt;i&gt;Alea jacta est&lt;/i&gt;" (César, 49 A.C.)&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-9862774270584727?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/9862774270584727/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/08/sgi-compra-openfoam-ltda.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/9862774270584727?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/9862774270584727?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/08/sgi-compra-openfoam-ltda.html" title="SGI compra a OpenFOAM Ltda" /><author><name>João Felipe Mitre</name><uri>https://profiles.google.com/118295875382548551538</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-Mh3JAJ57NyI/AAAAAAAAAAI/AAAAAAAAD7g/fjv46PsPWcE/s512-c/photo.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;D0UCQnY7eCp7ImA9WhdQFU4.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-7832975350470023883</id><published>2011-08-16T19:50:00.002-03:00</published><updated>2011-08-16T19:54:23.800-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-16T19:54:23.800-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><category scheme="http://www.blogger.com/atom/ns#" term="simpleFoam" /><title>simpleFoam: Estudando o fvSchemes</title><content type="html">Seguindo a mesma linha de raciocínio do &lt;a href="http://notasemcfd.blogspot.com/2011/05/simplefoam-estudando-o-controldict.html"&gt;tópico no qual apresentei o controlDict do &lt;span class="Apple-style-span" style="font-family: Georgia, 'Times New Roman', serif;"&gt;simpleFoam&lt;/span&gt;&lt;/a&gt;&amp;nbsp;chegou o momento de apresentar o &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;fvSchemes&lt;/span&gt;&amp;nbsp;(não deixe de ler &lt;a href="http://notasemcfd.blogspot.com/2011/05/simplefoam-estudando-o-controldict.html"&gt;esse texto&lt;/a&gt; se não entendeu porque estou fazendo isso agora).&lt;br /&gt;
&lt;br /&gt;
O&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;fvSchemes&lt;/span&gt;&amp;nbsp;contém informações sobre os esquemas numéricos que são utilizados nas diferentes partes de discretização do modelo. O arquivo em questão está replicado abaixo.&lt;br /&gt;
&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;pre&gt;FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

ddtSchemes
{
    default steadyState;
}

gradSchemes
{
    default         Gauss linear;
    grad(p)         Gauss linear;
    grad(U)         Gauss linear;
}

divSchemes
{
    default         none;
    div(phi,U)      Gauss upwind;
    div(phi,k)      Gauss upwind;
    div(phi,epsilon) Gauss upwind;
    div(phi,R)      Gauss upwind;
    div(R)          Gauss linear;
    div(phi,nuTilda) Gauss upwind;
    div((nuEff*dev(grad(U).T()))) Gauss linear;
}

laplacianSchemes
{
    default         none;
    laplacian(nuEff,U) Gauss linear corrected;
    laplacian((1|A(U)),p) Gauss linear corrected;
    laplacian(DkEff,k) Gauss linear corrected;
    laplacian(DepsilonEff,epsilon) Gauss linear corrected;
    laplacian(DREff,R) Gauss linear corrected;
    laplacian(DnuTildaEff,nuTilda) Gauss linear corrected;
}

interpolationSchemes
{
    default         linear;
    interpolate(U)  linear;
}

snGradSchemes
{
    default         corrected;
}

fluxRequired
{
    default         no;
    p;
}

// ************************************************************************* // &lt;/pre&gt;&lt;br /&gt;
Da mesma forma que no caso do controlDict, esse arquivo também começa com o dicionário &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;FoamFile&lt;/span&gt;&amp;nbsp;e possui 7 outros dicionários (que na verdade o manual chama de sub-dicionário, porque é um dicionário dentro de outro dicionário, mas eu continuarei a defini-lo como dicionário nesse texto).&lt;br /&gt;
&lt;br /&gt;
Todos os dicionários são obrigatórios, ainda que seja para dizer que não há termos dessa ou daquela característica no modelo/aplicativo que se está utilizando:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;ddtSchemes&lt;/b&gt;&lt;/span&gt; - &amp;nbsp;Discretiza o termo da derivada temporal do modelo, se existir. No caso, se o problema for estacionário (como o &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;simpleFoam&lt;/span&gt;), usa-se &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;steadyState&lt;/span&gt; como opção. Se o problema for transiente, as opções, segundo o manual, são:&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;Euler&lt;/span&gt;, método de Euler de primeira ordem explícito, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;backward&lt;/span&gt;, método de Euler de segunda ordem implícito,&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;CrankNicholson&lt;/span&gt;, método de Crank-Nicholson.&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;snGradScheme&lt;/b&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;s - esse dicionário contém informações de como discretizar os gradientes normais da superfície, avaliado na face da célula.&lt;br /&gt;
&lt;br /&gt;
As opções básicas são: &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;corrected&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;, correção explícita de não ortogonalidade da malha, &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;uncorrected&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;, sem correção não-ortogonal e&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;limited&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;, "correção" não-ortogonal baseada no valor de um parâmetro (&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;phi&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;)&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;.&lt;br /&gt;
&lt;br /&gt;
O uso da opção &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;limited&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&amp;nbsp;consiste informar '&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;limited phi&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;' na opção desejada e phi é um valor que varia de 0 a 1 tal que, de acordo com a tabela&amp;nbsp;&lt;span id="goog_1611191292"&gt;&lt;/span&gt;4.7 do manual&lt;span id="goog_1611191293"&gt;&lt;/span&gt;, :&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-a4dfl4NvinQ/TdqQrblJnLI/AAAAAAAADOE/jFXwFHqh73s/s1600/user402x.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-a4dfl4NvinQ/TdqQrblJnLI/AAAAAAAADOE/jFXwFHqh73s/s1600/user402x.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;gradSchemes&lt;/b&gt;&lt;/span&gt; - esquemas para discretização do gradiente. A rigor, há três métodos disponíveis, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;Gauss&lt;/span&gt;, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;leastSquare&lt;/span&gt; e &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;fourth&lt;/span&gt;. São métodos tradicionais, onde os primeiros são de segunda ordem e o terceiro é de quarta ordem. O método de Gauss requer que o usuário defina o tipo de interpolação, dos quais &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;linear&lt;/span&gt;&amp;nbsp;e &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;upwind&lt;/span&gt; são opções típicas.&lt;br /&gt;
&lt;br /&gt;
No caso do simpleFoam, esse dicionário é responsável por discretizar o gradiente de pressão, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;grad(p)&lt;/span&gt;, e o gradiente de velocidade &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;grad(U)&lt;/span&gt;.&lt;/li&gt;
&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;divSchemes&lt;/b&gt;&lt;/span&gt; - esquema para discretização do termo divergente. Segundo o manual, há apenas uma única opção disponível, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;Gauss&lt;/span&gt;&amp;nbsp;(existem a opção não documentada&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;explicit&lt;/span&gt;, mas não vou falar sobre isso). Porém, há vários esquemas de interpolação e isso faz as coisas serem bem mais complicadas nesse dicionário.&lt;br /&gt;
&lt;br /&gt;
Nem todos os tipos de metodologia de interpolação são indicadas para o divergente, é preciso saber escolher.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;laplacianSchemes&lt;/b&gt;&lt;/span&gt; - esquema para discretizar o laplaciano. Segundo o manual, há apenas uma única opção disponível, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;Gauss&lt;/span&gt;, e não imagina a minha surpresa ao constatar que isso é verdade. A sintaxe é: &lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;
Gauss EsquemaDeInterpolacao snGradScheme&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Tudo que eu posso fazer nesse ponto do estudo é contemplar as escolhas feitas nos tutoriais, ou melhor, a escolha feita. Todos usam &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;Gauss linear&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;. Pelo que pude entender, isso é mesmo o usual.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Também parece ser usual usar &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;corrected&lt;/span&gt; ou &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;limited&lt;/span&gt; e ajustar o valor do parâmetro &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;phi&lt;/span&gt; conforme a necessidade entre &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;0&lt;/span&gt;, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;0.333&lt;/span&gt;, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;0.5&lt;/span&gt; e &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;1&lt;/span&gt;. A maior parte dos tutoriais utilizaria 1. Digo utilizaria e não utiliza, por que, na verdade, os tutoriais utilizam a opção &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;corrected&lt;/span&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;fluxRequired&lt;/b&gt;&lt;/span&gt; - esse dicionário lista as variáveis que são acopladas com o calculo do fluxo, em outras palavras, são variáveis que dependem do fluxo para serem determinadas. Na dinâmica dos fluidos, a principal variável nessa lista é a pressão (quando há acoplamento pressão-velocidade). Há casos, em análise de sólidos, onde pode ser necessário calcular o fluxo de calor.&lt;br /&gt;
&lt;br /&gt;
Nesse termo, &lt;b&gt;ou&lt;/b&gt; o usuário está utilizando um aplicativo existente e o tutorial vai esclarecer quais são as variáveis que devem ser listadas aqui, &lt;b&gt;ou&lt;/b&gt; o usuário é um programador que está criando o novo aplicativo e, portanto, saberá perfeitamente o que deve ser resolvido antes do fluxo ser calculado (afinal, a modelagem e a programação do código fará isso ser claro a ele!).&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;interpolationScheme&lt;/span&gt;&lt;/b&gt; - esse dicionário define o método de interpolação de uma certa variável na face. Embora exista uma grande quantidade de opções, isso não chega a ser um problema pois trata-se de uma simples interpolação da variável. No caso do &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;simpleFoam&lt;/span&gt;, esse termos é responsável por calcular o valor da velocidade das faces do volume.&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;&lt;b&gt;Importância do método numérico&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Na descrição de todos os dicionários eu poderia ter escrito: "&lt;b&gt;é necessário compreender bem o problema e o método numérico para fazer as escolhas adequadas&lt;/b&gt;". De fato, é fundamental conhecer o método numérico para escolher adequadamente as opções em cada termo.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;O método numérico é o coração do código. É o que realmente é feito desde o começo. A modelagem é apenas um produto que deve ser visto com detalhes, claro, mas que é obtido com a "máquina". Dessa forma, é ilusão pensar que um usuário será capaz de dominar o OpenFOAM se não conhecer o mínimo dos métodos numéricos. Para dizer a verdade, é possível que ele tenha que conhecer os métodos numéricos de forma muito mais ampla do que se poderia imaginar. O&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;fvScheme&lt;/span&gt;&amp;nbsp;é a interface que seleciona o método de discretização e interpolação e, portanto, de funcionamento da máquina e depende do usuário fazer com que a metodologia seja suficiente para obter uma forma final adequada. Portanto, concluí-se que o&amp;nbsp;&lt;b&gt;usuário deve aprender como o método numérico funciona&lt;/b&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;b&gt;Entendendo um pouco mais sobre os dicionários de discretização&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Permito-me copiar o termo de divergente descrito acima para esse ponto do texto.&lt;/div&gt;&lt;div&gt;&lt;pre style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;divSchemes
{
    default         none;
    div(phi,U)      Gauss upwind;
    div(phi,k)      Gauss upwind;
    div(phi,epsilon) Gauss upwind;
    div(phi,R)      Gauss upwind;
    div(R)          Gauss linear;
    div(phi,nuTilda) Gauss upwind;
    div((nuEff*dev(grad(U).T()))) Gauss linear;
}&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;Esse termo possui uma chave definida como&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;default&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt; e tanto aqui como na maioria dos dicionários desse e de todos os tutoriais, a opção para essa chave é&amp;nbsp;&lt;/span&gt;'&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;none&lt;/span&gt;'. Nesse caso em especial, isso significa que todos os divergentes que vão ser resolvidos &lt;b&gt;devem ser declarados manualmente no arquivo&lt;/b&gt;&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;fvSchemes&lt;/span&gt;. Isso não é um grande problema quando se quer apenas resolver alguma coisa com mesma modelagem de um tutorial, mas se experimentar modificar o modelo de turbulência verá que há outras declarações que devem ser feitas.&amp;nbsp;&lt;b&gt;Nota&lt;/b&gt;: ao tentar resolver o caso, o OpenFOAM com definições incompletas o o programa vai emitir uma mensagem de erro, bem direta. É simples, mas chato e nem sempre rápido.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Usar uma opção diferente de &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;none&lt;/span&gt; como&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt; default &lt;/span&gt;não evita que alguns termos tenham que ser declarados. Isso acontece porque o programador possui meios de forçar o usuário a declarar manualmente um certo termo. O programador faz isso porque acredita que o usuário deve olhar para aquele termo com mais atenção e carinho.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;b&gt;A grande questão da interpolação dos termos de divergente, gradiente e laplaciano&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Descobri ao estudar o OpenFOAM que apenas depois de eu ter lido o manual do programador vou ser capaz de explicar melhor cada termo que aparece nesse arquivo.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Esse arquivo é, sem dúvida alguma, o mais complicado de todos os arquivos de configuração do OpenFOAM.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Mas eu insisto em colocar um recomendação básica simples nesse texto, além da evidente "&lt;b&gt;aprenda métodos numéricos e estudo melhor o código do OpenFOAM&lt;/b&gt;". E a recomendação para o usuário considerar com carinho as opções usadas nos tutoriais e na ausência dessas usar&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;linear&lt;/span&gt;&amp;nbsp;ou&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;upwind&lt;/span&gt;&amp;nbsp;com um bom refino de malha. Não raro, o ideal é usar o método muito mais robusto, &lt;b&gt;mas para fazer isso o usuário precisa aprender métodos numéricos&lt;/b&gt;. Se ele não quiser fazer isso, vai ter que se contentar com o que está escrito aqui.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Repito novamente para quem não está prestando atenção no texto: &lt;b&gt;Para usar o OpenFOAM, com todo o poder que ele possui, é fundamental conhecer o método numérico.&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Sim, estou sendo chato nisso, porque não é algo trivial e os usuários do FLUENT e do CFX não possuem esse pré-requisito para usar o que os programas possuem de bom. Por exemplo, esse programas possuem apenas 4 métodos de interpolação dos termos de divergente, gradiente e laplaciano. Eles normalmente escolhem o básico (tal qual foi minha recomendação aqui) e usualmente aplica os mesmo método a todos os termos mencionados. O OpenFOAM possui quase 70 métodos de interpolação que podem (e não que devem) ser usados nos termos de divergente, gradiente e laplaciano. E cada termo pode ter uma definição diferente. Faça uma escolha errada e adeus solução.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;b&gt;Informações adicionais e o manual do OpenFOAM&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Infelizmente, o manual do OpenFOAM não é completo. O manual é muito, mas muito incompleto. Ok, todos os manuais são superficiais, mas informações como "algumas vezes o usuário será obrigado a declarar um dado termo no &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;fvScheme&lt;/span&gt;&amp;nbsp;que o programador exige que assim seja feito" ou mesmo a simples lista dos métodos disponíveis devia ser um pouco mais completa. Ter referências seria perfeito, mas não espere isso do manual do OpenFOAM.&lt;br /&gt;
&lt;br /&gt;
Portanto, a melhor, senão a única, forma de aprender sobre os métodos do OpenFOAM é colocar a mão na massa e estudar o código. Sim, o código. A vantagem do OpenFOAM é o fato de ser código livre e lhe dar direito de ver exatamente aquilo que está implementado. Usar isso é o que torna possível ir além.&lt;br /&gt;
&lt;br /&gt;
O manual do programador também ajudará muito na análise do problema, mas assim como o manual do usuário não vai dizer tudo que nós gostaríamos de saber.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;b&gt;Agradecimentos&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Por fim, lembre-se, você certamente precisa de ajuda. Esse tópico, por exemplo, somente tem a quantidade de informações que ele possui porque eu tirei dúvidas com a Livia, o Jovani e o Luiz. Eles possuem mais experiências que eu, tanto no uso prático&amp;nbsp;do programa, &lt;i&gt;pois eu estou começando no OpenFOAM&lt;/i&gt;, quanto nos conceitos&amp;nbsp;teóricos, &lt;i&gt;pois o Luiz já lecionou uma disciplina apenas para falar sobre isso e eu, até hoje, não conheço os métodos além da superfície e não tenho grandes experiências com os diferentes métodos numéricos e de discretização disponíveis&lt;/i&gt;. Na verdade, isso é uma conclusão rápida derivada do fato de que os aplicativos são mal documentados. &lt;b&gt;Não há caminho fácil se quiser realmente mergulhar no entendimento do OpenFOAM, mesmo como simples usuário.&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;Para não esquecer&lt;/b&gt;&lt;br /&gt;
Quero lembrar que ainda estou utilizando o OpenFOAM-1.6-dev. Apesar de haver algumas diferenças, nada do que apresentei aqui difere muito das versões posteriores. Isso não será sempre verdade no futuro, portanto, fique atento ao fato de que estou utilizando o OpenFOAM-1.6-dev.&amp;nbsp;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-7832975350470023883?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/7832975350470023883/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/08/simplefoam-estudando-o-fvschemes.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/7832975350470023883?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/7832975350470023883?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/08/simplefoam-estudando-o-fvschemes.html" title="simpleFoam: Estudando o fvSchemes" /><author><name>João Felipe Mitre</name><uri>https://profiles.google.com/118295875382548551538</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-Mh3JAJ57NyI/AAAAAAAAAAI/AAAAAAAAD7g/fjv46PsPWcE/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-a4dfl4NvinQ/TdqQrblJnLI/AAAAAAAADOE/jFXwFHqh73s/s72-c/user402x.png" height="72" width="72" /><thr:total>2</thr:total></entry><entry gd:etag="W/&quot;CUAGQHo6fSp7ImA9WhdTFkU.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-6189087583859589473</id><published>2011-07-14T19:38:00.003-03:00</published><updated>2011-07-14T19:48:41.415-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-14T19:48:41.415-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><category scheme="http://www.blogger.com/atom/ns#" term="controlDict" /><title>OpenFOAM: o controlDict e o writeInterval</title><content type="html">&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;Olá leitores,&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;no mês de maio o J.F.Mitre falou um pouco sobre arquivo&lt;/span&gt;&lt;a href="http://notasemcfd.blogspot.com/2011/05/simplefoam-estudando-o-controldict.html" style="font-family: inherit;"&gt; controlDict no estudo de um caso tutorial do simpleFoam&lt;/a&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;. O objetivo deste &lt;/span&gt;&lt;i style="font-family: inherit;"&gt;post&lt;/i&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt; é esclarecer um pouco mais sobre um dos parâmetros deste arquivo, o &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeInterval&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;O valor que deve ser especificado no &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeInterval&lt;/span&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt; depende de uma opção definida no parâmetro &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeControl&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;.&amp;nbsp;Um resumo das opções do&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeControl&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&amp;nbsp;e o respectivo valor que deve ser adotado no &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeInterval&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&amp;nbsp;estão listados em uma tabela logo abaixo.&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;Agora fique atento, não basta você modificar a opção do &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeControl&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt; e passar a adotar aquela que for da sua preferencia. Cada &lt;/span&gt;&lt;i style="font-family: inherit;"&gt;solver&lt;/i&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&amp;nbsp;foi desenvolvido de uma forma e aceita apenas algumas opções. &amp;nbsp;Uma boa dica é trocar a opção do &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeControl&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt; para uma palavra qualquer, como por exemplo "teste", e tentar executar o caso. O OpenFOAM&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; border-collapse: collapse; line-height: 18px;"&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;irá mostrar uma mensagem de erro com as opções disponíveis para o seu caso. Escolha uma e siga em frente!&lt;/span&gt;&lt;br /&gt;
&lt;table cellpadding="4" cellspacing="0"&gt;&lt;colgroup&gt;&lt;col width="145"&gt;&lt;/col&gt;  &lt;col width="481"&gt;&lt;/col&gt;  &lt;/colgroup&gt;&lt;tbody&gt;
&lt;tr valign="TOP"&gt;   &lt;td style="border: none; padding: 0cm;" width="145"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div align="CENTER" style="border: none; font-style: normal; orphans: 2; padding: 0cm; widows: 2;"&gt;&lt;span style="color: black; font-family: 'Courier New', Courier, monospace;"&gt;writeControl&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="border: none; padding: 0cm;" width="481"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style="border: none; orphans: 2; padding: 0cm; widows: 2;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-family: 'Courier New', Courier, monospace; font-style: normal;"&gt;writeInterval&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr valign="TOP"&gt;   &lt;td style="border: none; padding: 0cm;" width="145"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div align="CENTER" style="border: none; orphans: 2; padding: 0cm; widows: 2;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-style: normal;"&gt;&lt;span style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"&gt;timeStep&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="border: none; padding: 0cm;" width="481"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style="border: none; padding: 0cm;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;é o&amp;nbsp;valor do período&amp;nbsp;no qual&amp;nbsp;os&amp;nbsp;resultados da simulação serão salvos. Ou seja,&amp;nbsp;para&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeInterval&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&amp;nbsp;igual&amp;nbsp;a 20 e&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;deltaT&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&amp;nbsp;igual&amp;nbsp;a 0.1, os resultados serão salvos a cada 2 segundos do tempo de simulação. &amp;nbsp;Neste caso, as pastas com resultados serão nomeadas da seguinte forma: 0.2, 0.4, 0.6, ...., &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;endTime&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr valign="TOP"&gt;   &lt;td style="border: none; padding: 0cm;" width="145"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div align="CENTER" style="border: none; orphans: 2; padding: 0cm; widows: 2;"&gt;&lt;span style="font-weight: normal;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-family: 'Courier New', Courier, monospace; font-style: normal;"&gt;runTime&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="border: none; padding: 0cm;" width="481"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style="border: none; padding: 0cm;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;é&amp;nbsp;exatamente o valor de armazenamento do resultados. Ou seja, se&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;    o&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeInterval&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&amp;nbsp;é&amp;nbsp;igual 0.1, os resultados serão salvos a cada 0.1 segundos do tempo de simulação.&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;Neste caso, as pastas com resultados serão nomeadas da seguinte forma: 0.1, 0.2, 0.3, ....,&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;endTime&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr valign="TOP"&gt;   &lt;td style="border: none; padding: 0cm;" width="145"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div align="CENTER" style="border: none; orphans: 2; padding: 0cm; widows: 2;"&gt;&lt;span style="font-weight: normal;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-family: 'Courier New', Courier, monospace; font-style: normal;"&gt;adjustableRunTime&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="border: none; padding: 0cm;" width="481"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style="border: none; padding: 0cm;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;é semelhante a opção &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;runTime&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;, a diferença é que esta opção modifica o valor do &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;deltaT&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;. É usado em alguns &lt;i&gt;solvers&lt;/i&gt; com ajuste de intervalo de tempo automático, como alguns &lt;i&gt;solvers&lt;/i&gt; de escoamento compressível.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr valign="TOP"&gt;   &lt;td style="border: none; padding: 0cm;" width="145"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div align="CENTER" style="border: none; orphans: 2; padding: 0cm; widows: 2;"&gt;&lt;span style="font-weight: normal;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-family: 'Courier New', Courier, monospace; font-style: normal;"&gt;cpuTime&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="border: none; padding: 0cm;" width="481"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style="border: none; padding: 0cm;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;semelhante ao &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;runTime&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt; porém, neste caso, o valor de armazenamento dos resultados é o do tempo da CPU e não mais o tempo de simulação.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr valign="TOP"&gt;   &lt;td style="border: none; padding: 0cm;" width="145"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div align="CENTER" style="border: none; orphans: 2; padding: 0cm; widows: 2;"&gt;&lt;span style="font-weight: normal;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-family: 'Courier New', Courier, monospace; font-style: normal;"&gt;clockTime&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="border: none; padding: 0cm;" width="481"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style="border: none; padding: 0cm;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;semelhante a opção &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;cpuTime&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;, porém este é o valor é do&amp;nbsp;somatório&amp;nbsp;do tempo de CPU e do tempo necessário para leitura e gravação de dados, ou seja, o tempo da vida real.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;Até o&amp;nbsp;próximo&amp;nbsp;&lt;i&gt;post&lt;/i&gt;!&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-6189087583859589473?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/6189087583859589473/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/07/openfoam-o-controldict-e-o.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/6189087583859589473?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/6189087583859589473?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/07/openfoam-o-controldict-e-o.html" title="OpenFOAM: o controlDict e o writeInterval" /><author><name>Livia Jatobá</name><uri>http://www.blogger.com/profile/09562213158975927023</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="28" height="32" src="http://3.bp.blogspot.com/-vT6OYXAclYc/Tx2FzuwFiOI/AAAAAAAAAd0/ravJE49R_xI/s220/100_0378.JPG" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CkQDR346fyp7ImA9WhZaGE0.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-6140552199482774878</id><published>2011-07-04T14:08:00.002-03:00</published><updated>2011-07-04T14:26:16.017-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-04T14:26:16.017-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><title>OpenFOAM® versão 2.0.0: mudanças na biblioteca thermophysicalModels</title><content type="html">No início do mês passado a OpenCFD lançou a versão 2.0 do OpenFOAM. A própria OpenCFD disponibilizou uma lista contendo as &lt;a href="http://www.openfoam.com/version2.0.0/"&gt;principais mudanças na nova versão&lt;/a&gt;.&amp;nbsp;A proposta deste &lt;i&gt;post &lt;/i&gt;é ressaltar aquela que eu considero a principal mudança na biblioteca &lt;i&gt;&lt;a href="http://www.openfoam.com/version2.0.0/thermophysical.php"&gt;thermophysicalModels&lt;/a&gt;: &lt;/i&gt;a nova sintaxe do arquivo&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;thermophysicalProperties.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
A biblioteca &lt;i&gt;thermophysicalModels&lt;/i&gt;&amp;nbsp;é responsável pela definição dos modelos para o cálculo de propriedades termofísicas. Propriedades como a massa específica, a viscosidade e o calor específico, por exemplo, dependem da &amp;nbsp;temperatura e da pressão e, por este motivo, o usuário precisa especificar os modelos para o cálculo destas propriedades durante a simulação do seu caso.&lt;br /&gt;
&lt;br /&gt;
Essa é função do arquivo&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;thermophysicalProperties&lt;/span&gt; na pasta &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;u&gt;constant&lt;/u&gt;&lt;/span&gt; dos casos e a biblioteca &lt;i&gt;thermophysicalModels&lt;/i&gt; estabelece as regras de entrada de dados neste arquivo.&amp;nbsp;A principal mudança na versão 2.0 esta justamente na forma de entrada de dados&amp;nbsp;no aquivo &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;thermophysicalProperties&lt;/span&gt;.&amp;nbsp;Portanto, se você usa algum &lt;i&gt;solver&lt;/i&gt;&amp;nbsp;contendo este arquivo, fique atento, pois o seu caso criado em uma versão 1.X não irá funcionar na versão 2.0! Será necessário atualizar a forma de entrada de dados do arquivo&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;thermophysicalProperties!&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;A boa notícia é que essa mudança transformou a leitura de dados muito mais palatável para um ser humano! Antes o arquivo&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;thermophysicalProperties&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt; se resumia a um conjunto de números e nomes de modelos que, a principio, não fazia o menor sentido para um primeiro leitor! Agora fica mais fácil identificar os parâmetros relacionados a cada modelo e o impacto para um usuário novato é menor! Mas como o mundo não é perfeito, o usuário ainda precisa consultar o &lt;i&gt;User's Guide&lt;/i&gt; para saber o que cada nome de modelo especificado no &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;thermoType&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt; significa na prática.&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;Somente para ilustrar a diferença na forma de entrada de dados, um trecho do arquivo&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;thermophysicalProperties&lt;/span&gt;&amp;nbsp; do &lt;i&gt;solver&lt;/i&gt;&amp;nbsp; &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;XiFoam&lt;/span&gt; tinha a seguinte estrutura:&lt;br /&gt;
&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;reactants &amp;nbsp; &amp;nbsp; &amp;nbsp; reactants &lt;span class="Apple-style-span" style="color: magenta;"&gt;24.8095 29.4649 200 5000 1000 3.28069 0.00195035 -6.53483e-07 1.00239e-10 -5.64653e-15 -1609.55 4.41496 3.47696 0.000367499 1.84866e-06 -9.8993e-10 -3.10214e-14 -1570.81 3.76075 1.67212e-06 170.672&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Agora, na versão 2.0, esta mesma informação é entrada da seguinte forma:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;reactants&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;{&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; specie&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; nMoles &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="color: magenta;"&gt;24.8095&lt;/span&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; molWeight &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="Apple-style-span" style="color: magenta;"&gt;29.4649&lt;/span&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; thermodynamics&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Tlow &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="color: magenta;"&gt;200&lt;/span&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Thigh &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="Apple-style-span" style="color: magenta;"&gt;5000&lt;/span&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Tcommon &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="Apple-style-span" style="color: magenta;"&gt;1000&lt;/span&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; highCpCoeffs &amp;nbsp; &amp;nbsp;( &lt;span class="Apple-style-span" style="color: magenta;"&gt;3.28069 0.00195035 -6.53483e-07 1.00239e-10 -5.64653e-15 -1609.55 4.41496&lt;/span&gt; );&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lowCpCoeffs &amp;nbsp; &amp;nbsp; ( &lt;span class="Apple-style-span" style="color: magenta;"&gt;3.47696 0.000367499 1.84866e-06 -9.8993e-10 -3.10214e-14 -1570.81 3.76075&lt;/span&gt; );&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; transport&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; As &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="color: magenta;"&gt;1.67212e-06&lt;/span&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Ts &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="color: magenta;"&gt;170.672&lt;/span&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;
Muito melhor, não!? Agora resta a expectativa que a sintaxe mais palatável seja&amp;nbsp;estendida&amp;nbsp;também para a definição dos modelos no &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;thermoType&lt;/span&gt;! Tomara que não demore muito!&lt;br /&gt;
&lt;br /&gt;
Até a&amp;nbsp;próxima.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-6140552199482774878?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/6140552199482774878/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/07/openfoam-versao-200-mudancas-na.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/6140552199482774878?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/6140552199482774878?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/07/openfoam-versao-200-mudancas-na.html" title="OpenFOAM® versão 2.0.0: mudanças na biblioteca thermophysicalModels" /><author><name>Livia Jatobá</name><uri>http://www.blogger.com/profile/09562213158975927023</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="28" height="32" src="http://3.bp.blogspot.com/-vT6OYXAclYc/Tx2FzuwFiOI/AAAAAAAAAd0/ravJE49R_xI/s220/100_0378.JPG" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;C0cFSH0yeyp7ImA9WhZbFUQ.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-1673159472128646855</id><published>2011-06-20T14:30:00.000-03:00</published><updated>2011-06-20T14:30:19.393-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-20T14:30:19.393-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><category scheme="http://www.blogger.com/atom/ns#" term="softwares" /><category scheme="http://www.blogger.com/atom/ns#" term="notas" /><title>OpenFOAM 2.0</title><content type="html">No último dia 16 de junho foi lançada a &lt;a href="http://www.openfoam.com/version2.0.0/" target="_blank"&gt;versão 2.0 do OpenFOAM&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Todos os escritores do Notas em CFD atualmente utilizam a versão &lt;i&gt;&lt;a href="http://www.extend-project.de/" target="_blank"&gt;extended&lt;/a&gt;&lt;/i&gt;. Portanto estamos todos muito longe da versão 2.0, já que a 1.7-extended não saiu e, para dizer a verdade, agora, nem sei se vai sair (ou se vamos direto para o 2.0). Por outro lado, a Livia, devido a modificações feitas nessa nova versão, passará a utilizar a versão 2.0. Sendo assim, ela fará as honras da casa em um futuro próximo.&lt;br /&gt;
&lt;br /&gt;
Eu continuarei na versão &lt;i&gt;extended. &lt;/i&gt;Mantendo a 2.0 no computador a título de curiosidade científica.&lt;br /&gt;
&lt;i&gt;&lt;br /&gt;
&lt;/i&gt;&lt;br /&gt;
O código fonte e binários dessa versão já estão disponíveis para &lt;a href="http://www.openfoam.com/version2.0.0/" target="_blank"&gt;download&lt;/a&gt;. Recomendo a quem quiser compilar o programa do código fonte usar o repositório git, uma vez que as pequenas correções, quando acrescentadas, são acrescentadas nesse repositório até que seja feita um pacote 2.0.1 (o terceiro número representa uma versão de correções e atualmente estaríamos na versão 2.0.0 !). Você encontra algumas informações legais &lt;a href="http://albertopassalacqua.com/?p=973" target="_blank"&gt;sobre como instalar o OpenFOAM 2.0.x, a partir do repositório git oficial da OpenCFD, no blog do&amp;nbsp;Alberto Passalacqua&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Boa sorte e não deixem de dar notícias e opiniões sobre a nova versão, aqui mesmo, nos comentários.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-1673159472128646855?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/1673159472128646855/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/06/openfoam-20.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/1673159472128646855?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/1673159472128646855?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/06/openfoam-20.html" title="OpenFOAM 2.0" /><author><name>João Felipe Mitre</name><uri>https://profiles.google.com/118295875382548551538</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-Mh3JAJ57NyI/AAAAAAAAAAI/AAAAAAAAD7g/fjv46PsPWcE/s512-c/photo.jpg" /></author><thr:total>3</thr:total></entry><entry gd:etag="W/&quot;D0YFR38_cSp7ImA9WhZVF00.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-4514253414313880870</id><published>2011-05-19T11:02:00.003-03:00</published><updated>2011-05-29T18:38:36.149-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-29T18:38:36.149-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><category scheme="http://www.blogger.com/atom/ns#" term="simpleFoam" /><title>simpleFoam: Estudando o controlDict</title><content type="html">Há um grande interesse em simulações de escoamentos monofásicos, incompressíveis, sem transferência de calor ou massa, estacionária e turbulenta. E para essas simulações, há o &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;simpleFoam&lt;/span&gt;. Vou escrever alguns textos sobre esse aplicativo que eu estou estudando, e vou começar do começo e ir até o código. Esclareço que não explicarei como instalar o OpenFOAM ou mesmo como é a estrutura básica de arquivos. Se interessar ou se for necessário, pode observar os &lt;a href="http://notasemcfd.blogspot.com/2008/08/curso-de-introduo-ao-openfoam.html"&gt;slides nesse outro tópico do blog&lt;/a&gt;, especialmente o que está marcado como "dia 1".&lt;br /&gt;
&lt;br /&gt;
Para mim não há melhor começo do que o tutorial e para isso eu seleciono o&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;pitzDaily&lt;/span&gt;.&lt;br /&gt;
&lt;br /&gt;
Para começar o estudo, eu sugiro copiar o tutorial em questão para seu diretório de rodada (se já não o tiver feito, claro). &lt;br /&gt;
&lt;pre&gt;cp -r $FOAM_TUTORIALS/incompressible/simpleFoam/pitzDaily  $FOAM_RUN
cd $FOAM_RUN/pitzDaily &lt;/pre&gt;Não quero entrar em detalhes sobre a geração de malha. Isso porque o tutorial utiliza o blockMesh e eu não o considero uma alternativa produtiva quando comparada as soluções de trabalho que existem, portanto, pulo essa etapa pedindo que digite no diretório do caso: &lt;br /&gt;
&lt;pre&gt;blockMesh&lt;/pre&gt;Como isso é um tutorial, o próximo passo para ter a simulação pronta é digitar no terminal o comando:&lt;br /&gt;
&lt;pre&gt;simpleFoam&lt;/pre&gt;o que significa rodar o aplicativo para o caso estabelecido. Feito isso, o caso está pronto para ser visualizado no ParaView (&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;paraFoam&lt;/span&gt;) ou em qualquer outro visualizador de sua preferência compatível. Mas isso apenas muito adiante.&lt;br /&gt;
&lt;br /&gt;
Nessa série de estudos me interessa descrever toda a configuração do caso para compreender aquilo que pode (ou deve) ser modificado caso a caso.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Alerto que eu vou omitir o cabeçalho do arquivo apresentado.&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
O primeiro arquivo que vou analisar o é &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;controlDict&lt;/span&gt;&amp;nbsp;(e por isso o título do tópico). Todas as informações relevantes podem ser encontradas na &lt;a href="http://www.openfoam.com/docs/user/controlDict.php"&gt;documentação oficial&lt;/a&gt;.&lt;br /&gt;
&lt;pre&gt;FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

application     simpleFoam;
startFrom       startTime;
startTime       0;
stopAt          endTime;
endTime         1000;
deltaT          1;
writeControl    timeStep;
writeInterval   50;
purgeWrite      0;
writeFormat     ascii;
writePrecision  6;
writeCompression uncompressed;
timeFormat      general;
timePrecision   6;
runTimeModifiable yes;

// ************************************************************************* //&lt;/pre&gt;&lt;br /&gt;
A primeira parte do arquivo compõe um dicionário chamado FoamFile, que configura algumas informações características para os arquivos de entrada e saída.&amp;nbsp;A &lt;a href="http://www.openfoam.com/docs/user/basic-file-format.php#x18-970131"&gt;tabela 4.1&lt;/a&gt; da documentação do usuário explica alguns argumentos desse item. Reproduzo-o abaixo.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-1CbHtTty9bU/TdUJ3emGPJI/AAAAAAAADOA/vrTYQ3U2oCA/s1600/tabela4.1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-1CbHtTty9bU/TdUJ3emGPJI/AAAAAAAADOA/vrTYQ3U2oCA/s1600/tabela4.1.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Bom, o controlDict é nome do arquivo (objeto) que é um arquivo de dicionário (class), a versão foi definida por alguém (e não me pergunte quem ou porque é 2.0), o formato desse arquivo é ascii (porque não é binário ! Afinal, você o está lendo). A localização (location) é uma configuração opcional e eu realmente não conheço motivo para querer utilizar essa opção.&lt;br /&gt;
&lt;br /&gt;
Seguindo ao "dicionário" FoamFile existe uma série de palavras-chaves com seus respectivos argumentos. Adianto que no exemplo estudado aqui nem tudo que é possível utilizar foi utilizado. O formato dessas informações segue o estilo:&lt;br /&gt;
&amp;lt;keyword&amp;gt; &amp;nbsp;&amp;lt;dataentry1&amp;gt; … &amp;lt;dataentryn&amp;gt;;&lt;br /&gt;
ou&lt;br /&gt;
&amp;lt;keyword&amp;gt; &amp;nbsp;&amp;lt;dataentry&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
Quero descrever apenas aquilo que está no &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;controDict&lt;/span&gt; aqui apresentado, para outras opções aguarde outros tópicos ou busque o &lt;a href="http://www.openfoam.com/docs/user/controlDict.php"&gt;manual do OpenFOAM&lt;/a&gt;.&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;application&lt;/span&gt;&lt;/b&gt; : contém o nome do aplicativo que resolve o problema. No nosso caso, simpleFoam. O OpenFOAM tenta manter a coerência dos nomes de aplicativos, objetos e referências sempre que possível, mesmo quando seria obrigatório, o OpenFOAM faz ser obrigatório para facilitar o entendimento.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;startFrom&lt;/span&gt;&lt;/b&gt; : controla o instante de tempo que inicia a simulação. Há três opções possíveis, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;firstTime&lt;/span&gt;, que inicializa o caso a partir do diretório que representa o menor tempo, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;startTime&lt;/span&gt;, onde usuário define qual é o valor do ponto inicial, se zero, como no exemplo, produz o mesmo efeito que &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;firstTime&lt;/span&gt;, e, por fim, o&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;latestTime&lt;/span&gt;, que inicia a simulação a partir do último diretório de tempo criado e é muito útil para reiniciar rodadas.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;startTime&lt;/span&gt;&lt;/b&gt; : quando startFrom é igual a startTime, o valor desse tempo deve ser especificado nessa variável. O tempo aqui e em todos os demais locais estão em segundos.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;stopAt&lt;/span&gt;&lt;/b&gt; : controla o instante de tempo que encerra a simulação. Pode-se utilizar, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;endTime&lt;/span&gt;, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeNow&lt;/span&gt;, &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;noWriteNow&lt;/span&gt; e &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;nextWrite&lt;/span&gt;. A oção &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;endTime&lt;/span&gt; define o ponto de conclusão como provavelmente o usuário escreveu na folha de papel. As demais opções são para interrupção antes de &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;endTime&lt;/span&gt;. Sendo &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeNow&lt;/span&gt; &amp;nbsp;e &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;noWriteNow&lt;/span&gt; imposição de interrupção imediata, porém no primeiro caso escrevendo o resultado final e no segundo sem escrever o resultado final. Normalmente, o intervalo de escrita dos resultados é bem maior do que o passo de tempo. Sendo assim, a opção &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;nextWrite&lt;/span&gt; é quando o usuário quer esperar mais alguns passos de tempo antes de interromper a rodada, mas precisamente, esperar até a próxima escrita programada de dados para interromper.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;endTime&lt;/span&gt; &lt;/b&gt;: variável que define o ponto de interrupção da rodada quando &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;stopAt&lt;/span&gt; está especificado. É usual que isso seja necessário.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;deltaT&lt;/b&gt;&lt;/span&gt; : intervalo de tempo da simulação.&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;writeControl&lt;/b&gt;&lt;/span&gt; : forma de controlar a escrita de dados. Vou me reter a explicar o que eu considero útil. A opção &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;timeStep&lt;/span&gt; e a opção&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;clockTime&lt;/span&gt;. A opção &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;timeStep&lt;/span&gt; indica que será utilizado&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeInterval&lt;/span&gt;&amp;nbsp;&amp;nbsp;intervalos de tempo para escrever os arquivos. É usual que essa opção seja utilizada em um caso transiente. A opção &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;clockTime&lt;/span&gt;, pela natureza do funcionamento do OpenFOAM, me parece bem útil em simulações estacionárias com malha realmente grande, quando escrever o resultado uma ou duas vez por dia (intervalo de tempo marcado no relógio e sem vínculo com a simulação) é uma boa idéia por conta de backups.&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;writeInterval&lt;/b&gt;&lt;/span&gt; :&amp;nbsp;este valor é o período em que os resultados da simulação serão salvos. No caso estudado deseja-se salvar a simulação a cada 50 passos de tempo. Uma dica para definir esse valor é primeiro escolher o intervalo de tempo que se deseja salvar os resultados da simulação, como a cada 1 segundo por exemplo, e o seu passo de tempo (&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;deltaT&lt;/span&gt;), &amp;nbsp;por exemplo igual a 0.5 segundos, então o valor que deve ser especificado no &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeInterval&lt;/span&gt; é o resultado da divisão do tempo desejado para arquivo dos dados (1s) pelo &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;deltaT&lt;/span&gt; (0.5s) e, portanto, igual a 2. Observe apenas que esse número deve ser um número inteiro, pois o resultado será salvo a cada&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeInterval&lt;/span&gt;&amp;nbsp;números de passo de tempo. &amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;purgeWrite&lt;/b&gt;&lt;/span&gt; : serve para especificar quando o usuário quer que apenas os últimos &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;purgeWrite&lt;/span&gt; valores de resultados escritos sejam guardados. Tem sua utilidade em casos transientes, mas sua verdadeira utilidade está nos casos estacionários (como o nosso). Utilizar &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;purgeWrite&lt;/span&gt; igual a 1 fará com que apenas o último instante de tempo seja salvo, ou seja, exatamente o que interessa na simulação estacionária. Note que no nosso exemplo foi utilizado zero. Assim foi feito porque assim estava no meu tutorial, mas isso apenas significa espaço consumido no HD. O que é insignificante no caso do tutorial, mas faça isso com uma malha de 14 milhões de nós e vai entender o que quero dizer.&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;writeFormat&lt;/b&gt;&lt;/span&gt; : indica o formato do arquivo. Existem duas opções, ascii e binary. Normalmente eu uso ascii, mas...&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;writePrecision&lt;/b&gt;&lt;/span&gt; : indica o número de algarismos significativos dos resultados quando usar-se ascii na opção de &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeFormat&lt;/span&gt;. O valor seis pode lhe parecer pequeno, mas se o número for muito grande há aumento do tamanho consumido pelos resultados. Não significa que um valor de &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;0.000000001&lt;/span&gt; não seja representado. Pelo contrário, os zeros a esquerda são desconsiderados na hora de escrever esse número. O problema maior é quando o número é muito grande (maior que 999999). Nesse caso acontece um arredondamento sinistro (eu não tenho outra palavra!). Compare o valor do campo de velocidade do resultado simulado com a configuração padrão e modificando o valor dessa variável para 2 para ver o que eu estou falando. Use o instante de tempo de 100 segundos para melhor ver o arredondamento grosseiro na escrita.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeCompression&lt;/span&gt;&lt;/b&gt; : informa se os dados escritos serão comprimidos (&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;compressed&lt;/span&gt;) ou não possuíram qualquer compressão (&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;uncompressed&lt;/span&gt;). Os dados comprimidos ocupam muito menos espaço, mas há o trabalho extra de comprimi-los. Nunca avaliei os custos envolvidos. Normalmente uso o padrão, que o uncompressed.&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;timeFormat&lt;/b&gt;&lt;/span&gt; : há opções, mas francamente, deixe em general. Essa opção configura o nome dos diretórios onde escreve-se os resultados.&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;timePrecision&lt;/b&gt;&lt;/span&gt; : novamente, falando francamente, deixe em 6 se usar o general no &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;timeFormat&lt;/span&gt;. Essa valor configura o número de dígitos que será utilizado escrever os diretórios. Um problema é quando o tempo é muito pequeno, nesse caso, 6 seria um &amp;nbsp;número ruim, porém, se seguiu meu conselho em &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;timeFormat&lt;/span&gt; não precisará se preocupar com isso.&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;runTimeModifiable&lt;/b&gt;&lt;/span&gt; : configura se é (&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;yes&lt;/span&gt;) ou não é (&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;no&lt;/span&gt;) possível realizar modificações durante a rodada. Em termos práticos, a opção &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;no&lt;/span&gt;&amp;nbsp;(que não permite modificar as condições) somente faz sentido para simulações conhecidas. A vantagem é que o OpenFOAM não perde tempo verificando se o arquivo &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;controlDict&lt;/span&gt; foi modificado a cada passo de tempo.&lt;/li&gt;
&lt;/ul&gt;Existem algumas coisas a mais que podem ser feitas, como adicionar funções e bibliotecas, mas cada caso é algo muito particular e eu não conseguiria explicar tudo em um texto genérico. Um exemplo &lt;b&gt;MUITO&lt;/b&gt; útil é a &lt;a href="http://notasemcfd.blogspot.com/2010/07/usando-pontos-de-monitoramento-no.html"&gt;adição de pontos de monitoramento que já foi explicado nesse blog&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Acrescento, por fim, uma informação que eu não testei e que não está sendo utilizada nesse arquivo de exemplo mais é listada no manual, o &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;graphFormat&lt;/span&gt;. Essa opção permite configurar o formato do arquivo facilitando a interpretação do mesmo em diferentes programas de produção de gráficos, como o gnuplot e o grace.&lt;br /&gt;
&lt;br /&gt;
Como esse é o primeiro texto de uma série, cabe esclarecer que ela vai ser escrita porque eu estou fazendo do Notas em CFD o meu caderno de anotações e eu preciso aprender o que estou escrevendo. Sim, meus caros, eu estou estudando e compartilhando minhas anotações com outras pessoas. Estou utilizando o OpenFOAM-1.6-ext.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;[update 29/05/2011]&lt;/b&gt;&lt;br /&gt;
Agradecimento especial a Livia pelas sugestões acrescentadas e modificadas na data dessa atualização no item&amp;nbsp;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;writeInterval&lt;/span&gt;.&lt;br /&gt;
&lt;b&gt;[/update&amp;nbsp;29/05/2011]&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-4514253414313880870?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/4514253414313880870/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/05/simplefoam-estudando-o-controldict.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/4514253414313880870?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/4514253414313880870?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/05/simplefoam-estudando-o-controldict.html" title="simpleFoam: Estudando o controlDict" /><author><name>João Felipe Mitre</name><uri>https://profiles.google.com/118295875382548551538</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-Mh3JAJ57NyI/AAAAAAAAAAI/AAAAAAAAD7g/fjv46PsPWcE/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-1CbHtTty9bU/TdUJ3emGPJI/AAAAAAAADOA/vrTYQ3U2oCA/s72-c/tabela4.1.png" height="72" width="72" /><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;A0YAR3kzcCp7ImA9WhZTFk8.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-2192243324417541621</id><published>2011-03-20T10:13:00.004-03:00</published><updated>2011-03-20T10:52:26.788-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-20T10:52:26.788-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><title>OpenFOAM no Windows</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-FANMldL_GOM/TYYGZp5TNnI/AAAAAAAAADw/a8ECx_JPfW8/s1600/WinOF.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 76px;" src="http://2.bp.blogspot.com/-FANMldL_GOM/TYYGZp5TNnI/AAAAAAAAADw/a8ECx_JPfW8/s320/WinOF.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5586159425612363378" /&gt;&lt;/a&gt;Como já comentei em um post anterior, uma reclamação muito comum das pessoas que estão começando a usar o &lt;strong&gt;&lt;a href="http://www.openfoam.com/"&gt;OpenFOAM&lt;/a&gt;&lt;/strong&gt; (OF) é a necessidade de que, ao mesmo tempo,  também devem começar a usar uma distro &lt;strong&gt;Linux&lt;/strong&gt;.&lt;p&gt;Existem algumas alternativas para aqueles usuários de OF que resistem em não querer usar Linux. Uma alternativa é emular os programas de Linux usando o &lt;strong&gt;&lt;a href="http://www.cygwin.com/"&gt;Cygwin&lt;/a&gt;&lt;/strong&gt;, por exemplo. Este por sua vez é um ambiente &lt;em&gt;Linux-Like&lt;/em&gt; para &lt;strong&gt;Windows&lt;/strong&gt;. A principal crítica para isso (principalmente em se tratando de CFD) é a perda de eficiência computacional, ou seja, o Cygwin, por si próprio, consome recursos computacionais  para emular o ambiente Linux. &lt;/p&gt;&lt;p&gt;Tendo isto em vista, começaram a surgir algumas compilações de OF nativas para Windows. Como estamos falando de códigos em C++, linguagem a qual o OF é programado, nada impede de se gerar uma versão compilada para Windows. O que é feito, em geral, é gerar uma versão para Windows usando o próprio Linux e o compilador &lt;a href="http://www.mingw.org/"&gt;MinGW&lt;/a&gt;.  Isto elimina o problema de ter que emular usando o  Cygwin e com certeza melhora a eficiência computacional na execução dos solvers e/ou utilitários do OF. Assim, no lugar de gerar &lt;strong&gt;binários&lt;/strong&gt; do tipo Linux são gerados os &lt;strong&gt;executáveis&lt;/strong&gt; Windows e em vez das bibliotecas dinâmicas &lt;strong&gt;.so&lt;/strong&gt; são geradas as &lt;strong&gt;.dll&lt;/strong&gt;.&lt;/p&gt;&lt;p&gt;Uma compilação nativa e gratuita (livre) de OF para Windows pode ser encontrada neste &lt;a href="http://sourceforge.net/projects/openfoam-mswin/"&gt;link&lt;/a&gt;. A instalação pode ser resumida em alguns passos (Obs.: usei o Windows 7 para o teste):&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Baixar o arquivo executável neste &lt;a href="http://sourceforge.net/projects/openfoam-mswin/files/OpenFoam-1.5-win-install/0.0/OpenFOAM-1.5.00b-wininst.exe/download"&gt;link&lt;/a&gt;;&lt;/li&gt;&lt;li&gt;Baixar o arquivo instalador chamado &lt;strong&gt;OpenFOAM-1.5.00b-wininst.exe&lt;/strong&gt; com aproximadamente 180 Mb;&lt;/li&gt;&lt;li&gt;Depois de baixado, dois clicks e é só seguir dando &lt;em&gt;next&lt;/em&gt;, como todo instalador Windows;&lt;/li&gt;&lt;li&gt;Após uma instalação bem sucedida você deve ter na área de trabalho um link chamado &lt;strong&gt;OpenFOAM Designer&lt;/strong&gt;;&lt;/li&gt;&lt;li&gt;Logo que é iniciado, o caso &lt;span style="font-family:verdana;"&gt;cavity&lt;/span&gt; é aberto e pode-se gerar a malha com o&lt;span style="font-family:verdana;"&gt; blockMesh&lt;/span&gt; e rodar o caso com o solver &lt;span style="font-family:verdana;"&gt;icoFoam&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;O &lt;span style="font-family:verdana;"&gt;paraFoam&lt;/span&gt; não funcionou para mim. Uma opção é proceder como descrito nos items que seguem ou gerar os arquivos &lt;strong&gt;&lt;a href="http://www.vtk.org/"&gt;vtks&lt;/a&gt;&lt;/strong&gt;, com o comando &lt;span style="font-family:verdana;"&gt;foamToVTK, &lt;/span&gt;e abrir estes arquivos &lt;strong&gt;.vtk&lt;/strong&gt; diretamente no &lt;strong&gt;&lt;a href="http://www.paraview.org/"&gt;ParaView&lt;/a&gt;&lt;/strong&gt;;&lt;/li&gt;&lt;li&gt;Se tentar abrir o ParaView no botão existente na interface superior irá dar um erro relacionado à &lt;em&gt;plugins&lt;/em&gt;, mas ignorando esse erro o  ParaView abre, apesar dele não coseguir ler corretamente os arquivos;&lt;/li&gt;&lt;li&gt;Copie os plugins &lt;span style="font-family:verdana;"&gt;libPV3FoamReader_SM.dll&lt;/span&gt; e &lt;span style="font-family:verdana;"&gt;libPV3FoamReader.dll&lt;/span&gt; contidos em: &lt;span style="font-family:verdana;"&gt;OpenFOAM-1.5\bin\plugins\paraview&lt;/span&gt; para um diretório em:&lt;span style="font-family:verdana;"&gt; graphics\Paraview-3.4.0\bin\plugins\&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;Ir até o caso simulado e criar um arquivo vazio chamado &lt;span style="font-family:verdana;"&gt;nomedocaso&lt;/span&gt;&lt;span style="font-family:verdana;"&gt;.OpenFOAM&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;Pedir para abrir novamente o ParaView e também pedir para não mostrar mais a mensagem relacionada a falta de &lt;em&gt;plugins&lt;/em&gt;;&lt;/li&gt;&lt;li&gt;Com o  ParaView aberto ir até o caso simulado e abrir o arquivo vazio &lt;span style="font-family:verdana;"&gt;nomedocaso.OpenFOAM;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Em teoria, fazendo isso, agora você já deve estar vendo seu caso simulado.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;No diretório da instalação existe um arquivo de ajuda para o uso da interface gráfica: OpenFOAM Designer 1.0 - Quick guide.pdf.&lt;/p&gt;&lt;p&gt;Com os poucos testes que fiz posso destacar que o principal ponto positivo é a interface gráfica bem estruturada. O editor de arquivo reconhece as palavras chaves do OF e isto facilita bastante para usuários iniciantes. A simulação do caso cavity também procedeu bem rápido, como era de se esperar para um caso com uma malha tão pequena. &lt;/p&gt;&lt;p&gt;Como ponto negativo posso destacar a falta de muitos &lt;em&gt;solvers&lt;/em&gt; e utilitários padrões no OF original. Por exemplo, você não encontrará o &lt;em&gt;solver&lt;/em&gt; &lt;span style="font-family:verdana;"&gt;twoPhaseEulerFoam&lt;/span&gt; ou o utilitário &lt;span style="font-family:verdana;"&gt;checkMesh&lt;/span&gt; apesar de a interface gráfica dar a opção de se usar estes. O que realmente existe de solvers e utilitários nesta compilacao Windows pode ser vista no diretório de instalação bin&lt;span style="font-family:verdana;"&gt;\&lt;/span&gt;. Pode-se dar uma olhada neste diretório para se ter uma idéia de quais .dll  e .exe  estão disponíveis. Segundo o criador desta compilação, nas próximas versões poderá ser incorporado outros solvers e utilitários.&lt;/p&gt;&lt;p&gt;Bom, como não estava satisfeito com a limitação comentada acima, resolvi ver se conseguia algo melhor. Por sorte encontrei uma compilação para a versão 1.6 a qual pode ser encontrada &lt;a href="http://sourceforge.net/projects/openfoam16wi32/files/OpenFOAM1.6win32.rar/download"&gt;aqui&lt;/a&gt;. Esta versão não apresenta a interface gráfica como na versão anterior, contudo me pareceu ter todos os solvers, utilitários e bibliotecas disponíveis na versão oficial do OF-1.6. Esta versão pode ser usada diretamente usando o &lt;a href="http://en.wikipedia.org/wiki/MS-DOS"&gt;MS-DOS&lt;/a&gt;, de forma similar como é feito no terminal (console) de Linux. Dessa forma, deve-se setar uma variável de ambiente, ou seja, digitar no prompt MS-DOS: &lt;span style="font-family:verdana;"&gt;set WM_PROJECT_DIR=C:\cfd\OpenFOAM&lt;/span&gt; no caso do diretório de instalação ter sido &lt;span style="font-family:verdana;"&gt;C:\cfd\OpenFOAM&lt;/span&gt;.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Ainda não satisfeito pensei, porque não usar a interface da primeira versão apresentada e, ao invés de usar os executavéis e bibliotecas daquela versão, usar os executáveis e biliotecas desta nova versão que está completa. &lt;/p&gt;&lt;p&gt;Assim, depois de descompactar a versão 1.6 copiei as pastas&lt;span style="font-family:verdana;"&gt; bin&lt;/span&gt; e &lt;span style="font-family:verdana;"&gt;etc&lt;/span&gt; e substitui as já existentes na minha instalação anterior da versão 1.5, a qual foi feita em: C:\cfd\OpenFOAM-1.5 que é a instalação feita por&lt;em&gt; default&lt;/em&gt;.&lt;br /&gt;&lt;br /&gt;Abrindo o OpenFOAM Designer já de imediato os novos solvers e dlls estarão disponíveis. Ao tentar usar algum aplicativo obtive mensagem de erro e logo pude concluir que era devido a não ter setado a variável de ambiente. Para setar esta variável de ambiente, clike com o botão direito em algum &lt;em&gt;solver&lt;/em&gt; ou outro aplicativo qualquer e peça para costumizar (&lt;em&gt;Customize&lt;/em&gt;). Isto abrirá uma pequena janela com 3 abas. Na aba &lt;em&gt;Environment-&gt;Use custom environment variables&lt;/em&gt; digite &lt;span style="font-family:verdana;"&gt;WM_PROJECT_DIR=C:\cfd\OpenFOAM-1.5&lt;/span&gt; ou algo similar de acordo com o local em que a instalação foi feita. Fazendo-se isto o aplicativo irá funcionar quando for chamando para executar usando a opção &lt;em&gt;Start custom&lt;/em&gt; (Bazinga!).&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Obs. 1: Para cada aplicativo que se queira usar deve-se fazer o procedimento de setar a variável de ambiente da forma descrita acima.&lt;br /&gt;Obs. 2: Nem todos os casos existentes nos tutoriais da versao 1.5 servirá para a versão 1.6, tem diferenças entre as versões. Isto não é um problema uma vez que se pode baixar os tutoriais da versão do OF-1.6.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Minha recomendação destas versões Windows é somente para usuários que queiram fazer simulações pequenas, desejam usar algum dos &lt;em&gt;solvers&lt;/em&gt; já disponíveis nesta compilação (a versão não vem com os códigos fontes) e que realmente sejam resistentes em usar Linux. Assim, vejo uma aplicação muito boa desta versão para fins acadêmicos, em disciplinas como mecânica de fluidos, transferência de calor e massa, etc, onde os alunos não estão ambientados com linux e o tempo é muito curto para ambientá-los e também o objetivo da disciplina é outro. Contudo, cabe também lembrar que algumas distros Linux estão se tornando cada vez mais amigáveis ao usuário, um exemplo disto é o &lt;a href="http://www.ubuntu-br.org/"&gt;Ubuntu&lt;/a&gt;. Além disso, o Linux é mais eficiente, ou seja, o OS consome menos recursos computacionais, deixando o poder computacional para ser usado no que realmente interessa, a simulação CFD. &lt;/p&gt;&lt;p&gt;Fica aí a dica então. Se alguém usa ou tem mais experiência de uso desta versão é útil deixar um comentário.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-2192243324417541621?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/2192243324417541621/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/03/openfoam-no-windows.html#comment-form" title="6 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/2192243324417541621?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/2192243324417541621?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/03/openfoam-no-windows.html" title="OpenFOAM no Windows" /><author><name>Jovani</name><uri>http://www.blogger.com/profile/16601190182840183680</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://1.bp.blogspot.com/__T5GoMoSCdo/TEJC8UpbDTI/AAAAAAAAAB4/-EoL4gIIpXk/S220/foto.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-FANMldL_GOM/TYYGZp5TNnI/AAAAAAAAADw/a8ECx_JPfW8/s72-c/WinOF.jpg" height="72" width="72" /><thr:total>6</thr:total></entry><entry gd:etag="W/&quot;CUUCQH0_fSp7ImA9Wx9UE00.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-7522191507503839039</id><published>2011-02-10T00:01:00.000-02:00</published><updated>2011-02-10T00:01:01.345-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-10T00:01:01.345-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="curiosidades" /><category scheme="http://www.blogger.com/atom/ns#" term="notas" /><title>Relato de um concurso para professor - Parte 1</title><content type="html">&lt;a style="" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_qN4ZQvAV7GI/S6ZLJ2io5uI/AAAAAAAAAX4/u7xSnlbWKAw/s1600-h/concurso.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 242px;" src="http://4.bp.blogspot.com/_qN4ZQvAV7GI/S6ZLJ2io5uI/AAAAAAAAAX4/u7xSnlbWKAw/s320/concurso.jpg" alt="" id="BLOGGER_PHOTO_ID_5451127031610271458" border="0" /&gt;&lt;/a&gt;Olá pessoal,&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Tem muito, muito, muito tempo que eu não escrevo nada aqui no Notas em CFD. Bem, isso tem um motivo. Como o &lt;a href="http://notasemcfd.blogspot.com/2009/04/parabens-ao-luiz.html"&gt;Mitre comentou aqui&lt;/a&gt;, eu assumi o cargo de professor na &lt;a href="http://www.eq.ufrj.br/"&gt;Escola de Química da UFRJ&lt;/a&gt; em agosto de 2009. Estive bastante ocupado desde então, seja com o preparo de aulas  para diferentes disciplinas (Segurança de Processos, Transferência de Calor, Fenômenos de Transporte, Mecânica dos Fluidos II, Métodos Numéricos Aplicados e Laboratório de Engenharia Química), processos administrativos ou orientação de alunos de graduação e pós. Desta forma, o Notas acabou ficando um pouco de lado nesse período conturbado, mas o Mitre  e os novos autores do Notas mandaram bem nesse meu período de ausência e postou vários assuntos.&lt;br /&gt;&lt;br /&gt;De qualquer forma, acredito que existem alguns leitores que estão fazendo pós-graduação e almejam um cargo de docente em alguma universidade. Portanto, achei interessante comentar aqui no blog como ocorreu o meu concurso, as dificuldades, o acaso da sorte, a banca, etc.&lt;br /&gt;&lt;br /&gt;Fiz o concurso para professor adjunto na área de Fenômenos de Transporte e Operações Unitárias (2 vagas), sendo que o candidato seria avaliado com uma prova escrita, uma defesa de memorial, uma prova didática e a avaliação de currículo. Para as provas, a ementa era quase que engenharia química toda. De fato, a ementa do concurso estava assustadora e, de cara, afastou vários candidatos ao cargo. Veja abaixo a íntegra da dita:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Escoamento incompressível. Análises  Lagrangeana e Euleriana. Fluidos ideais. Equações de Euler e Bernoulli.  Fluidos reais. Equação de Navier-Stokes. Balanço macroscópico de  energia. Escoamento em tubulações e acidentes. Perda de carga.  Bombeamento de fluidos. Curva característica e cavitação.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Teoria da camada limite. Escoamento sobre  placas planas. Equação de Prandtl. Soluções de Blasius e Von Karman.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Turbulência. Média temporal das equações da  continuidade e do movimento para fluidos incompressíveis. Tensões de  Reynolds. Perfis de velocidades próximo a paredes. Modelos para o fluxo  turbulento de momento linear.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Fluidodinâmica em sistemas particulados. Força de arraste e  coeficiente de arraste. Velocidade terminal. Lei de Stokes. Grupos  adimensionais. Efeitos de parede, população e da forma da partícula.  Correlações e problemas típicos. &lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Separação sólido-sólido, sólido-gás e sólido-líquido em  sistemas particulados diluídos. Elutriação, câmaras de poeira, ciclones,  centrífugas e hidrociclones.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Escoamento monofásico em meios porosos. Conservação de massa  e momento linear via teoria de misturas. Força resistiva. Modelos de  Darcy e Forchheimer. Ensaios de permeametria. Perda de carga em meios  porosos. &lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Separação  sólido-líquido em sistemas particulados concentrados. Filtração em  superfície. Filtros prensa e de tambor rotativo. Auxiliares de  filtração. Sedimentação. Teste de proveta. Cálculo da área da seção  transversal e da altura.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Fluidização. Gases &lt;i&gt;versus&lt;/i&gt; líquidos. Queda de pressão &lt;i&gt;versus  &lt;/i&gt;velocidade superficial. Histerese. Velocidade, porosidade e altura  mínimas de fluidização. Conservação de momento linear das fases via  teoria de misturas. Correlações para a fluidização homogênea.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Condução térmica uni e multidimensionais em  regime estacionário e em regime transiente. Balanços de energia em  coordenadas cartesiana, cilíndrica e esférica. Aletas.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Convecção em Escoamentos Internos e Externos.  Camada limite térmica. Problema de Graetz. Convecção natural e  convecção forçada. Ebulição e Condensação.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Trocadores de calor. Métodos de Projeto.  Aplicações.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Radiação.  Propriedades radiantes. Corpos negro e cinza. Lei de Kirchhoff. Fator de  forma. Troca de calor radiante entre superfícies negras e não negras.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Fundamentos da Transferência de Massa.  Mecanismos. Relações de Fluxo- Lei de Fick e relação de Maxwell-Stefan.  Regime Estacionário. Regime Transiente. Coeficiente de Difusão.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Transferência de Massa em Sistemas binários e  multicompostos. Modelos teóricos para a transferência de massa na  interface fluido-fluido. Coeficientes de transferência de massa.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Transferência de movimento e massa  simultâneo.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Transferência  simultânea de calor e de massa.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Processos de Cristalização e Secagem.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Processos de Separação e Operações de  Separação em Estágios. Conceito de Estágio de Equilíbrio. Separação em  1(um) estágio de equilíbrio.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Destilação Binária e Multicomposta. Projeto e Condições de  Operação.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt;&lt;span style="font-family:Calibri,sans-serif;"&gt;Colunas de  Recheio para Absorção, Esgotamento e Destilação.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;Concordam comigo? Isso é quase o currículo de engenharia química toda! Contudo, a área do concurso (Fenômenos de Transporte e Operações Unitárias) é isso tudo mesmo. Mas fico me perguntando se essa ementa gigantesca é válida para um concurso de docente. Usualmente, apenas três ou quatro tópicos são sorteados para serem usados efetivamente no concurso. Portanto, achei a ementa bastante exagerada. Conheço pessoas que não fizeram o concurso justamente pelo tamanho da ementa.&lt;br /&gt;&lt;br /&gt;Mas... As regras estavam postas na mesa e tive que aceitá-las. Eu e mais 5 pessoas nos inscrevemos no concurso em dezembro de 2008. Comecei a estudar para valer no início de fevereiro, sendo que o concurso estava marcado para início de abril. Estudei muito, tópico por tópico, preparando resumos como se fossem aulas (ou esboço de aulas). Sempre deduzindo as equações, etapa por etapa e avaliando todas as hipóteses e simplificações. Note que é isso que se espera ser cobrado em um concurso para professor.&lt;br /&gt;&lt;br /&gt;Faltando uma semana para a data do concurso, eu ainda não tinha começado a estudar os tópicos de destilação binária, multicomposta e colunas de recheio. Tive que correr no estudo destes assuntos e consegui acabar tudo uns dois dias antes do concurso. Mas confesso que não estava muito seguro nestes últimos pontos. Paciência!! A vida não é justa e perfeito, só Deus mesmo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;O concurso&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;A banca de avaliação foi toda composta de professores titulares, sendo 2 da própria Escola de Química e 3 de diferentes universidades do Brasil. Mas todos pesos-pesados na área e a presença deles impunha respeito aos candidatos.&lt;br /&gt;&lt;br /&gt;Para falar a verdade, o número de candidatos se reduziu no dia do concurso. Dos 6 candidatos que se inscreveram, apenas 3 compareceram (sendo eu um deles). Mesmo assim, conforme já comentei, a ementa era gigantesca e isso continuou sendo o maior dos meus problemas. Afinal de contas, uma prova escrita mal realizada significa o fim do concurso.&lt;br /&gt;&lt;br /&gt;A banca dividiu o concurso da seguinte maneira:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Primeiro dia: Sorteio de 4 tópicos da ementa, sendo 3 para prova escrita e 1 para a prova didática. Realização da prova escrita.  Por fim, a leitura da prova em público.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Segundo dia: Divulgação da nota da prova escrita. Defesa do memorial e divulgação do assunto da prova didática (24 horas antes da realização da mesma). Nesse meio tempo, a banca faria a avaliação dos currículos.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Terceiro dia: Realização da prova didática (uma aula de ~50 minutos) e, no fim do dia, divulgação do resultado.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold;"&gt;Primeiro Dia&lt;/span&gt;&lt;br /&gt;No início do concurso, a banca pegou uma folha em branco e começaram a escrever números de 1 a 20 (o número de tópico do concurso). Cortaram a folha com os vários números e colocaram tudo dentro de um saco para realizar o sorteio das questões das provas. Achei  isso legal pois foi bem transparente uma vez que a banca fez tudo na frente dos candidatos.&lt;br /&gt;&lt;br /&gt;A banca pediu que cada um dos candidatos sorteasse um papelzinho. Eu estava tenso pois sabia que, apesar de ter estudado, não dominava todos os assuntos da ementa. Aí eu ficava repetindo "Destilação, não! Destilação, não! Destilação, não" a cada papelzinho sorteado. Acho que essa foi a sorte do ano para mim. Não saiu nenhum tópico de destilação mas os itens 1 (Bernoulli e Navier-Stokes), 4 (Lei de Stokes) e 8 (Fluidização) da ementa. No final, um professor sorteou mais um papelzinho com o tema para a aula didática e logo lacrou-o em um envelope sem ver o número. Só saberíamos do tema depois da defesa do memorial.&lt;br /&gt;&lt;br /&gt;Tivemos uma hora para preparar um resumo (uma folha de almaço) que poderia ser consultado durante a prova. Logo depois, 4 horas de prova! E, em seguida, a leitura da prova em público.&lt;br /&gt;&lt;br /&gt;Neste ponto eu deixo uma observação. Para exemplificar o procedimento de um balanço de massa sobre um volume de controle genérico, eu fiz um desenho sem muitos detalhes escritos. A leitura da prova se aplica apenas à reprodução exata das palavras que foram escritas e não a desenhos. Como eu me baseei no desenho para partir a dedução do balanço, como eu poderia ler  para a banca e ao público um desenho que só tem indicações de vetores, volume e área? Para quem conhece o assunto até dá para entender o propósito da figura, mas isso deve ficar registrado na prova de forma clara.  O ideal seria ter feito uma legenda explicando exatamente a intenção do escopo daquela figura na dedução e dando "nome aos bois", como os vetores velocidade e normal, volume e área do volume de controle.&lt;br /&gt;&lt;br /&gt;Em contrapartida, eu também fiz um desenho na questão de fluidização sobre as regiões do gráfico de queda de pressão em função da velocidade de fluidização. Neste caso, eu dividi a figura em regiões (I, II, III, etc.) e expliquei cada uma em separado no corpo da questão. Desta forma, não tive problema nenhum com a leitura da questão pois o próprio texto referenciava a figura. Ficou mais fácil assim. Este pode parecer um pequeno detalhe, mas que faz a diferença quando estamos sendo avaliados.&lt;br /&gt;&lt;br /&gt;Vocês já devem ter percebido que eu fui aprovado na prova escrita e, portanto, continuei com as outras etapas do concurso. Eu quero continuar a história, mas este post já está longo demais. Portanto, vou dividi-lo em duas partes e na segunda parte eu escrevo sobre a defesa do  memorial e sobre a prova didática.&lt;br /&gt;&lt;br /&gt;Um abraço!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-7522191507503839039?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/7522191507503839039/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/02/relato-de-um-concurso-para-professor.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/7522191507503839039?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/7522191507503839039?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/02/relato-de-um-concurso-para-professor.html" title="Relato de um concurso para professor - Parte 1" /><author><name>Luiz F.</name><uri>http://www.blogger.com/profile/14908549900635467246</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp0.blogger.com/_qN4ZQvAV7GI/R3VwnZZAqGI/AAAAAAAAAEY/40GxjCljVWU/S220/DSC00838.JPG" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_qN4ZQvAV7GI/S6ZLJ2io5uI/AAAAAAAAAX4/u7xSnlbWKAw/s72-c/concurso.jpg" height="72" width="72" /><thr:total>2</thr:total></entry><entry gd:etag="W/&quot;CEMERn87eCp7ImA9Wx9VFUo.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-6977349938527182154</id><published>2011-02-01T13:00:00.001-02:00</published><updated>2011-02-01T13:00:07.100-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-01T13:00:07.100-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="turbulência" /><title>A Turbulência através de imagens</title><content type="html">O fenômeno da turbulência certamente gera algumas das mais belas imagens que a física pode fornecer &amp;nbsp;ao homem. Não permite compreender todas as perspectivas do problema, claro, mas isso não torna a tarefa menos agradável aos olhos.&lt;br /&gt;
&lt;br /&gt;
Gosto de iniciar a uma apresentação visual mostrando as observações de Leonardo Da Vinci.&lt;br /&gt;
&lt;div&gt;Trata-se da primeira visualização registrada do fenômeno da turbulência. Esse desenho abaixo retrata o enchimento de uma piscina por um jato de água produzido por uma seção quadrada.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;a href="http://www.efluids.com/efluids/gallery/gallery_pages/da_vinci_page.jsp" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5445648936668278450" src="http://4.bp.blogspot.com/_aH-8wvb7gYE/S5LU2wmYrrI/AAAAAAAADDM/eZuMY24NWi0/s320/da_vinci.jpg" style="cursor: hand; cursor: pointer; display: block; height: 273px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;Como disse antes, a turbulência é caótica, mas é possível perceber que ela possui estruturas coerentes. Veja :&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;a href="http://www.efluids.com/efluids/gallery/gallery_pages/Green_1.jsp" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5445651094407243506" src="http://2.bp.blogspot.com/_aH-8wvb7gYE/S5LW0WzcZvI/AAAAAAAADDU/GtjkGgUiqt0/s320/jelly_s.jpg" style="cursor: hand; cursor: pointer; display: block; height: 221px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;e também em:&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.efluids.com/efluids/gallery/gallery_pages/Green_2.jspg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5445651464433176242" src="http://4.bp.blogspot.com/_aH-8wvb7gYE/S5LXJ5QgDrI/AAAAAAAADDc/HOlcd5MyeHA/s320/full3_s2.jpg" style="cursor: hand; cursor: pointer; display: block; height: 239px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;A turbulência inicia-se pela desestabilização do escoamento laminar. Note que a esquerda o escoamento está bem organizado enquanto a direita é completamente caótico.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.efluids.com/efluids/gallery/gallery_pages/GJ017/text.jsp" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5445653953651577522" src="http://2.bp.blogspot.com/_aH-8wvb7gYE/S5LZayUakrI/AAAAAAAADDo/Id6sZipmUxg/s320/colored_smoke.jpg" style="cursor: hand; cursor: pointer; display: block; height: 216px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Algumas imagens que são apresentadas nesse texto foram obtidas no site da &lt;a href="http://www.efluids.com/efluids/pages/gallery.htm" target="_blank"&gt;efluids.com&lt;/a&gt; e disponibilizadas aqui apenas com fins educativos (de acordo com a autorização do próprio site). O mesmo site também disponibiliza uma série de vídeos envolvendo &lt;a href="http://media.efluids.com/galleries/turbulence" target="_blank"&gt;turbulência&lt;/a&gt;, além de &lt;a href="http://media.efluids.com/galleries/all" target="_blank"&gt;outras observações fenomenológicas&lt;/a&gt;. Para quem tiver o interesse e tiver paciência de ver cada filme, certamente observará algumas imagens fascinantes.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-6977349938527182154?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/6977349938527182154/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/02/turbulencia-atraves-de-imagens.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/6977349938527182154?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/6977349938527182154?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/02/turbulencia-atraves-de-imagens.html" title="A Turbulência através de imagens" /><author><name>João Felipe Mitre</name><uri>https://profiles.google.com/118295875382548551538</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-Mh3JAJ57NyI/AAAAAAAAAAI/AAAAAAAAD7g/fjv46PsPWcE/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_aH-8wvb7gYE/S5LU2wmYrrI/AAAAAAAADDM/eZuMY24NWi0/s72-c/da_vinci.jpg" height="72" width="72" /><thr:total>2</thr:total></entry><entry gd:etag="W/&quot;CUMBSX8zfSp7ImA9Wx9XGEg.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-1753481151517470352</id><published>2011-01-11T15:09:00.027-02:00</published><updated>2011-01-12T15:30:58.185-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-12T15:30:58.185-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="CUDA" /><category scheme="http://www.blogger.com/atom/ns#" term="computação científica" /><title>GPU dos games à computação científica</title><content type="html">Olá leitor! Meu nome é Fábio Santos, sou aluno de doutorado do Laboratório de &lt;a href="http://www.peq.coppe.ufrj.br/pesquisa/tfd/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Termofluidodinâmica&lt;/span&gt; (&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;LTFD&lt;/span&gt;&lt;/a&gt;&lt;a href="http://www.peq.coppe.ufrj.br/pesquisa/tfd/"&gt;)&lt;/a&gt; do &lt;a href="http://www.peq.coppe.ufrj.br/"&gt;Programa de Engenharia da &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;COPPE&lt;/span&gt;/&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;UFRJ&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Bem, muitos de vocês leitores durante a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;adolescência&lt;/span&gt;   (ou até hoje como eu) passaram horas jogando aquele game com gráficos   sensacionais, que geralmente tinha como requisito mínimo aquela  bendita  placa de vídeo poderosa. Então, sabe essas placas, foram se  desenvolvendo ao  ponto de ganhar um espaço na computação científica.  Mas como toda essa mudança de paradigma ocorreu??&lt;br /&gt;&lt;br /&gt;A princípio os &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;microprocessadores&lt;/span&gt; baseados  em &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;CPU&lt;/span&gt;, tais como da família Intel e &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;AMD&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;Opteton,&lt;/span&gt;   aumentaram a sua performance e reduziram seu custo vertiginosamente  nas  últimas duas décadas. Mas como sabemos,  para algumas aplicações  esses  avanços não foram suficientes, assim surgindo a necessidade de  códigos  paralelos para o uso de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;clusters&lt;/span&gt; de computadores afim de nos  propiciar centenas de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;GFLOPs&lt;/span&gt; ( &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;bilhões&lt;/span&gt; de operações de ponto flutuante por segundo). Contudo, essas &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;CPUs&lt;/span&gt; foram desenvolvidas para  o processamento serial, e portanto, não foram &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;otimizadas&lt;/span&gt; para realizar a tarefa de paralelizar códigos.&lt;br /&gt;&lt;br /&gt;Então onde entram as  placas de vídeo nessa história???&lt;br /&gt;&lt;br /&gt;As  &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;GPU&lt;/span&gt; (&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;Graphics&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;Processing&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_17"&gt;Unit&lt;/span&gt;) são placas aceleradores de imagem  &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_18"&gt;otimizadas&lt;/span&gt; para paralelismo e &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_19"&gt;renderização&lt;/span&gt; de imagens. Devido a essa &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_20"&gt;otimização&lt;/span&gt;, as GPU atingem picos de velocidade que superam qualquer CPU existente. Por exemplo, uma &lt;a href="http://www.nvidia.com/object/product_tesla_C2050_C2070_us.html"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_21"&gt;GPU&lt;/span&gt;   &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_22"&gt;Nvidia&lt;/span&gt; Fermi&lt;/a&gt; pode ser cerca  250 vezes mais veloz que um Intel Core i7 &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_23"&gt;quad&lt;/span&gt; (uma das &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_24"&gt;CPU&lt;/span&gt;   mais rápidas hoje no mercado)  utilizada de forma sequencial.&lt;br /&gt;&lt;br /&gt;Agora  você deve estar se questionando: "o que faz esses dispositivos  serem tão  rápidos?" A resposta é simples. A filosofia do &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_25"&gt;design&lt;/span&gt; das &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_26"&gt;GPU&lt;/span&gt;s são &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_27"&gt;significativamente&lt;/span&gt; diferentes, já que as placas de vídeo devem ser capazes de executar um número &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_28"&gt;massivo&lt;/span&gt; de operações de ponto flutuante  por  &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_29"&gt;frames&lt;/span&gt; de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_30"&gt;vídeo&lt;/span&gt;. Para isto,  esses  &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_31"&gt;hardwares&lt;/span&gt; executam um número muito grande de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_32"&gt;threads&lt;/span&gt; simultanemante, enquanto um outro grande número de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_33"&gt;threads&lt;/span&gt;   aguarda a latência de memória, minimizando assim o controle lógico de   execução de tarefas. Ainda nessa arquitetura, pequenos cache de memória são utilizados para   auxiliar o controle de memória,  evitando que diferentes &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_34"&gt;threads&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_35"&gt;acessem&lt;/span&gt; várias vezes a memória &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_36"&gt;DRAM&lt;/span&gt;. Consequentemente, mais áreas de chips são utilizadas para operações de ponto flutuante.&lt;br /&gt;&lt;br /&gt;Eu tenho uma GPU. Como rodar meus códigos??&lt;br /&gt;&lt;br /&gt;Existe  uma   linguagem de programação própria. Na verdade, não é uma linguagem, mas sim  uma API, um conjunto de padrões de   linguagem de programação,  denominada de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_39"&gt;CUDA&lt;/span&gt;. Primeiramente essa API foi baseada na linguagem C. Entretanto, hoje a mesma tem suas variações em Fortran e &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_40"&gt;Python&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;E onde &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_41"&gt;CFD&lt;/span&gt; e &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_42"&gt;FEA&lt;/span&gt; entram nessa história???&lt;br /&gt;&lt;br /&gt; A &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_43"&gt;Ansys&lt;/span&gt;_&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_44"&gt;inc&lt;/span&gt;  inicia seu interesse fazendo acordos de colaboração com a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_45"&gt;Nvidia para o&lt;/span&gt; desenvolvimento de  aceleradores em &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_46"&gt;CUDA&lt;/span&gt;, começando pelo &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_47"&gt;Mechanical&lt;/span&gt; ( &lt;a href="http://investors.ansys.com/releasedetail.cfm?releaseid=509436"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_48"&gt;ANSYS&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_49"&gt;Unveils&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_50"&gt;GPU&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_51"&gt;Computing&lt;/span&gt; for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_52"&gt;Accelerated&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_53"&gt;Engineering&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_54"&gt;Simulations&lt;/span&gt; &lt;/a&gt;). Atualmente, em &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_55"&gt;CFD&lt;/span&gt; já existe um &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_56"&gt;pluggin&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_57"&gt;OpenFOAM&lt;/span&gt;-&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_58"&gt;CUDA&lt;/span&gt; que acopla o &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_59"&gt;OpenFOAM&lt;/span&gt; com um solver de sistemas lineares desenvolvido em &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_60"&gt;CUDA&lt;/span&gt;, denominado &lt;a href="http://speedit.vratis.com/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_61"&gt;SpeedIT&lt;/span&gt;&lt;/a&gt;. Mas isso ficará para o próximo post! Enfim, se você joga ou jogava games para &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_63"&gt;workstation&lt;/span&gt; (rs) é bem provável que vá gostar de programar na sua placa de vídeo usando algumas dessas APIs ( &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_65"&gt;PyCuda&lt;/span&gt;, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_66"&gt;Cuda&lt;/span&gt; ou &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_67"&gt;Fortran Cuda&lt;/span&gt;)...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-1753481151517470352?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/1753481151517470352/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2011/01/gpu-dos-games-computacao-cientifica.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/1753481151517470352?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/1753481151517470352?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2011/01/gpu-dos-games-computacao-cientifica.html" title="GPU dos games à computação científica" /><author><name>Fábio Santos</name><uri>http://www.blogger.com/profile/04844036268671157662</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="28" height="32" src="http://4.bp.blogspot.com/-6lnD6e4Yyg8/Tj8G5tHcbzI/AAAAAAAAAAQ/8546PXlJ0XI/s220/rosto.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DkMFQHY5fCp7ImA9WhZUE0U.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-5834558849834454450</id><published>2010-12-06T01:18:00.004-02:00</published><updated>2011-06-06T15:20:11.824-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-06T15:20:11.824-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><title>Instalação do OpenFOAM-1.6-ext</title><content type="html">&lt;p&gt;Como já havia comentado em um post passado o &lt;a href="http://www.extend-project.de/"&gt;OpenFOAM-1.6-ext&lt;/a&gt; estava pra sair. Bem, agora ele saiu (já fazem alguns dias).&lt;/p&gt;&lt;p&gt;Esta nova versão é fruto do esforço conjunto de vários desenvolvedores no sentido de fazer com que partes específicas do software fiquem sob responsabilidades de desenvolvedores especializados naquela área. Em sua área, cada desenvolvedor fica responsável pela correção de &lt;em&gt;bugs&lt;/em&gt;, novas implementações, testes de códigos, criação, revisão e atualização de tutorias, etc.  &lt;/p&gt;&lt;p&gt;O repositório passou a ser o &lt;a href="http://git-scm.com/"&gt;Git&lt;/a&gt; e não mais &lt;a href="http://svn.apache.org/"&gt;SVN&lt;/a&gt;. O git apresenta uma série de vantagens em relação ao svn, para citar uma, um melhor controle de versões. Além disso, uma ênfase especial foi dada aos &lt;em&gt;softwares&lt;/em&gt; auxiliares, ou seja, aqueles que se encontravam no diretório &lt;span style="font-family:verdana;"&gt;ThirdParty&lt;/span&gt; que agora está interno ao diretório OpenFOAM-1.6-ext. Essa nova versão realmente é um marco e vocês poderão ver por si próprios as melhorias conseguidas já na primeira versão &lt;em&gt;extended&lt;/em&gt; lançada.  &lt;/p&gt;&lt;p&gt;Vou deixar uma nota rápida falando da instalação do OpenFOAM-1.6-ext no &lt;a href="http://www.ubuntu.com/"&gt;&lt;span style="font-family:verdana;"&gt;Ubuntu&lt;/span&gt;&lt;/a&gt;, assumindo que a instalação seja feita em &lt;span style="font-family:verdana;"&gt;/home/usuarioX/OpenFOAM&lt;/span&gt;. Os tópicos abaixo resumem a "receita de bolo" para proceder a instalação:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;br /&gt;Entrar no diretório do OF: &lt;span style="font-family:verdana;"&gt;cd OpenFOAM&lt;/span&gt;&lt;br /&gt;Clonar o repositório git (obs.: precisa ter o git instalado):&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;git clone git://openfoam-extend.git.sourceforge.net/gitroot/openfoam-extend/OpenFOAM-1.6-ext&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Carregar as variáveis de ambiente do &lt;span style="font-family:verdana;"&gt;etc/bashrc&lt;/span&gt; do OF (veja o arquivo &lt;span style="font-family:verdana;"&gt;README&lt;/span&gt; no caso de dúvidas):&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;. $HOME/OpenFOAM/OpenFOAM-1.6-ext/etc/bashrc&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Instalar o programa &lt;a href="http://en.wikipedia.org/wiki/RPM_Package_Manager"&gt;rpm&lt;/a&gt;, caso o sistema não seja baseado neste tipo de pacotes (sistemas baseados em Debian, ou o Ubuntu como no meu caso):&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;sudo apt-get install rpm&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Certificar-se que os programas: &lt;strong&gt;bison&lt;/strong&gt;, &lt;strong&gt;binutils-dev&lt;/strong&gt;, &lt;strong&gt;flex&lt;/strong&gt;, &lt;strong&gt;libstdc++5&lt;/strong&gt; e &lt;strong&gt;libxt-dev&lt;/strong&gt; estejam instalados, caso contrário os mesmos devem ser instalados.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Para que os programas da ThirdParty sejam baixados e compilados deve-se fazer uma pequena alteração no arquivo Allwmake: descomente a linha ( cd $WM_THIRD_PARTY_DIR &amp;amp;&amp;amp; ./AllMake ) deste arquivo.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:verdana;"&gt;Caso se deseje usar o mpi do sistema pode-se renomear o arquivo prefs.sh-EXAMPLE para prefs.sh (este arquivo encontra-se no diretório OpenFOAM-1.6-ext/etc) e descomentar as linhas que exportam as seguintes variáveis de ambiente: WM_MPLIB, OPENMPI_DIR e OPENMPI_BIN_DIR. Para a variável  &lt;/span&gt;&lt;span style="font-family:verdana;"&gt;OPENMPI_DIR deve-se fornecer o diretório onde o open mpi está instalado.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Com isso feito basta executar o script&lt;span style="font-family:verdana;"&gt; Allwmake&lt;/span&gt; no diretório principal da versão. Percebe-se que o OF-1.6-ext mudou e agora a &lt;span style="font-family:verdana;"&gt;ThirdyParty&lt;/span&gt; está neste mesmo diretório. O processo de compilação e instalação também foi modificado para dar facilidade ao usuário. Esta mudança deve-se principalmente aos esforços do grupo desenvolvedor e, nessa parte, em especial a Martin Beaudoin.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Algumas observações:&lt;/p&gt;&lt;p&gt;1 - Pode-se encontrar problemas na compilação do &lt;span style="font-family:verdana;"&gt;ParaView&lt;/span&gt; se a variável de ambiente &lt;span style="font-family:verdana;"&gt;QT_DIR&lt;/span&gt; não estiver corretamente setada, para setá-la: &lt;span style="font-family:verdana;"&gt;export QT_DIR=/xx/xx/qt4&lt;/span&gt;  e  &lt;span style="font-family:verdana;"&gt;export QT_BIN_DIR=/xx/xx/qt4/bin ou pode-se usar o arquivo prefs.sh para esta tarefa, basta descomentar as linhas que exportam essas duas variáveis dando o local de instalação do Qt para &lt;/span&gt;&lt;span style="font-family:verdana;"&gt;QT_DIR. No caso do paraview pode-se também optar pelo que é fornecido pelo próprio repositório do Ubuntu que é facilmente instalado via terminal ou usando o synaptic.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;2 - No Ubuntu é normal não se ter o &lt;span style="font-family:verdana;"&gt;gmake&lt;/span&gt;, mas este é usado na compilação do &lt;span style="font-family:verdana;"&gt;ParMGridGen-1.0&lt;/span&gt;. Para criar o &lt;span style="font-family:verdana;"&gt;gmake&lt;/span&gt; no Ubuntu: &lt;span style="font-family:verdana;"&gt;sudo ln -s /usr/bin/make /usr/bin/gmake &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;3 - Problemas com o &lt;span style="font-family:verdana;"&gt;ParMetis-3.1.1&lt;/span&gt; podem ocorrer. Se isso acontecer deve-se ir até o &lt;em&gt;source&lt;/em&gt; desse programa, abrir o &lt;span style="font-family:verdana;"&gt;Makefile&lt;/span&gt; e remover as linhas onde se faz o &lt;span style="font-family:verdana;"&gt;make&lt;/span&gt; para o diretório &lt;span style="font-family:verdana;"&gt;Programs&lt;/span&gt;, por exemplo: &lt;span style="font-family:verdana;"&gt;(cd Programs ; make )&lt;/span&gt; , etc. Uma vez feito isso deve-se gerar novamente o arquivo compactado, pois este será chamado e usado na compilação.&lt;br /&gt;&lt;br /&gt;4 - Pode-se também querer baixar e compilar o  &lt;span style="font-family:verdana;"&gt;QT, neste caso basta descomentar a linha export QT_THIRD_PARTY=1 e dar o caminho correto do diretório de instalação para a variável &lt;/span&gt;&lt;span style="font-family:verdana;"&gt;QT_DIR&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Apesar de não ter feito a instalação em distros baseadas em &lt;span style="font-family:verdana;"&gt;rpm&lt;/span&gt;, acredito que a instalação do OF nesses sistemas seja mais fácil e sem problemas. No caso de distros baseadas em &lt;span style="font-family:verdana;"&gt;Debian&lt;/span&gt; também acredito que as dicas acima sejam suficientes, pois foi isso que tive que fazer no &lt;span style="font-family:verdana;"&gt;Ubuntu&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Espero que isso ajude na instalação desta nova versão.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-5834558849834454450?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/5834558849834454450/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2010/12/instalacao-do-openfoam-16-ext.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/5834558849834454450?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/5834558849834454450?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2010/12/instalacao-do-openfoam-16-ext.html" title="Instalação do OpenFOAM-1.6-ext" /><author><name>Jovani</name><uri>http://www.blogger.com/profile/16601190182840183680</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://1.bp.blogspot.com/__T5GoMoSCdo/TEJC8UpbDTI/AAAAAAAAAB4/-EoL4gIIpXk/S220/foto.jpg" /></author><thr:total>1</thr:total></entry><entry gd:etag="W/&quot;AkYDQ3s4eyp7ImA9Wx9SEUk.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-5625629060096337866</id><published>2010-11-30T15:57:00.018-02:00</published><updated>2010-11-30T18:16:12.533-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-11-30T18:16:12.533-02:00</app:edited><title>Dr. J. F. Mitre - Parabéns!</title><content type="html">Olá leitor! Meu nome é Livia Jatobá e este é o meu primeiro &lt;span style="font-style: italic;"&gt;post&lt;/span&gt; aqui no &lt;a href="http://notasemcfd.blogspot.com/"&gt;Notas em CFD&lt;/a&gt;. Sou aluna do &lt;a href="http://www.peq.coppe.ufrj.br/pesquisa/tfd/"&gt;Laboratório de Termofluidodinâmica (LTFD)&lt;/a&gt; do &lt;a href="http://www.peq.coppe.ufrj.br/"&gt;Programa de Engenharia da COPPE&lt;/a&gt; desde 2008.&lt;br /&gt;&lt;br /&gt;Estou aqui, em nome de todos do LTFD, para falar de um colega de blog e também de Laboratório, o J. F. Mitre.&lt;br /&gt;&lt;br /&gt;O João é um grande contribuidor para o desenvolvimento de pesquisa da área! Ele esta sempre disposto a ajudar e é ainda um pesquisador bastante versátil. Tira dúvidas desde as restrições dos modelos de escoamento multifásico à aplicações mais complicadas que você consegue encontrar no Linux! Mesmo quem não tem o privilégio de trabalhar diretamente com ele é capaz de perceber isto. Basta já ter lido um de seus &lt;span style="font-style: italic;"&gt;posts&lt;/span&gt; aqui no Notas em CFD ou mesmo em seu próprio &lt;a href="http://jfmitre.com/"&gt;blog&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Hoje, João Felipe Mitre, concluiu o seu doutorado! Sim, &lt;span style="font-weight: bold;"&gt;Dr. J. F. Mitre&lt;/span&gt;, parabéns! Todos nós do LTFD gostaríamos de parabenizá-lo por esta grande conquista! E a comunidade científica agradece pela publicação de sua tese, sob título: "Modelos de quebra e coalescência de gotas para o escoamento de emulsões". Um leitura "rápida" de apenas 400 páginas!&lt;br /&gt;&lt;br /&gt;Já estamos esperando pelas suas novas contribuições!&lt;br /&gt;&lt;br /&gt;Um grande abraço.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-5625629060096337866?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/5625629060096337866/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2010/11/drjfmitre-parabens.html#comment-form" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/5625629060096337866?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/5625629060096337866?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2010/11/drjfmitre-parabens.html" title="Dr. J. F. Mitre - Parabéns!" /><author><name>Livia Jatobá</name><uri>http://www.blogger.com/profile/09562213158975927023</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="28" height="32" src="http://3.bp.blogspot.com/-vT6OYXAclYc/Tx2FzuwFiOI/AAAAAAAAAd0/ravJE49R_xI/s220/100_0378.JPG" /></author><thr:total>4</thr:total></entry><entry gd:etag="W/&quot;Dk8NRX44eSp7ImA9Wx5aEUs.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-599349311714239910</id><published>2010-11-07T19:13:00.007-02:00</published><updated>2010-11-07T19:21:34.031-02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-11-07T19:21:34.031-02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><title>O Projeto OpenFOAM® - Extend</title><content type="html">&lt;p&gt;A falta de informações mais detalhadas explicando a enorme quantidade de códigos que compõe o software &lt;strong&gt;OpenFOAM&lt;/strong&gt; sempre foi uma das primeiras senão a principal reclamação de quem está começando a usar este software - isso quando não é pelo fato de ter que usar &lt;strong&gt;Linux&lt;/strong&gt; :). &lt;/p&gt;&lt;p&gt;Desse modo, a escassa literatura sobre o que está implementado no OF sempre foi um problema, pois convenhamos que o &lt;em&gt;User&lt;/em&gt; e o &lt;em&gt;Programer's Guide&lt;/em&gt; são fraquinhos e não dão conta do recado para ajudar suficientemente quem está começando a desenvolver seu primero &lt;em&gt;solver&lt;/em&gt;. Assim, até hoje ainda, uma das principais referências sobre o OF acaba sendo o seu fórum de discusão no &lt;a href="http://www.cfd-online.com/"&gt;cfdonline&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Só para deixar claro, o &lt;a href="http://www.openfoam.com/"&gt;OpenFOAM®&lt;/a&gt; é uma marca registrada pela &lt;a href="http://www.openfoam.com/about/"&gt;OpenCFD Ltd&lt;/a&gt; que mantêm o mesmo como um código livre e aberto (ou sob &lt;em&gt;GNU General Public Licence&lt;/em&gt;). A &lt;strong&gt;OpenCFD&lt;/strong&gt; atua dando suporte e oferecendo treinamento além de trabalhar no desenvolvimento do código, seja para fins privados ou para aquilo que existe de novo entre diferentes versões. Dessa forma, fica claro que, para a OpenCFD não é nada vantajoso uma distribuição detalhada de informações sobre o código do OF,  senão quem iria pedir suporte ou treinamento?? &lt;/p&gt;&lt;p&gt;Bom, sem brincadeira isso parece verdade como pode ser visto num post no &lt;em&gt;cfdonline&lt;/em&gt; onde o Holger Marschall, o qual pretendia criar o então chamado &lt;em&gt;FOAM Documentation Project&lt;/em&gt; (um lugar para reunir as mais variadas e detalhadas informações sobre o OF),  expõe seu desapontamento pelas atitudes da OpenCFD para com ele, vejam em detalhes neste &lt;a href="http://www.cfd-online.com/Forums/openfoam/69068-foam-documentation-project-shut-down.html"&gt;link&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Em contrapartida a isso surgiu o &lt;a href="http://www.extend-project.de/"&gt;&lt;strong&gt;OpenFOAM®-Extend Project&lt;/strong&gt;&lt;/a&gt;. Esse tem como objetivo ser um espaço para os usuários do OpenFOAM-ext, ou seja, os antigos usuários do &lt;a href="http://openfoam-extend.svn.sourceforge.net/viewvc/openfoam-extend/trunk/Core/OpenFOAM-1.5-dev/"&gt;OpenFOAM-dev&lt;/a&gt; fornecido pelo Prof. Hrvoje Jasak que é quem trabalha no &lt;em&gt;core&lt;/em&gt; do OF e que é o principal desenvolvedor e mantenedor desta versão. Assim, a idéia é que este espaço seja um ambiente de troca de informações entre os usuários e desenvolvedores de códigos no OF. Além disso, pode-se criar grupos de discussão sobre temas específicos, trabalhar em projetos de desenvolvimento em conjunto, anunciar &lt;em&gt;bugs&lt;/em&gt;, depositar seu código para futuro incorporamento ao código principal, enfim, deixo-lhes a vontade para navegar pelo site do projeto e também criarem uma conta se desejarem.&lt;/p&gt;&lt;p&gt;Bom, como vi que poucas pessoas estavam sabendo sobre este tema (o projeto OpenFOAM®-Extend) resolvi criar esta rápida nota sobre isso e acredito que o recado foi dado. Só uma última notícia quentíssima para os usuários de OF-dev, a nova versão está saíndo do forno, ou seja, &lt;strong&gt;OpenFOAM-1.6-ext&lt;/strong&gt; está chegando muito em breve.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-599349311714239910?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/599349311714239910/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2010/11/o-projeto-openfoam-extend.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/599349311714239910?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/599349311714239910?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2010/11/o-projeto-openfoam-extend.html" title="O Projeto OpenFOAM® - Extend" /><author><name>Jovani</name><uri>http://www.blogger.com/profile/16601190182840183680</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://1.bp.blogspot.com/__T5GoMoSCdo/TEJC8UpbDTI/AAAAAAAAAB4/-EoL4gIIpXk/S220/foto.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CkcCRXcyfip7ImA9Wx5TFUQ.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-1945162614279647668</id><published>2010-07-31T00:51:00.014-03:00</published><updated>2010-07-31T12:27:44.996-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-31T12:27:44.996-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><title>Usando pontos de monitoramento no OpenFOAM</title><content type="html">&lt;p&gt;O uso de &lt;strong&gt;pontos de monitoramento&lt;/strong&gt; (PM) é extremamente útil em simulações CFD. Um ponto de monitoramento nada mais é do que um "ponto", com coordenadas (x,y,z), inserido pelo usuário em um local estratégico da geometria para fins de ter o valor de uma variável salva para cada passo de tempo. Em outras palavras, como em simulações CFD não é possível salvar a solução para cada célula da malha e para cada passo de tempo (haveria a necessidade de muito espaço em disco), o uso de pontos de monitoramento é uma  opção para se ter o valor de alguma variável (salva em cada passo de tempo) em alguns locais estratégicos da geometria.&lt;/p&gt;&lt;p&gt;Vou descrever aqui como fazer isso no OpenFOAM. A versão de OpenFOAM que estou tomando como base é a &lt;strong&gt;OpenFOAM-1.5-dev&lt;/strong&gt;. Acredito que  funcione da mesma maneira em outras versões, mas quero deixar claro que não testei.&lt;/p&gt;&lt;p&gt;Primeiramente vamos até o arquivo &lt;span style="font-family:courier new;"&gt;controlDict&lt;/span&gt;, localizado dentro do diretório &lt;span style="font-family:courier new;"&gt;system&lt;/span&gt;, pois vamos ter que acrescentar algumas linhas de informação no final desse arquivo. O que deverá ser acrescentado está a seguir:&lt;/p&gt;&lt;p&gt;&lt;p&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;// ****************************************************************************** //&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;functions&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;       // O nome que o usuário que dar ao ponto de monitoramento&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;   pontoMonit1&lt;/span&gt; &lt;span style="color:#666666;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   {&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;// Especifica que a utilidade probes será a usada&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;type probes;&lt;/span&gt;&lt;/span&gt; &lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;// Essa biblioteca deve ser carregada&lt;/span&gt;&lt;/span&gt; &lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;functionObjectLibs ("libsampling.so");&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;// Localizações dos pontos de monitoramento. Modificável em tempo de execução&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;probeLocations&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;(1 0 0)&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;// coordenadas do primeiro ponto de monitoramento&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;(1.5 0 0)&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;// coordenadas do segundo ponto de monitoramento&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;// Campos (variáveis) que serão monitoradas.&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;Modificável em tempo de execução&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;fields&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;tau&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;  &lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;// gera dados para o campo de tensão "tau" (do tipo &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;symmTensorField&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;U&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;       &lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt; //  gera dados para o campo velocidade "U"  (do tipo &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;vectorField&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;) &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;"&gt;p&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt; //    gera dados para o campo  de pressão "p" (do tipo &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;scalarField&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;) &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;strong&gt;?&lt;/strong&gt; &lt;/span&gt;&lt;span style="font-size:85%;"&gt;       &lt;/span&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;// .... outro campo desejado&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;}&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:100%;"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#666666;"&gt;&lt;span style="font-size:85%;"&gt;// ****************************************************************************** //&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Feito isso, logo que começamos a simulação, um diretório com o nome dado ao ponto de monitoramento (no caso acima &lt;span style="font-family:courier new;"&gt;pontoMonit1&lt;/span&gt;)  é criado dentro do diretório do caso. Dentro deste diretório tem um novo diretório que especifica o tempo inicial daquele ponto de monitoramento, se for começado no tempo 0 (zero), então este diretório terá o nome "&lt;span style="font-family:courier new;"&gt;0&lt;/span&gt;".  Dentro deste último diretório (Ufahh!)  estarão os arquivos contendo os dados dos pontos de monitoramento. O funcionamento dos arquivos é o seguinte: cada novo campo tem seu próprio arquivo com seu nome e os diversos pontos de monitoramento ficam dentro de um mesmo arquivo. &lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Os arquivos gerados estão no padrão OpenFOAM de representação tensorial, veja o exemplo ilustrativo abaixo para o caso do vetor velocidade:&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;# Tempo      ponto de monit. 1           &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;ponto de monit. 2&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;1.19998e-05 (1.44637e-05 -1.50596e-11 0) (1.44637e-05 -1.91593e-11 0)&lt;br /&gt;2.63988e-05 (3.17809e-05 -1.25082e-11 0) (3.17809e-05 -1.14036e-12 0)&lt;br /&gt;4.36766e-05 (5.2514e-05 9.46453e-12 0) (5.2514e-05 5.30116e-12 0)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Estes dados não estão prontos para o uso direto em softwares como &lt;a href="http://plasma-gate.weizmann.ac.il/Grace/"&gt;xmgrace&lt;/a&gt; ou &lt;a href="http://www.gnuplot.info/"&gt;gnuplot&lt;/a&gt;. Para facilitar o tratamento desses dados um &lt;strong&gt;shell script&lt;/strong&gt; foi criado (o &lt;a href="http://www.blogger.com/profile/01576927608384839758"&gt;Mitre&lt;/a&gt; começou  e eu incrementei mais algumas coisas posteriormente).  Este scrip opera sobre os arquivos de probe do OpenFOAM para que seja possível o uso desses dados em editores de gráficos. Além de gerar os arquivos de dados para programas de geração de gráficos, o script permite também, se o usuário pedir,  a criação automática de gráficos usando o xmgrace (estando o software corretamente instalado em sua máquina).  O shell script está disponível para download no link abaixo:&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://dl.dropbox.com/u/4495083/foamProbe"&gt;foamProbe&lt;/a&gt;&lt;/p&gt;&lt;p&gt;O uso do script segue a notação:&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:courier new;"&gt;$foamProb&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;e&lt;/span&gt; {diretório dos PM} {número de PM} {nome do campo} {opcional: 0 - abre no xmgrace, 1 - salva em arquivo eps}&lt;/p&gt;&lt;p&gt;Note que este arquivo deve ter propriedades de &lt;strong&gt;executável&lt;/strong&gt; e caso voce não coloque ele em um diretório visível ao seu sistema, como o diretorio "bin", por exemplo, você poderá ter que usar: &lt;span style="font-family:courier new;"&gt;$./foamProb&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;e&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Para o caso mostrado aqui tem-se (estando dentro do diretório do caso):&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Para criar arquivos para 2 pontos de monitoramento para o campo U: &lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$foamProbe &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;pontoMonit1&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;/0/ 2 U&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ou para abrir no  xmgrace:&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$foamProbe &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;pontoMonit1&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;/0/ 2 U 0&lt;/span&gt; &lt;br /&gt;&lt;/li&gt;&lt;li&gt;ou para criar automaticamente .eps: &lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$foamProbe &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;pontoMonit1&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;/0/ 2 U 1&lt;/span&gt; &lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Com isso o diretório &lt;span style="font-family:courier new;"&gt;probeU&lt;/span&gt; será criado dentro de &lt;span style="font-family:courier new;"&gt;pontoMonit1&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;/0/&lt;/span&gt; contendo os arquivos de dados prontos para serem usados com os programas gráficos preferidos.&lt;/p&gt;&lt;p&gt;Bem, espero que, este post + o script, ajude aos usuários do OpenFOAM na hora de fazerem o pós-processamento.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-1945162614279647668?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/1945162614279647668/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2010/07/usando-pontos-de-monitoramento-no.html#comment-form" title="7 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/1945162614279647668?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/1945162614279647668?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2010/07/usando-pontos-de-monitoramento-no.html" title="Usando pontos de monitoramento no OpenFOAM" /><author><name>Jovani</name><uri>http://www.blogger.com/profile/16601190182840183680</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://1.bp.blogspot.com/__T5GoMoSCdo/TEJC8UpbDTI/AAAAAAAAAB4/-EoL4gIIpXk/S220/foto.jpg" /></author><thr:total>7</thr:total></entry><entry gd:etag="W/&quot;CU8NR30_eip7ImA9WxFaFE4.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-4590992694427989630</id><published>2010-07-17T23:06:00.044-03:00</published><updated>2010-07-18T03:18:16.342-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-18T03:18:16.342-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="OpenFOAM" /><category scheme="http://www.blogger.com/atom/ns#" term="viscoelasticFluidFoam" /><category scheme="http://www.blogger.com/atom/ns#" term="Fluidos viscoelásticos" /><title>Fluidos Visco-Elásticos</title><content type="html">&lt;p align="justify"&gt;Como este é meu primeiro post aqui no blog, vou começar com uma breve introdução sobre minha pessoa, falar do que fiz em minha graduação e mestrado, para depois apresentar-lhes o ponto principal do post que é comentar sobre fluidos viscoelásticos e o solver &lt;span style="font-family:courier new;"&gt;viscoelasticFluidFoam&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Meu nome é Jovani, sou formado em Engenharia de Bioprocessos e Biotecnologia pela Universidade Estadual do Rio Grande do Sul (&lt;B&gt;UERGS&lt;/B&gt;), mestre em Engenharia Química pela Universidade Federal do Rio Grande do Sul (&lt;B&gt;UFRGS&lt;/B&gt;) e atualmente faço doutorado em Engenharia Química na Universidade Federal do Rio de Janeiro (&lt;B&gt;COPPE/UFRJ&lt;/B&gt;).&lt;br /&gt;&lt;br /&gt;Comecei a trabalhar na área de fluidodinâmica computacional (CFD) durante minha graduação, numa iniciação científica. Na ocasião, desenvolvi um código CFD para simular dispersão de poluentes em solos. A experiência foi muito interessente, pois tive que desenvolver um código CFD do zero, ou seja, criar geometria, malha, aplicar discretização usando volumes finitos (FVM), implementar meus próprios esquemas de interpolação, resolver o sistema algébrico-diferencial de equações resultantes da discretização espacial, além de programar muito.&lt;br /&gt;&lt;br /&gt;Lembro-me de ter implementado diferenças centrais (CD) e ainda enquanto estava resolvendo somente difusão tudo estava perfeito, mas bastou colocar o termo advectivo para surgirem as famosas oscilações na solução e obrigar a buscar outro esquema de interpolação. O que está implementado atualmente é o esquema WUDS. Este esquema usa um medidor difusão/advecção para poder dosar entre CD/upwind. O código foi desenvolvido inicialmente em Linux para execução em console. Posteriormente, trabalhei no desenvolvimento de uma interface gráfica em Linux, usando Qt, e também numa versão Windows para o software. Agora já faz algum tempo que o código está parado.&lt;br /&gt;&lt;br /&gt;A versão Windows do software está disponível para download neste &lt;a href="http://www.enq.ufrgs.br/enqlib/transport/PoDiS_1_1_setup.exe"&gt;link&lt;/a&gt; e tem implementado a solução de difusão, advecção, sorção e geração/degradação (para processos de (bio)remediação) em todo o domínio ou localizada. Esta versão foi compilada em Windows XP, mas roda tranquilamente no Vista e no 7, assim como em máquinas virtuais no Linux (e no emulador Wine ele executa sem problemas também). Existe até um &lt;a href="http://www.scielo.br/pdf/esa/v12n4/a07v12n4.pdf"&gt;paper&lt;/a&gt; publicado na revista Eng. sanit. ambient. com algumas informações sobre a modelagem usada. O software pode ser usado para simular problemas simples (devido a limitação de geometria que pode ser usada) de transferência de calor e massa.&lt;br /&gt;&lt;br /&gt;Durante o mestrado continuei trabalhando com CFD e, diga-se de passagem, em uma área um pouco mais complexa. O objeto de estudo foi a área de fluidos viscoelásticos, a qual vou-lhes introduzir nos parágrafos posteriores.&lt;br /&gt;&lt;br /&gt;Quando se fala em Mecânica dos Fluidos, a maioria pensa automaticamente em escoamentos de fluidos de características newtonianas, de que os exemplos mais comuns são o ar e a água. Apesar da grande aplicação dos fluidos newtonianos, a maioria dos fluidos sintéticos industriais (indústria de polímeros principalmente a de terceira geração a qual promove a transformação dos materiais poliméricos em produtos finais), inúmeros fluidos de relevância biológica, entre outros, apresentam características claramente não newtonianas:&lt;br /&gt;&lt;UL&gt;&lt;LI&gt;&lt;p align="justify"&gt;A geologia tem demonstrado que o movimento do gelo glacial, o escoamento de lava dos vulcões e a sua posterior solidificação são fenômenos só corretamente descritos, quando se assumem modelos de comportamento reológico não newtoniano.&lt;LI&gt;&lt;p align="justify"&gt;O sangue é um fluido de constituição físico-química complexa, formado por moléculas de grandes dimensões e elevado peso molecular em solução num fluido de baixo peso molecular e estruturalmente simples. Estes são os ingredientes para um fluido com características viscoelásticas. A saliva e o fluido sinovial, que lubrifica as juntas ósseas, apresentam um elevado grau de elasticidade extensional.&lt;LI&gt;&lt;p align="justify"&gt;Fluidos diversos como as tintas decorativas, as tintas de impressão, as colas, os produtos de cosmética e beleza, os medicamentos, os produtos alimentares no estado líquido (ketchup, iogurtes, molhos), inúmeros produtos alimentares que, apresentando-se aos consumidores no estado sólido ou em pó, passaram em processo por uma fase líquida (sorvetes, produtos de confeitaria, massa de panificação), os sabões e detergentes, alguns óleos com aditivos de massa molecular elevada ou contendo partículas no estado sólido, fluidos lubrificantes utilizados na perfuração de poços de petróleo e gás natural, petróleo bruto, plásticos no estado líquido (polímero fundido), alguns fluidos térmicos, lamas de estações de tratamento de águas residuais, todo o tipo de lamas provenientes da indústria extractiva, fluidos abrasivos, etc. De fato, a lista de fluidos não newtonianos é muito extensa do que uma lista de fluidos com características newtonianas.&lt;/UL&gt;&lt;p align="justify"&gt;Mas o que é realmente um fluido com reologia viscoelástica?? Pode ser definido simplificadamente como sendo um fluido que se comporta como viscoso e elástico ao mesmo tempo. Um material elástico ideal, sob uma tensão, responde com deformação reversível. Ao cessar a tensão o corpo retorna à sua forma e volume original. Já um material viscoso, quando sob uma tensão de cisalhamento, responde de forma irreversível as deformações sofridas. O fluido viscoso dissipa energia. Fluido viscoelástico faz um pouco de cada coisa, ou seja, dissipa um pouco e armazena o restante. O que vai dizer o quando vai ser dissipado ou armazenado são as próprias características do fluido. O tempo de relaxação, por exemplo, é uma dessa características.&lt;br /&gt;&lt;br /&gt;As figuras que seguem ilustram fenômenos tipicos de fluidos viscoelásticos:&lt;br /&gt;&lt;UL&gt;&lt;LI&gt;&lt;p align="justify"&gt;Inchamento de extrudado (die swell). Fluido Newtoniano na esquerda e fluido viscoelástico na direita (Fonte: Bird et al., 1987):&lt;br /&gt;&lt;br /&gt;&lt;CENTER&gt;&lt;img src="http://lh4.ggpht.com/__T5GoMoSCdo/TEIg093OqZI/AAAAAAAAAAM/E64IvdP71hs/s144/dieSwell.jpg" width="350" height="200"&gt;&lt;/CENTER&gt;&lt;br /&gt;&lt;LI&gt;&lt;p align="justify"&gt;Experimento rod-climbing. Fluido Newtoniano na esquerda e fluido viscoelástico na direita (Fonte: Bird et al., 1987):&lt;br /&gt;&lt;br /&gt;&lt;CENTER&gt;&lt;img src="http://lh6.ggpht.com/__T5GoMoSCdo/TEIg1EifW2I/AAAAAAAAAAU/CEnIXzq0c60/s144/rodClimming.jpg" width="350" height="200"&gt;&lt;/CENTER&gt;&lt;/UL&gt;&lt;p align="justify"&gt;Outra questão interessante é que todos os fluidos demostram um pouco deste comportamento. Por exemplo, o vidro usado em janelas se apresenta no estado sólido, mas com o passar do tempo, em construções mais antigas, se percebe que a parte inferior da lâmina de vidro é mais espessa que a superior, ou seja, o vidro escoou, o tempo de relaxação do vidro foi superado e devido a gravidade escoou e se acumulou na extremidade inferior. Este é um caso onde o tempo de relaxação é grande. Se pegarmos uma chapa de aço esse tempo é tão grande que não percebemos mudanças. Por outro lado, estamos cercados de fluidos com tempo de relaxação muito pequeno, a água (típico fluido newtoniano) é um desses casos. Se pularmos na água de uma altura muito grande, ou seja, fazermos com que o tempo de relaxação da água seja maior do que o tempo de ação de nossa força nela, vamos ter a sensação de colidir com algo sólido. Por isso que não se pode pular na água de lugares muito altos, pois literalmente, o que aconteceria, era se esborrachar. No youtube se encontram vários vídeos onde as pessoas andam sobre uma piscina contendo fluido não-newtoniano.&lt;br /&gt;&lt;br /&gt;Em condições normais de pressão e temperatura o ar encontra-se muito concentrado e tem um tempo de relaxação de fenômenos elásticos da ordem dos &lt;span style="font-style:italic;"&gt;10e-13&lt;/span&gt; s. Como a maioria dos fenômenos que observamos na biosfera terrestre tem tempos característicos significativamente superiores, o ar encontra-se em equilíbrio e as suas propriedades reológicas podem assim ser consideradas como newtonianas. Contudo, se um gás se encontrar rarefeito, e até no estado de plasma, os fenômenos de dinâmica gasosa terão tempos característicos da mesma ordem de grandeza dos tempos de relaxação e colisão inter-molecular, não sendo neste caso já possível considerar essa matéria como tendo propriedades newtonianas, nem válida a hipótese do meio-contínuo (vejam neste &lt;a href="http://notasemcfd.blogspot.com/2010/04/hipotese-do-continuo.html"&gt;post&lt;/a&gt; do Mitre). Ora, a matéria nesse estado rarefeito, dito de plasma, constitui a quase totalidade da matéria do universo. &lt;br /&gt;&lt;br /&gt;Depois dessa introdução aos fluidos viscoelásticos cabe falar um pouco do tratamento usando CFD. Não vou me estender no equacionamento. Uma visão simplista mostra que a diferença em relação aos fluidos newtonianos é a necessidade de uma equação constitutiva mais sofisticada para o tensor tensão. As equações constitutivas encontradas são do tipo diferencial ou integral e, diga-se de passagem, um tanto complexas. Na minha dissertação de mestrado, disponível nesse &lt;a href="http://hdl.handle.net/10183/16306"&gt;link&lt;/a&gt;, tem muita coisa a respeito da modelagem e tratamento CFD para resolver este tipo de fluido.&lt;br /&gt;&lt;br /&gt;O trabalho sobre fluidos viscoelásticos surgiu pela necessidade da industria de processamento de polímeros, que trabalha com fluidos viscoelásticos em processos de moldagem, injeção, extrusão, etc. Assim, o enfoque principal foi para esta aplicação. A industria de processamento de polímeros conta hoje com bons softwares para simular os processos descritos anteriormente, contudo com um porém, a maioria dos softwares simulam somente fluidos não-newtonianos e não propriamente fluidos viscoelásticos. Isto, principalmente devido a complexidade da simulação dos fluidos viscoelásticos e as vezes por falta de conhecimento do pessoal da industria. O software Moldflow é um dos mais conhecidos na industria de polímero. Simula fluido não newtoniano, do tipo power-law, Bird-Carreau, ..., e sua licença é caríssima. O software Polyflow, da Ansys, é um dos poucos que trata fluidos viscoelásticos. O problema é o valor da compra e manutenção da licença. &lt;br /&gt;&lt;br /&gt;Tendo conhecimento do software &lt;B&gt;OpenFOAM&lt;/B&gt; (OF), livre e de código aberto, optou-se por criar o solver para tratar escoamentos com fluidos viscoelásticos nesse software. Uma vez feito isso teríamos em mãos um solver mais genérico e com aplicações em problemas variados, sem limitações de geometrias e malhas, possibilidade de usar várias ferramentas sofisticadas de CFD, processamento paralelo, técnicas multigrid, enfim, usar tudo o que o OF tem a oferecer e de forma gratuita.&lt;br /&gt;&lt;br /&gt;O solver criado foi batizado com o nome &lt;span style="font-family:courier new;"&gt;viscoelasticFluidFoam&lt;/span&gt; é está disponível, já faz algum tempo, na versão OpenFOAM extended ou dev (OF-dev). O solver é usado como qualquer outro existente no OF e para facilitar o uso tem alguns exemplos no tutorial do software. A quantidade de modelos implementada é vasta, ou melhor, todos aqueles que encontrei enquanto fazia a revisão bibliográfica para minha dissertação de mestrado. O solver vem sendo usado por muita gente, principalmente pessoas de fora do brasil. Como já comentado, está disponível na versão OF-dev que pode ser conseguida usando o seguinte:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   svn checkout http://openfoam-extend.svn.sourceforge.net/svnroot/openfoam-extend/trunk/Core/OpenFOAM-1.5-dev/ OpenFOAM-1.5-dev/&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Sugere-se a leitura desse &lt;a href="http://notasemcfd.blogspot.com/2009/05/desenvolvimento-no-openfoam.html"&gt;post&lt;/a&gt;, do Luiz Fernando, que dá maiores informações sobre este assunto. Para usuários de sistema operacional Ubuntu 10.04 tem uma maneira muito fácil de ter o OF-dev operacional (créditos ao CAE-Team), basta executar 3 comandos:&lt;br /&gt;&lt;OL&gt;&lt;LI&gt;&lt;p align="justify"&gt;&lt;span style="font-family:courier new;"&gt;sudo add-apt-repository ppa:cae-team/ppa&lt;/span&gt;&lt;br /&gt;&lt;LI&gt;&lt;p align="justify"&gt;&lt;span style="font-family:courier new;"&gt;sudo apt-get update&lt;/span&gt;&lt;br /&gt;&lt;LI&gt;&lt;p align="justify"&gt;&lt;span style="font-family:courier new;"&gt;sudo apt-get install openfoam-dev-1.5&lt;/span&gt;&lt;/OL&gt;&lt;p align="justify"&gt;e carregar as variáveis de ambiente do mesmo com:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   source /usr/lib/OpenFOAM-1.5-dev/etc/bashrc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;no terminal em que o OF-dev será executado.&lt;br /&gt;&lt;br /&gt;Pode-se também compilar o solver na versão OpenCFD do OF. No fórum do &lt;a href="http://www.cfd-online.com/"&gt;cfdonline&lt;/a&gt; tem um post que comento a respeito disso, vejam &lt;a href="http://www.cfd-online.com/Forums/openfoam-solving/57846-viscoelastic-fluid-flows-using-openfoam-solver-viscoelasticfluidfoam.html"&gt;aqui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;O código do solver também pode ser visualizado diretamente do repositório (&lt;a href="http://openfoam-extend.svn.sourceforge.net/viewvc/openfoam-extend/trunk/Core/OpenFOAM-1.5-dev/applications/solvers/viscoelastic/viscoelasticFluidFoam/"&gt;viscoelasticFluidFoam&lt;/a&gt;). As equações constitutivas para fluidos viscoelásticos, por sua vez, estão em uma biblioteca a parte (&lt;a href="http://openfoam-extend.svn.sourceforge.net/viewvc/openfoam-extend/trunk/Core/OpenFOAM-1.5-dev/src/transportModels/viscoelastic/"&gt;viscoelastic&lt;/a&gt;). Alguns utilitários para pós-processamento também foram criados (&lt;a href="http://openfoam-extend.svn.sourceforge.net/viewvc/openfoam-extend/trunk/Core/OpenFOAM-1.5-dev/applications/utilities/postProcessing/viscoelastic/"&gt;utilities&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Bom, quem sabe um dia, posso voltar a falar mais a respeito do solver &lt;span style="font-family:courier new;"&gt;viscoelasticFluidFoam&lt;/span&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-4590992694427989630?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/4590992694427989630/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2010/07/fluidos-visco-elasticos.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/4590992694427989630?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/4590992694427989630?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2010/07/fluidos-visco-elasticos.html" title="Fluidos Visco-Elásticos" /><author><name>Jovani</name><uri>http://www.blogger.com/profile/16601190182840183680</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://1.bp.blogspot.com/__T5GoMoSCdo/TEJC8UpbDTI/AAAAAAAAAB4/-EoL4gIIpXk/S220/foto.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/__T5GoMoSCdo/TEIg093OqZI/AAAAAAAAAAM/E64IvdP71hs/s72-c/dieSwell.jpg" height="72" width="72" /><thr:total>3</thr:total></entry><entry gd:etag="W/&quot;DE8EQHw5cCp7ImA9WxFTFEU.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-3636174243861101264</id><published>2010-04-05T14:00:00.001-03:00</published><updated>2010-04-05T14:00:01.228-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-05T14:00:01.228-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="mecânica dos fluidos" /><category scheme="http://www.blogger.com/atom/ns#" term="modelagem" /><title>Hipótese do Contínuo</title><content type="html">Fluidos são compostos por moléculas que colidem umas com as outras e com objetos sólidos. A &lt;b&gt;hipótese do contínuo&lt;/b&gt; considera que os fluidos são contínuos. Ela assume que o fluido é dividido por corpos/partículas que são:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;pequenos o suficiente para que todas as suas propriedades (como temperatura e densidade) possam ser consideradas uniformes e&lt;/li&gt;&lt;li&gt;que são grandes o suficientes para conter um número estatisticamente grande de moléculas&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 189px;" src="http://4.bp.blogspot.com/_aH-8wvb7gYE/S5KX0WECfmI/AAAAAAAADCk/oaUenVXVBf8/s320/Volume.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5445581824975863394" /&gt;&lt;div&gt;O perfil de densidade em função do volume do corpo estabelecido em uma certa posição (figura acima) pode ser ilustrado pela figura abaixo.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 202px;" src="http://1.bp.blogspot.com/_aH-8wvb7gYE/S5KZXAFUmiI/AAAAAAAADC0/0v-Zc02UlZc/s320/Continuo.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5445583519882713634" /&gt;O gráfico acima deve ser interpretado não apenas como a densidade em função do volume do corpo, mas também como a densidade em função do número de moléculas que existem dentro de um certo volume. Quando o volume é pequeno, o número de moléculas é pequeno, a inclusão/exclusão e a densidade pode alterar significativamente com o volume.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A hipótese do contínuo requer que exista um número significativo de moléculas dentro do volume do corpo de forma que a densidade altere-se continuamente com o volume.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A hipótese do contínuo é basicamente uma aproximação e resulta, portanto, em soluções aproximadas. Consequentemente, adotar a hipótese do contínuo pode levar a resultados que não possuem a acurácia desejada. Contudo, aplicado nas condições corretas, a hipótese do contínuo produz resultados extremamente acurados.&lt;br /&gt;&lt;br /&gt;Os problemas para os quais a hipótese do contínuo não fornece uma acurácia satisfatória são resolvidos usando mecânica estatística. De modo a determinar quando se deve ou não usar a teoria de fluido dinâmica convencional ou a mecânica estatística, o número de Knudsen deve ser avaliado para o seu problema. O número de Knudsen é definido como a trajetória livre média das moléculas aplicadas a uma escala de tamanho física representativa. Esta escala de tamanho pode ser, por exemplo, o raio de um corpo em um fluido. De forma mais simples, o número de Knudsen representa a média de quantas vezes a partícula (molécula) se move em relação ao seu diâmetro até atingir (colidir) com outra partícula. Problemas com números de Knudsen próximos ou acima da unidade são melhores representados usando a mecânica estatística para soluções mais confiáveis.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;É muito importante ter em mente que &lt;b&gt;TODA&lt;/b&gt; a mecânica dos fluidos clássica &lt;b&gt;requer&lt;/b&gt; que a hipótese do contínuo seja válida. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Portanto, escoamento de gás diluído em nano-poros (em alguns casos, micro poros) não pode ser objeto de estudo da mecânica dos fluido clássica e, obviamente, não pode ser objeto de simulação CFD.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Da mesma forma, o volume mínimo de um elemento de malha é teoricamente limitado pela quantidade de moléculas que estarão dentro daquele volume, ou seja, o volume mínimo de um elemento da malha deve ter moléculas suficientes para que a densidade seja descrita como uma função do contínuo. Infelizmente (ou não !) a real limitação é a memória RAM da máquina que gera a malha e do cluster que irá resolver as equações no domínio definido por ela. O que não impede que exista vários exemplos na literatura (que não vale apena citar aqui) onde o CFD foi aplicado sem validação apropriada da hipótese do contínuo.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Na prática, embora eu tenha dado um tom alarmista nesse último parágrafo, a verdade é que a maior parte dos escoamentos são perfeitamente descritos pela mecânica do contínuo, as exceções tradicionalmente envolvem gases diluídos em canais muito pequenos (poros).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Por ser a base de tudo que fazemos na mecânica do fluidos, considero ser muito importante a imagem do que essa hipótese significa e a melhor imagem que eu tenho de um fluido incompressível pode ser ilustrada pela figura abaixo...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_aH-8wvb7gYE/S5Kj-0tjm4I/AAAAAAAADDE/6GEoEPscHfk/s1600-h/Fluido1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 172px;" src="http://3.bp.blogspot.com/_aH-8wvb7gYE/S5Kj-0tjm4I/AAAAAAAADDE/6GEoEPscHfk/s320/Fluido1.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5445595199141288834" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;Eu olho para essas piscinas de bolas e vejo água (quando essa pode ser considerada incompressível, claro), porque é exatamente assim que nós modelamos a água. Fonte: &lt;a href="http://www.cbs.com/primetime/big_bang_theory/video/?pid=jgA_80dyP9Vjk48BrIURJCkoRXwBdf2q&amp;amp;vs=homepage&amp;amp;play=true" target="_blank"&gt;site da CBS&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Caso fosse um escoamento compressível, cada bola deve ter a capacidade de ter seu volume alterado sem diminuição do número de moléculas que estejam contidas na bola, assim, o modelo mais apropriado seria de uma piscina de bexigas de festa de aniversário... dá para imaginar a cena ? Pois é ... esse é um fluido genérico.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Vale observar que não existe o "espaço intersticial" entre os volumes que compõem um fluido e que a forma desses volumes não é relevante. Outro ponto interessante é que sobre cada corpo que compõem o fluido aplicam-se todas as leis da mecânica básica (como a segunda lei de newton) e que aplicação da mecânica básica nesse corpo de fluido nos permite escrever o que é conhecido como o Teorema de Transporte de Reynolds. Assunto que será discutido nesse blog em algum dia futuro !&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Devo compartilhar a autoria desse texto como  Luiz. Ele começou a rabiscar o texto e eu modifiquei e completei, mas aproveitei muito do que ele escreveu. Infelizmente eu não sei como colocar dois nomes em um texto do blogger (e isso nem mesmo faz muito sentido para mim). Seja como for, fica aqui o registro do fato.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As duas primeiras figuras utilizadas nesse texto foram obtidas do livro "&lt;i&gt;A Course in Fluid Mechanics with Vector&lt;/i&gt;" de &lt;a href="http://www.andrew.cmu.edu/user/dcprieve/Home.htm" target="_blank"&gt;Dennis C. Prieve&lt;/a&gt;, 2001, cuja a versão antigamente podia ser gratuitamente obtida na internet em sua &lt;a href="http://www.andrew.cmu.edu/user/dcprieve/Home.htm" target="_blank"&gt;página pessoal&lt;/a&gt;. Infelizmente não consegui localizar o livro na sua fonte original novamente.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-3636174243861101264?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/3636174243861101264/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2010/04/hipotese-do-continuo.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/3636174243861101264?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/3636174243861101264?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2010/04/hipotese-do-continuo.html" title="Hipótese do Contínuo" /><author><name>João Felipe Mitre</name><uri>https://profiles.google.com/118295875382548551538</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-Mh3JAJ57NyI/AAAAAAAAAAI/AAAAAAAAD7g/fjv46PsPWcE/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_aH-8wvb7gYE/S5KX0WECfmI/AAAAAAAADCk/oaUenVXVBf8/s72-c/Volume.png" height="72" width="72" /><thr:total>1</thr:total></entry><entry gd:etag="W/&quot;C0QCQH84cSp7ImA9WxBaEkQ.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-112729740767130772</id><published>2010-03-22T14:00:00.004-03:00</published><updated>2010-03-22T17:56:01.139-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-22T17:56:01.139-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="softwares" /><category scheme="http://www.blogger.com/atom/ns#" term="gnuplot" /><category scheme="http://www.blogger.com/atom/ns#" term="notas" /><title>Gnuplot: Tipos de pontos e linhas</title><content type="html">&lt;div&gt;Agora que já aprendemos o &lt;a href="http://notasemcfd.blogspot.com/2010/02/gnuplot-introducao-basica.html"&gt;básico sobre o gnuplot&lt;/a&gt;, eu posso começar a passar dicas mais simples e específicas sobre o uso do programa, voltando-o para aplicações científicas.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Uma pergunta que eu sempre me faço ao fazer um gráfico é qual o tipo de ponto/linha que eu devo utilizar. Em um programa gráfico, normalmente você percorre uma lista até conseguir achar aquela especificação que mais te satisfaz.&lt;br /&gt;&lt;br /&gt;No gnuplot o tipo de ponto é especificado com a opção 'pt N' e o tipo de linha é especificado com a opção 'lt N', onde N é um número inteiro que representa o código da linha. O grande "problema" é que o número não diz nada sobre o tipo de linha. Dessa forma seria gasto tempo desnecessário consultando um manual para saber qual é o tipo que quer usar.&lt;br /&gt;&lt;br /&gt;O que eu faço é usar o gnuplot para gerar gráficos que me dizem quais são os códigos dos tipos de linhas e pontos disponíveis.&lt;br /&gt;A figura abaixo (clique nela para ampliar) apresenta 39 tipos de pontos. Existem formatos adicionais de pontos, mas sou da opinião que se não conseguir resolver o seu problema com os 15 primeiros formatos deve reconsiderar o gráfico, embora essa seja uma opinião bem pessoal sobre o problema.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_aH-8wvb7gYE/S45yXeo7zVI/AAAAAAAADB8/ucN3WmhUCyQ/s1600-h/TiposDePontosPB.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 223px;" src="http://1.bp.blogspot.com/_aH-8wvb7gYE/S45yXeo7zVI/AAAAAAAADB8/ucN3WmhUCyQ/s320/TiposDePontosPB.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5444414747224821074" /&gt;&lt;/a&gt;&lt;br /&gt;Os pontos nessa figura possuem o tamanho 3. O tipo de coisa que pode ficar bem ruim em um gráfico final, mas é excelente para ver bem o ponto.&lt;br /&gt;&lt;br /&gt;Um exemplo de comando plot está abaixo.&lt;br /&gt;&lt;pre&gt;plot "dados.dat" using ($1):($2) title "Ponto Tipo 10" with points pt 10&lt;/pre&gt;Esse comando cria um gráfico de pontos a partir do arquivo dados.dat usando a coluna 1 para o eixo X e a coluna 2 para o eixo Y e com o estilo de ponto tipo 10, ou seja, o triângulo vazado de cabeça para baixo.&lt;br /&gt;&lt;br /&gt;Quanto aos tipos de linhas, a figura a seguir (clique nela para ampliar) apresenta todos os 9 tipos de linhas disponíveis atualmente. De fato, eu escrevi no código até o tipo 11, mas isso tem dois objetivos, o primeiro identificar quando surgir um novo tipo de linha e o segundo provar que quando acaba a lista de estilos, o ciclo se repete, ou seja, o tipo 10 é o tipo 1 e tipo 11 o tipo 2, etc. Isso também acontece com os pontos, mas eu não faço idéia de quando a lista de pontos termina.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_aH-8wvb7gYE/S457dvszjOI/AAAAAAAADCE/NoTRvWcJfS8/s1600-h/TiposDeLinhasPB.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 221px;" src="http://2.bp.blogspot.com/_aH-8wvb7gYE/S457dvszjOI/AAAAAAAADCE/NoTRvWcJfS8/s320/TiposDeLinhasPB.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5444424750488325346" /&gt;&lt;/a&gt;&lt;br /&gt;Acredito que todos concordem que os tipos de linha estão bem nítidos nesse figura. Estou usando espessura de linha tamanho 4 (lw 4). Na espessura padrão (lw 1) as diferenças entre os tipos de linhas podem não ficar tão fáceis de serem percebidas.&lt;br /&gt;&lt;br /&gt;Um exemplo de comando plot está abaixo.&lt;br /&gt;&lt;pre&gt;plot "dados.dat" using ($1):($2) title "Linha Tipo 5" with lines lt 5&lt;/pre&gt;Esse comando cria um gráfico de linhas a partir do arquivo dados.dat usando a coluna 1 para o eixo X e a coluna 2 para o eixo Y e com o estilo de linha tipo 5, ou seja, alternando traço longo e um ponto.&lt;br /&gt;&lt;br /&gt;Disponibilizo para os interessados &lt;a href="http://sites.google.com/site/bemylifeeasy/Home/analise.plt?attredirects=0&amp;amp;d=1"&gt;o arquivo do gnuplot, plt, que gera as figuras acima&lt;/a&gt;. O que me faz lembrar que eu não havia dito no tópico anterior que um mesmo arquivo .plt pode gerar tantos gráficos quanto forem desejados. E, por favor, não espere muitos comentários escrito dentro do arquivo, do meu ponto de vista, esse plt é importante pelo resultado não por ele mesmo.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;E as cores ? Bem, sabe tudo que você leu acima ? Continua válido. Agora você terá de adicionar uma opção a mais que é a 'lc'. As cores padrões disponíveis podem ser vistas na figura abaixo (clique nela para ampliar). De forma similar aos tipos de linhas, existem 9 cores básicas e depois começamos a repetir as cores. Repare que a figura representa o tipo 1 e 2 de linhas com todas as cores básicas disponíveis. &lt;/div&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_aH-8wvb7gYE/S5P3ptGhCuI/AAAAAAAADDw/BXSuo-uvcIc/s1600-h/TiposDeLinhasColor.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 222px;" src="http://1.bp.blogspot.com/_aH-8wvb7gYE/S5P3ptGhCuI/AAAAAAAADDw/BXSuo-uvcIc/s320/TiposDeLinhasColor.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5445968670274685666" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;De forma que&lt;/div&gt;&lt;div&gt;&lt;pre&gt;plot "dados.dat" using ($1):($2) title "Tipo 5 Cor 2" with lines lt 5 lc 2&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;cria um gráfico de linhas a partir do arquivo dados.dat usando a coluna 1 para o eixo X e a coluna 2 para o eixo Y e com o estilo de linha tipo 5, ou seja, alternando traço longo e um ponto e a cor 2, ou seja, verde.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Quando eu digo cores básicas, eu quero dizer, que o gnuplot aceita qualquer cor que possa ser representada pelo código RGB, eu, francamente, acho isso inapropriado em gráfico científico.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Eu não acho que faça algum sentido colocar a figura para os tipos de pontos, mas o &lt;a href="http://sites.google.com/site/bemylifeeasy/Home/analise.plt?attredirects=0"&gt;arquivo plt que gera a figura anterior&lt;/a&gt; (que é diferente do primeiro)  gera também um pequeno exemplo de configuração das cores em pontos, embora adicionar 'lc N' onde N é o número da cor na linha de plot do gráfico não me parece algo tão misterioso assim...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ah ! Ainda não descobri se a abordagem dessa ferramenta agrada a uma audiência que espera notas sobre CFD. A verdade é que fazer gráficos é uma das tarefas de qualquer pesquisador e muitos dos leitores desse blog usam o GNU/Linux, LaTeX e OpenFOAM e portanto são candidatos perfeitos ao uso do Gnuplot. Me deixem saber se esse tipo de assunto agrada, ajuda ou não.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Um coisa que eu, infelizmente, percebo é que muitos alunos pensam que porque utilizam uma ferramenta que permite "visualizações fantásticas e complexas", os velhos gráficos bidimensionais de linhas e pontos devam ser descartados. Isso &lt;b&gt;definitivamente não é verdade&lt;/b&gt;. Na maior parte das vezes, são os "simples" gráficos 2-D que trazem a maior parte das informações relevantes, bem como são o formato básico de comparação de resultados experimentais com o obtido por CFD. Ainda que a ferramenta não agrade, a importância desses gráficos não deve ser menosprezada.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-112729740767130772?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/112729740767130772/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2010/03/gnuplot-tipos-de-pontos-e-linhas.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/112729740767130772?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/112729740767130772?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2010/03/gnuplot-tipos-de-pontos-e-linhas.html" title="Gnuplot: Tipos de pontos e linhas" /><author><name>João Felipe Mitre</name><uri>https://profiles.google.com/118295875382548551538</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-Mh3JAJ57NyI/AAAAAAAAAAI/AAAAAAAAD7g/fjv46PsPWcE/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_aH-8wvb7gYE/S45yXeo7zVI/AAAAAAAADB8/ucN3WmhUCyQ/s72-c/TiposDePontosPB.png" height="72" width="72" /><thr:total>2</thr:total></entry><entry gd:etag="W/&quot;CEEFQ30_fyp7ImA9WxBbF00.&quot;"><id>tag:blogger.com,1999:blog-2876730879490246055.post-1484972812415935201</id><published>2010-03-13T14:00:00.006-03:00</published><updated>2010-03-15T22:23:32.347-03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-15T22:23:32.347-03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="turbulência" /><category scheme="http://www.blogger.com/atom/ns#" term="mecânica dos fluidos" /><title>Introdução ao fenômeno da turbulência</title><content type="html">A palavra "Turbulência" sem a abordagem científica, remete a conceitos como:&lt;div&gt;&lt;ul&gt;&lt;li&gt;avião sacudindo devido a força do vento (uma imagem derivada de filmes) e&lt;/li&gt;&lt;li&gt;uma pessoa que enfrente dificuldades pessoais/profissionais.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Por outro lado, o dicionário diz o seguinte:&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;turbulência &lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;tur.bu.lên.cia&lt;br /&gt;sf (lat turbulentia) 1. Qualidade de turbulento. 2. Ato turbulento. 3. Grande desordem; motim, perturbação da ordem pública, sublevação, tumulto.&lt;/span&gt;&lt;/blockquote&gt;&lt;/span&gt;&lt;/span&gt;onde a palavra "turbulento" é definida da seguinte forma:&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#000099;"&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;turbulento&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;tur.bu.len.to&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;adj (lat turbulentu) 1. Em que há turbulência ou perturbação. 2. Propenso a causar desordem. 3. Agitado, tempestuoso. 4. Buliçoso, ruidoso. 5. Revoltoso, sedicioso. sm Indivíduo desordeiro ou bulhento.&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;Na mecânica dos fluidos, turbulência é um termo utilizado para caracterizar o estado de um certo escoamento, &lt;b&gt;o escoamento turbulento&lt;/b&gt;. Esse estado é agitado, tempestuoso, desordenado e certamente é uma perturbação da ordem.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;É um escoamento turbulento o escoamento que possui flutuações no campo de velocidade que são dependentes do tempo e da posição no espaço. &lt;b&gt;[update]&lt;/b&gt;Acabo de perceber algo que não ficou claro nesse texto. O escoamento turbulento requer que todas as características citadas posteriormente sejam constatadas. Do contrário, não é escoamento turbulento.&lt;b&gt;[/update]&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Quanto mais intenso é a turbulência, maior é a flutuação da velocidade, no caso do escoamento da atmosfera, maiores são as chances dessas pertubações serem percebidas pelos aviões que estejam naquela região.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As principais características da turbulência são:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;A turbulência é &lt;b&gt;caótica&lt;/b&gt; ou, como é dito em alguns livros, &lt;b&gt;irregular&lt;/b&gt;.  O que significa que ela não é determinística, portanto, não pode ser modelada por abordagens puramente determinísticas.&lt;/li&gt;&lt;li&gt;A turbulência é altamente &lt;b&gt;difusiva&lt;/b&gt;.  O que significa que o fluido mistura-se mais rapidamente.&lt;/li&gt;&lt;li&gt;A turbulência &lt;b&gt;ocorre em números de Reynolds elevados&lt;/b&gt;. De fato, a turbulência origina-se da desestabilização do escoamento laminar (que possui número Reynolds pequeno).&lt;/li&gt;&lt;li&gt;A turbulência é um &lt;b&gt;fenômeno contínuo&lt;/b&gt;. Governado pelas equações da mecânica do fluidos.&lt;/li&gt;&lt;li&gt;A turbulência é &lt;b&gt;rotacional e tridimensional&lt;/b&gt;. Minha característica predileta ! Em primeiro lugar não há turbulência bidimensional. As estruturas da turbulência são tridimensionais e possuem características rotacionais. Isso não significa que o escoamento médio tenha que ser tridimensional, nem mesmo que não exista justificativa razoável para modelar o escoamento bidimensional no lugar do tridimensional. Não confundir fenômeno com modelagem.&lt;/li&gt;&lt;li&gt;A turbulência é altamente &lt;b&gt;dissipativa&lt;/b&gt;. Isso significa que o escoamento turbulento está sempre dissipando energia cinética. Para o escoamento turbulento ser mantido, é necessário que exista uma fonte contínua de energia sendo fornecida ao escoamento. Do contrário, o escoamento volta a ser laminar.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Na internet temos o material do Prof. Rosa da disciplina de "&lt;a href="http://www.fem.unicamp.br/~im450/" target="_blank"&gt;Modelagem de Escoamentos Turbulentos&lt;/a&gt;". Para aqueles que ainda não foram iniciados formalmente na problema, eu sugiro a leitura do item 1 (Fundamentos da turbulência nos fluidos, Aristeu da Silveira Neto, UFU) e 2 (Turbulência e seu desenvolvimento histórico, Átilia Silva Freire, COPPE) do material disponível em &lt;a href="http://www.fem.unicamp.br/~im450/palestras&amp;amp;artigos/index.htm" target="_blank"&gt;Apostilas e Mini Cursos&lt;/a&gt;. O primeiro item é uma introdução formal, muito mais e melhor detalhada que esse texto. O segundo item é uma introdução histórica. É o tipo de texto que devia ser um tópico do blog, mas dada a existência desse material eu prefiro sugeri-lo a escrever algo de qualidade inferior.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Para a descrição adequada do &lt;b&gt;fenômeno&lt;/b&gt; é fundamental o uso da estatística. O Prof. Luca Moriconi (IF/UFRJ) leciona um excelente curso sobre "Teoria Estatística da Turbulência" cujo o material pode ser baixado livremente pela internet através de sua &lt;a href="http://omnis.if.ufrj.br/~moriconi/hp.html" target="_blank"&gt;página pessoal&lt;/a&gt;. No momento que escrevo esse texto, o material pode ser obtido na página "Teaching" ou "Turbulence Course &amp;gt;&amp;gt; Programa". Também sugiro coletar o material que está em "Turbulence Course &amp;gt;&amp;gt; Arquivos". &lt;b&gt;Atenção:&lt;/b&gt; Esse material &lt;b&gt;não&lt;/b&gt; é para quem acabou de ouvir falar em turbulência !!! Para quem for arriscar, se achar que o material está escrito em Aramaico ou Russo, uma dica &lt;a href="http://www.submarino.com.br/produto/1/29425/" target="_blank"&gt;Butkov&lt;/a&gt; (Ah ! E o material está em português, eu juro !!!).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Por fim, dos livros que você pode pensar em adquirir eu sugiro o &lt;a href="http://books.google.com.br/books?id=xKUDN22Y7OYC" target="_blank"&gt;Turbulence in Fluids, M. Lesieur, 2008&lt;/a&gt;. E olha que bacana ... esse livro pode ser baixado gratuitamente através de &lt;a href="http://springerlink.metapress.com/home/main.mpx" target="_blank"&gt;convênio existente entre a UFRJ e a Springer&lt;/a&gt; (Editora do livro) (como esse convênio usa a CAPES, eu não sei se é estendido por poda rede universitária). Não sei se esse convênio é perpétuo ou se tem prazo para acabar, no momento, está funcionando. Caso não seja acessível da sua universidade, pode visitar uma biblioteca da UFRJ (a do centro de tecnologia tem ampla sala de computadores). Esse não é o único livro disponível nesses termos (embora também não sejam todos os livros do site, &lt;b&gt;parece&lt;/b&gt; que no momento temos 2005-2008 ) ... da nossa área, para começar, eu sugiro olhar todos da série "Fluid Mechanics and Its Applications".&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Na versão em inglês da wikipédia é possível ver algumas das &lt;a href="http://en.wikipedia.org/wiki/Turbulence" target="_blank"&gt;figuras que ilustram o fenômeno da turbulência&lt;/a&gt;. Pretendo escrever um outro tópico com o título similar a "Introdução ao fenômeno da turbulência através de imagens" (está grande, não ? Mas essa é a idéia), mas ele somente deve ficar pronto em junho - é mais difícil do que parece achar imagens realmente didáticas sobre o assunto - até lá, existe uma grande quantidade de filmes no Youtube que pode saciar a curiosidade visual sobre o fenômeno. Particularmente, eu não gosto muito de ver vídeos, mas tenho que admitir que são bem ilustrativos. Se eu conseguir colocar a câmera de vídeo para funcionar (!) eu tenho uma idéia legal para filmar e mostrar aqui. Até que tudo isso esteja pronto, se te interessar, vejas os vídeos listados (a maioria tem uns 10 segundos de duração).&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=0H63n8M79T8" target="_blank"&gt;Escoamento turbulento em torno de um cilindro&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=SJ3w4bg5Tx8" target="_blank"&gt;Outro escoamento turbulento em torno de um cilindro&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=2ghBUcQG1lQ" target="_blank"&gt;Agora em torno de dois cilindros&lt;/a&gt;. Sério, essa é interessante porque mostra como as estrutura formadas pelas turbulência parecem simétricas. &lt;/li&gt;&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=NplrDarMDF8" target="_blank"&gt;Escoamento turbulento em um tubo&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=Q-WuElLEn9Y" target="_blank"&gt;Escoamento em torno de um carro conversível&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=gHFFZ1ru0Pk" target="_blank"&gt;Mais escoamento em torno de carros&lt;/a&gt;. Esse vídeo é mais longo, tem quase 5 minutos de duração.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2876730879490246055-1484972812415935201?l=www.notasemcfd.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.notasemcfd.com/feeds/1484972812415935201/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.notasemcfd.com/2010/03/introducao-ao-fenomeno-da-turbulencia.html#comment-form" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/1484972812415935201?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2876730879490246055/posts/default/1484972812415935201?v=2" /><link rel="alternate" type="text/html" href="http://www.notasemcfd.com/2010/03/introducao-ao-fenomeno-da-turbulencia.html" title="Introdução ao fenômeno da turbulência" /><author><name>João Felipe Mitre</name><uri>https://profiles.google.com/118295875382548551538</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-Mh3JAJ57NyI/AAAAAAAAAAI/AAAAAAAAD7g/fjv46PsPWcE/s512-c/photo.jpg" /></author><thr:total>5</thr:total></entry></feed>

