segunda-feira, 30 de agosto de 2010

Modelagem de dispersão turbulenta em simulações Euler-Euler no ANSYS FLUENT.

Quando se modela escoamentos com uma fase contínua e uma fase dispersa, a interação entre as partículas/gotas/bolhas dessa fase dispersa e a turbulência (vórtices) da fase contínua gera um efeito chamado "dispersão turbulenta" (dependendo de uma série de fatores, obviamente). Esse efeito é até tratado, com certa frequência, quando se modela a fase dispersa utilizando uma abordagem lagrangeana. Pode-se incluir esse efeito também quando se usa uma abordagem Euler-Euler para o problema. O único inconveniente (se é que podemos chamar assim) de fazê-lo no FLUENT é que esse modelo deve ser incluído na modelagem via TUI (Text User Interface).
Para incluí-lo, deve-se preparar o set-up, pelo menos até a etapa de seleção do modelo de turbulência para o problema (κ-ε contínuo-disperso, por exemplo, como mostrado na figura abaixo).


Então, na própria janela do FLUENT, na área de texto (o TUI), deve-se entrar com o seguinte comando:

/define/models/viscous/multiphase-turbulence/ multiphase-options

Respondendo-se yes às duas perguntas que se seguem (como mostrado abaixo) se ativa o modelo de dispersão turbulenta para simulações contínuo-dispersas Euler-Euler no FLUENT.


Saudações.

sexta-feira, 27 de agosto de 2010

Compilador de C para criação de UDFs no FLUENT em Windows x64.

Uma questão recorrente é qual compilador de C utilizar para a geração de UDFs no ANSYS FLUENT em Windows 64 bits (XP, Vista ou 7). Além de como proceder para configurar o compilador com o FLUENT. Vamos lá.
Uma das opções de compilador é o próprio compilador de C++ da Microsoft. Ele tem versões distribuídas gratuitamente com o Microsoft Visual Studio 2010 Express (para sistemas 32 bits) e com o Microsoft Windows SDK (para sistemas 32 e 64 bits).
Antes de instalar o compilador propriamente dito, em máquinas x64 deve-se antes instalar o Microsoft .NET Framework 4. O instalador está disponível gratuitamente no link abaixo: 


Concluída essa instalação, pode-se instalar o compilador, que é parte do pacote do SDK. No link abaixo se encontram as imagens de DVD para todas as versões do Winsows 7 (32 e 64 bits). Nenhuma grande configuração é necessária durante essa instalação. Quem não quiser ficar escolhendo componentes na mão pode fazer a instalação com a configuração padrão do instalador que funciona.


Para quem quiser, aqui vai o link do Microsoft Visual Studio 2010 Express para C++. Quando se instala o compilador para Windows x86 esse pacote tem a interface gráfica e o compilador.


Para usar o compilador, uma bateria de variáveis de ambiente e configurações adicionais devem ser feitas, para fugir delas pode-se simplesmente iniciar o FLUENT via linha de comando de dentro do prompt que é instalado pelo compilador no menu Iniciar do Windows. A figura abaixo mostra a o conteúdo da pasta do menu Iniciar do Windows SDK.


Quando se dispara o prompt acima, a seguinte janela surge:


Digitando o comando acima na janela se inicia o FLUENT com todas as configurações do compilador prontas. Uma forma de evitar digitar todo esse caminho é acrescentar o caminho para o executável do FLUENT à variável de ambiente Path do Windows. Feito isso basta apenas digitar fluent no prompt e o software é carregado.
Com isso o FLUENT está pronto para compilar normalmente UDFs. Apenas mais um ponto aqui, como se pode ver na figura do prompt do compilador, esse prompt padrão está com as configurações Debug. Isso é bom quando se está desenvolvendo as UDFs (porque facilita a localização de erros no programa), mas deixa mais lenta sua execução quando o código está pronto. Para resolver isso pode-se criar um novo item de prompt, duplicando o que já vem com o compilador com outro nome, como mostrado abaixo:


Aqui criei um novo item (copia do prompt padrão) com um "- Release" no nome. Para tornar o link realmente um prompt na versão Release (de execução mais rápida) deve-se editar a definição do link (botão direito no link - Propriedades) acrescentando no item "Destino" o argumento "/Release" no final. Como mostrado na figura abaixo.


Pronto. Quando executado o prompt na versão Release a seguinte janela surge, onde tanto o texto quanto a cor indicam sucesso na alteração.


Executando o FLUENT de dentro desta janela (com o caminho completo ou simplesmente como acima caso o caminho do executável esteja no Path) abre uma seção do software pronta para compilar UDFs para execução.

Saudações.

quinta-feira, 26 de agosto de 2010

Expressões em CEL para interrupção de simulações no ANSYS CFX

Fui utilizar a opção de controle de parada do ANSYS CFX via expressões em CEL e, em uma busca bem fraca, não encontrei exemplos. Aqui segue um então.
Esse controle de parada é bem útil pois, em muitos casos, temos que definir um número de passos de tempo ou um número de iterações muito grande por que não temos como calcular de antemão o tempo necessário de simulação para que o fenômeno que esperamos ocorra.
Nesse exemplo eu queria fazer a simulação parar assim que uma zona atingisse uma temperatura máxima eu defini.
O controle de interrupção fica na janela do Solver Control, como mostrado nessa figura:

A expressão pode estar definida na guia Expressions do CFX (como no exemplo acima), ou pode ser escrita diretamente no item Logical Expression. Essa expressão para controle de parada é bem simples, fazendo apenas uma compação. No caso que fiz, usei a expressão definida como:

stop criteria = maxVal(Temperature)@heat zone>310.0[C]

Essa expressão fez com que a simulação parasse assim que a temperatura máxima em uma região (chamada de heat zone) passasse dos 310ºC. No caso de eu não querer gerar uma expressão para isso na guia Expressions do CFX-Pre eu poderia ter escrito diretamente a condição de parada no Logical Expression.
Uma ferramenta interessante disse controle é que podem-se definir vários critérios de parada, o primeiro que for "atingido" pára a simulação.
Nesse meu caso o controle de interrupção via expressão funcionou muito bem.

Saudações.