Skip to main content
  • Home
  • Development
  • Documentation
  • Donate
  • Operational login
  • Browse the archive

swh logo
SoftwareHeritage
Software
Heritage
Archive
Features
  • Search

  • Downloads

  • Save code now

  • Add forge now

  • Help

  • 9d1ee36
  • /
  • pySPlisHSPlasH
  • /
  • CMakeLists.txt
Raw File Download
Permalinks

To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.

  • content
  • directory
content badge Iframe embedding
swh:1:cnt:da976bc27106549b0ba9544c0361bdd40eaf9d73
directory badge Iframe embedding
swh:1:dir:39b20ac81eeac3e59492345b4b824b0a458280c6
Citations

This interface enables to generate software citations, provided that the root directory of browsed objects contains a citation.cff or codemeta.json file.
Select below a type of object currently browsed in order to generate citations for them.

  • content
  • directory
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
CMakeLists.txt
pybind11_add_module(pysplishsplash
  main.cpp
  AnimationFieldModule.cpp
  BoundaryModelModule.cpp
  ParameterObjectModule.cpp
  UtilitiesModule.cpp
  SPHKernelsModule.cpp
  EmitterModule.cpp
  FluidModelModule.cpp
  NonPressureForceBaseModule.cpp
  SimulationModule.cpp
  RigidBodyModule.cpp
  TimeModule.cpp
  TriangleMeshModule.cpp
  DFSPHModule.cpp
  DragModule.cpp
  ElasticityModule.cpp
  IISPHModule.cpp
  PBFModule.cpp
  ICSPHModule.cpp
  PCISPHModule.cpp
  PFModule.cpp
  SurfaceTensionModule.cpp
  ViscosityModule.cpp
  VorticityModule.cpp
  WCSPHModule.cpp
  GUIModule.cpp
  ExporterModule.cpp
  ExtrasModule.cpp
  PBDModule.cpp
  XSPHModule.cpp
)

# All the same postfix, otherwise the module name ist not the same as the exported name and python gets confused
set_target_properties(pysplishsplash PROPERTIES
        DEBUG_POSTFIX ""
        RELWITHDEBINFO_POSTFIX ""
        MINSIZEREL_POSTFIX "")

target_link_libraries(pysplishsplash PRIVATE SimulatorBase)
add_dependencies(pysplishsplash SimulatorBase)

add_custom_target(pysplishsplash_install
        ${PYTHON_EXECUTABLE} setup.py bdist_wheel
        COMMAND ${PYTHON_EXECUTABLE} -m pip install -I build/dist/py*.whl
        WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
		
OPTION(USE_EMBEDDED_PYTHON "Enable embedded Python support"	OFF)
if (USE_EMBEDDED_PYTHON)

	add_library(pysplishsplash_embed
		Embedded.cpp
		Embedded.h
		
		AnimationFieldModule.cpp
		BoundaryModelModule.cpp
		ParameterObjectModule.cpp
		UtilitiesModule.cpp
		SPHKernelsModule.cpp
		EmitterModule.cpp
		FluidModelModule.cpp
		NonPressureForceBaseModule.cpp
		SimulationModule.cpp
		RigidBodyModule.cpp
		TimeModule.cpp
		TriangleMeshModule.cpp
		DFSPHModule.cpp
		DragModule.cpp
		ElasticityModule.cpp
		IISPHModule.cpp
		PBFModule.cpp
		ICSPHModule.cpp
		PCISPHModule.cpp
		PFModule.cpp
		SurfaceTensionModule.cpp
		ViscosityModule.cpp
		VorticityModule.cpp
		WCSPHModule.cpp
		GUIModule.cpp
		ExporterModule.cpp
		ExtrasModule.cpp
		PBDModule.cpp
	)
	
	target_compile_definitions(pysplishsplash_embed PUBLIC -DUSE_EMBEDDED_PYTHON)	
	target_link_libraries(pysplishsplash_embed PUBLIC pybind11::embed SimulatorBase)
	#add_dependencies(pysplishsplash_embed SimulatorBase)
	if (MSVC)
		target_compile_options(pysplishsplash_embed PRIVATE /bigobj)
	endif()
endif (USE_EMBEDDED_PYTHON)		

add_dependencies(SPlisHSPlasH
	Utilities
	tinyexpr
	Ext_NeighborhoodSearch
	Ext_GenericParameters
	Ext_Discregrid
)

back to top

Software Heritage — Copyright (C) 2015–2025, The Software Heritage developers. License: GNU AGPLv3+.
The source code of Software Heritage itself is available on our development forge.
The source code files archived by Software Heritage are available under their own copyright and licenses.
Terms of use: Archive access, API— Contact— JavaScript license information— Web API