Condições de contorno na simulação de fluidos

10

Estou trabalhando em um simulador de fluido 2D usando partículas de vórtice / "vortons", conforme descrito em Simulação de fluidos para videogames . O que eu acho que é a mesma coisa que o "método do vórtice discreto". Basicamente, você representa o fluido com uma coleção de partículas com vorticidade definida e calcula a velocidade do fluido em um ponto resumindo as velocidades induzidas de todos os vortons usando a lei de Biot-Savart (por exemplo: , em que é a diferença de posição entre o ponto de amostra e o vorton, é a vorticidade (uma quantidade vetorial em 3D) é a distância euclidiana entre o vorton e o ponto de amostra).v=ω×(p2p1)4πr3p2p1wr

Estou tentando introduzir uma caixa no fluido e fazer com que ela se mova para frente e para trás e influencie o fluido. O que significa levar em consideração as condições de limite antiderrapante e sem passagem da caixa. (Ou seja, ter a velocidade relativa do fluido igual a 0 no limite da caixa).

No momento, estou amostrando a velocidade relativa da caixa e o fluido em 80 pontos ao redor do perímetro da caixa. Eu também tenho 80 vortons colocados perto do perímetro da caixa, mas desloquei um pouco para fora. Formo uma matriz grande e resolvo os valores de vorticidade que os vortons precisam para neutralizar a velocidade do fluido nos pontos de amostra (usando mínimos quadrados lineares).

Isso quase funciona, mas notei que a solução que recebo depende muito do layout exato dos pontos de amostra e vortons.

Às vezes, recebo padrões alternados de vortons que giram em direções diferentes (pontos azuis são vortons girando no sentido anti-horário e pontos vermelhos são vortons girando no sentido horário):

Fluxos alternativos de vorton

Outras vezes, fico com todos os vortons do lado esquerdo da caixa girando para um lado, e todos os vortons do outro lado girando para o outro lado, como nesta foto:

Fluxo consistente

Eu acho que a segunda foto é o que eu realmente quero. Eu também acho que as duas soluções diferentes implicam que o sistema de equações que estou usando é muito pouco restrito. Adicionar pontos de amostra adicionais às vezes ajuda, às vezes não.

Posso acrescentar outras condições de contorno que me ajudariam a obter os resultados que estou buscando? Intuitivamente, não estou fazendo nada para levar em conta a intensidade com que o fluido é perturbado a uma certa distância da caixa. Estou pensando que talvez eu possa adicionar condições para o limite da camada limite. Mas não sei exatamente como isso seria.

Como alternativa, existe alguma literatura relevante que eu possa examinar sobre como os sims de fluido baseados em partículas de vórtice lidam com esse tipo de condição de contorno?

Jay Lemmon
fonte

Respostas:

1

O sistema que você está tentando resolver é singular? Ou pelo menos mal condicionada?

Eu tentaria adicionar alguma regularização ao sistema, por exemplo, se você tiver uma formulação energética, adicione um pequeno múltiplo de . Acho que isso corresponde à adição de um termo à matriz que você está resolvendo. Isso deve direcionar o sistema para a segunda configuração.Σ||vi||2λI

Uma regularização mais complicada seria uma penalidade na "derivada", por exemplo, onde decai com a distância.Σwij||vivj||2wij

celion
fonte
Eu acho que você está se referindo à regularização de Tikhonov .
OSE