Repolode
InteractiveComputerGraphics

InteractiveComputerGraphics/SPlisHSPlasH

Biblioteca open source en C++ para simular fluidos con Smoothed Particle Hydrodynamics (SPH), con binding para Python y CLI.

Estrellas
1,957
Forks
344
Issues abiertos
17
Último commit
hace 10 días

¿Qué es?

SPlisHSPlasH es una biblioteca para simular fluidos con Smoothed Particle Hydrodynamics, un método lagrangiano sin malla que calcula magnitudes para cada partícula a partir de un conjunto finito de sus vecinas. Incluye varios solucionadores de presión para fluidos incompresibles (WCSPH, PCISPH, PBF, IISPH, DFSPH, PF), además de métodos para la viscosidad, la tensión superficial y la vorticidad.

Además de fluidos puros, la biblioteca incluye acoplamiento entre sólidos rígidos y fluidos, acoplamiento bidireccional con sólidos deformables, flujo multifásico y fuerzas de arrastre. Las escenas se definen en JSON y los resultados se pueden exportar como archivos partio o VTK para usarlos en Maya, Blender o ParaView. Incluye un simulador de línea de comandos llamado `splash` y bindings para Python instalables con pip (`pysplishsplash`), disponibles para Windows y Linux.

El proyecto se compila con CMake y requiere un compilador de C++11. La búsqueda de vecindades se ejecuta en CPU o GPU, y se usa vectorización AVX cuando está disponible.

Funciones clave

  • 01Solucionadores de presión para fluidos incompresibles: WCSPH, PCISPH, PBF, IISPH, DFSPH y PF
  • 02Simulación 2D y 3D con búsqueda de vecindades en CPU o GPU
  • 03Acoplamiento entre sólidos rígidos y fluidos, y acoplamiento bidireccional entre fluidos y sólidos
  • 04Simulación multifásica y cálculo de fuerzas de arrastre
  • 05Importador de escenas JSON con compatibilidad con scripts de Python
  • 06Exportación de datos de partículas a los formatos partio y VTK

Casos de uso

  • Investigar solucionadores de presión SPH y métodos de acoplamiento entre fluidos y sólidos
  • Generar datos de animación de fluidos para importarlos en Maya, Blender o ParaView
  • Crear escenas de fluidos mediante scripts de Python con los bindings pysplishsplash

Inicio rápido

  1. 1

    Instala el paquete de Python precompilado para Windows o Linux

    pip install pysplishsplash
  2. 2

    Ejecuta el simulador de línea de comandos

    splash

Antes de usarlo

  • Los wheels de Python precompilados solo están disponibles para Windows y Linux, y para Python 3.6-3.10.
  • Para compilar desde el código fuente, se necesita CMake y un compilador de C++11.

Temas

#fluid-simulation#sph#physics-simulation#cpp#python-bindings#computer-graphics#deformable-solids#fluid-dynamics#fluids#multiphase-flow

Preguntas frecuentes

¿Qué es SPlisHSPlasH?
Biblioteca open source en C++ para simular fluidos con Smoothed Particle Hydrodynamics (SPH), con binding para Python y CLI. SPlisHSPlasH es una biblioteca para simular fluidos con Smoothed Particle Hydrodynamics, un método lagrangiano sin malla que calcula magnitudes para cada partícula a partir de un conjunto finito de sus vecinas. Incluye varios solucionadores de presión para fluidos incompresibles (WCSPH, PCISPH, PBF, IISPH, DFSPH, PF), además de métodos para la viscosidad, la tensión superficial y la vorticidad.
¿SPlisHSPlasH es gratuito? ¿Qué licencia tiene?
SPlisHSPlasH es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿SPlisHSPlasH sigue mantenido?
Mantenimiento activo. El último commit de SPlisHSPlasH fue el 28 oct 2026.
¿Para qué puedo usar SPlisHSPlasH?
Investigar solucionadores de presión SPH y métodos de acoplamiento entre fluidos y sólidos Generar datos de animación de fluidos para importarlos en Maya, Blender o ParaView Crear escenas de fluidos mediante scripts de Python con los bindings pysplishsplash
¿Cómo se instala SPlisHSPlasH?
Instala el paquete de Python precompilado para Windows o Linux: pip install pysplishsplash Ejecuta el simulador de línea de comandos: splash
¿Dónde consigo SPlisHSPlasH?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/InteractiveComputerGraphics/SPlisHSPlasH

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados