Quiero escribir un solucionador 2D en C ++ o Fortran para que pase un cilindro usando una malla no estructurada. ¿De dónde debería comenzar?

Cómo comenzar es una larga historia. La mía comenzó en 2000 … O podrías tomar atajos.

Necesitará un mallador, un solucionador y probablemente también un postprocesador. Y supongo que preferiblemente de código abierto? Personalmente, preferiría que el solucionador se escribiera también en Fortran moderno (f03 / f08).

Podrías usar por ejemplo:

  • Gmsh para mallas (tanto no estructuradas como estructuradas; consulte el ejemplo a continuación). URL: http://gmsh.info
  • Dolfyn como el solucionador (breve resumen a continuación). URL: http://www.dolfyn.net
  • VisIt como el postprocesador (las animaciones a continuación se han realizado con VisIt). URL: https://visit.llnl.org

Breve resumen de dolfyn:

  • Método de volumen finito (FVM)
  • Implícito (presión con una variante SIMPLE)
  • Variables cartesianas primitivas ubicadas conjuntamente
  • Aislado
  • Basado en la cara no estructurado (hexahedra, tetrahedra, polihedra, etc.)
  • Estado estacionario o inestable
  • Varios modelos de turbulencia (std. K- \ varepsilon, RNG …)
  • Medios isotérmicos, térmicos, porosos y escalares.
  • Software de código abierto (Fortran 2003-2008), el código fuente está alojado en Launchpad: https: ///launchpad.net/dolfyn-cfd con un total de aproximadamente 40k líneas de código fuente.
  • Se ejecuta en GNU / Linux (Ubuntu, etc.), Un * x, OS-X, Win …

Más sobre dolfyn aquí: ¿Cuáles son algunos buenos softwares de CFD para fines educativos?

Vea el tutorial para crear la malla alrededor de un cilindro con Gmsh activado: tutorial de Gmsh para dolfyn (8)

Ejemplo de un flujo más allá de un cilindro (usando una malla no estructurada):

Laminar (Re = 250):

O turbulento (Re = 20,000):

Tenga en cuenta las diferencias finas!

Diviértete hackeando tus propios solucionadores, modelos, etc.

¿Con rapidez? Implemente el Método de Compresibilidad Artificial en malla estructurada con Python .

Como ya se dijo, la forma más fácil y el método de trabajo sería OpenFOAM . Netgen Nt / flow y Python pueden funcionar bien en 2D utilizando la formulación de la función de flujo para conservar el flujo de masa.

Recomendaría OpenFOAM y creo que los refinamientos de cuadrícula y la codificación en C ++ se pueden tratar fácilmente.

Si no está familiarizado con él, hay abundantes recursos disponibles en línea.

Lo básico está aquí: https://cfd.direct/openfoam/user

Primero debe decidir sobre el conjunto de ecuaciones que desea utilizar. Luego el método de descritización. Le sugiero que primero encuentre un solucionador 2D en la red e intente modificarlo.
También le sugiero que comience con Matlab, cuando su código esté listo y funcionando bien, luego escríbalo en C ++ o FORTRAN.
Si tiene conocimiento de ambos idiomas, sugiero fortran si desea un pequeño fragmento de código que haga lo que desea y no desea conectarlo a un fragmento de código más grande más adelante. Si ese no es el caso, elige c ++.

  1. C ++ significa intentar usar OpenFOAM
  2. Fortran significa comenzar desde tontos

Para conocer los pasos, se pueden seguir los libros estándar de CFD / Flujo numérico de fluido. . .

More Interesting

Cuando por error elevo demasiado la temperatura de mi ducha, mi nariz congestionada perenne se aclara instantáneamente. ¿Cómo puede suceder esto tan rápido?

Soy de India y estoy desesperado por vivir en Estados Unidos / Europa y establecerme allí, ¿qué debo hacer para eso?

Estoy pensando en invertir en el nombre de mi madre. Quiero que ella sea financieramente independiente. Tiene 45 años. ¿Cuál es la mejor manera de invertir, ya sea en PPF o en acciones? ¿Me puede explicar acerca de los planes de inversión para personas mayores?

Tengo 2 años de experiencia laboral como ingeniero, ¿qué es mejor hacer MBA O PGDM?

¿El SEO de mi sitio se ve afectado al poner un enlace de afiliado a mi proveedor de alojamiento web en el pie de página?

Si mi CGPA general es más de 7.5 después de cuatro años en ingeniería y mi puntaje en el GRE es más de 280, ¿puedo obtener la admisión en las mejores universidades de los Estados Unidos?

He estado usando un teléfono Samsung GT C 3312 durante los últimos 3 años, pero ahora, cuando entra una llamada, el teléfono se reinicia automáticamente. No se porque. ¿Qué tengo que hacer?

Tengo un miedo y ansiedad intensos debido a una entrevista de trabajo. Esto ha afectado mis posibilidades de conseguir un trabajo. ¿Cómo puedo superar esto?

Estoy alquilando en La Jolla, sus $ 32,000 al año en alquiler. Me puedo permitir un condominio de 500K. ¿Debo comprar en lugar de alquilar? He alquilado por 3 años ahora?

Todavía no entiendo el Big Bang. Si todo salió de él, ¿cómo podría haber sido materia condensada para causarla en primer lugar?