Releases: Xiangyu-Hu/SPHinXsys
SPHinXsys V1.2 New surface tension model and GPU offloading for mesh dynamics
What's Changed
- Add sycl implementation of spawn real particles so that boundary condition for channel flow can be implemented. by @Xiangyu-Hu in #736
- K epsilon pr by @FengWang3119 in #679
- Xiangyu/body part by cell by @Xiangyu-Hu in #738
- output singular variable by @Xiangyu-Hu in #741
- [Study] rigid-elastic coupling by @WeiyiVirtonomy in #730
- Xiangyu/revise fm mesh by @Xiangyu-Hu in #740
- draft the contact diffusion by @Xiangyu-Hu in #750
- fix the bug in contact neighbourhood and update the data base by @Xiaojingtang1234 in #752
- Xiangyu/real ghost particles by @Xiangyu-Hu in #739
- clean the source code for further developing by @Xiangyu-Hu in #755
- to test on github by @Xiangyu-Hu in #757
- Fix/register get variables by @Xiangyu-Hu in #758
- body party indictor not shared by @Xiangyu-Hu in #759
- Add missing kernel for Inner relation by @NikolayShegunov-Virtonomy in #762
- using is base of by @Xiangyu-Hu in #763
- Successfully Running ck_version and sycl_version of Soil Mechanics by @ShuangLi-1 in #715
- Incorrect usage of Neighbor in surface indicator CK class by @YuVirtonomy in #749
- move cases with python interface to separate test folder by @Xiangyu-Hu in #768
- unified kernel correction functor by @Xiangyu-Hu in #769
- to test on github by @Xiangyu-Hu in #764
- Spinning plate by @Shuaihao-Zhang in #771
- Base relation class generalized for both inner and contact relations by @Xiangyu-Hu in #770
- deduce fluid type from riemann solver by @Xiangyu-Hu in #772
- Sycl ck/pressure boudnary zero gradient kernel summation by @YuVirtonomy in #756
- spawn particles parallel policy by @Xiangyu-Hu in #775
- new surface tension model by @Shuaihao-Zhang in #773
- merge into branch by @Bo-Zhang1995 in #780
- Implicit relaxation method by @Bo-Zhang1995 in #774
- Xiangyu/sync to cpu formulation by @Xiangyu-Hu in #779
- hide sort method in application by @Xiangyu-Hu in #782
- Xiangyu/revise pressure boundary by @Xiangyu-Hu in #784
- reference passed as argument by @Xiangyu-Hu in #785
- 787 duplicate original id and inconsistent calculation with quantityaverage and reducesumstdpairvecd real by @Xiangyu-Hu in #788
- 787 duplicate original id and inconsistent calculation with quantityaverage and reducesumstdpairvecd real temp by @Xiangyu-Hu in #789
- add a function to reset the file path by update the quantity name, to… by @yyc84 in #778
- Xiangyu/linear interpolation redo by @Xiangyu-Hu in #791
- Corrected interpolation with restoring matrix by @Bo-Zhang1995 in #765
- using tabulated smoothing kernel to fit different analytical ones by @Xiangyu-Hu in #794
- Xiangyu/configurarion position by @Xiangyu-Hu in #792
- Xiangyu/level set out inner package only by @Xiangyu-Hu in #795
- revise interpolation by using generalized scalar by @Xiangyu-Hu in #796
- Update README.md by @Xiangyu-Hu in #797
- python interface cases included in test by @Xiangyu-Hu in #800
- Xiangyu/second order derivative by @Xiangyu-Hu in #798
- sycl-ck/fix bidirectional boundary condition #802 by @YuVirtonomy in #803
- using new error measure to avoid compare value near zero by @Xiangyu-Hu in #806
- Interaction used to indication interaction with wall by @Xiangyu-Hu in #807
- Xinagyu/clean simbody dependency by @Xiangyu-Hu in #809
- Xinagyu/fix for gcc 13 by @Xiangyu-Hu in #810
- Xiangyu/body part by indication by @Xiangyu-Hu in #804
- using unified style with that particle dynamics for file output classes by @Xiangyu-Hu in #819
- add Case Oilcooling by @Lirong-Zhuang in #821
- introducing particle method container, sph solver and simplified body relation by @Xiangyu-Hu in #822
- using tensor product is more generalized by @Xiangyu-Hu in #827
- body name information with variable registering error by @Xiangyu-Hu in #829
- assignment is more general then initial condition by @Xiangyu-Hu in #828
- Update base_data_type.h by @Xiangyu-Hu in #831
- New independent STL reader by @Xiangyu-Hu in #830
- used generalized integrator by @Xiangyu-Hu in #832
- change data type in io_base.cpp from int to size_t by @FengWang3119 in #834
- add mesh vtk by @Xiangyu-Hu in #835
- Update stfb.cpp by @Xiangyu-Hu in #837
- Xiangyu/revise neighbor method by @Xiangyu-Hu in #836
- ConfigType option to Contact<> by @Xiangyu-Hu in #838
- generalize unique pointer reduce dynamics by @Xiangyu-Hu in #839
- generalize interaction template by @Xiangyu-Hu in #840
- refac: mesh dynamics for device offloading by @Nafug22 in #823
New Contributors
- @NikolayShegunov-Virtonomy made their first contribution in #762
- @ShuangLi-1 made their first contribution in #715
- @Lirong-Zhuang made their first contribution in #821
Full Changelog: v1.1-sycl...v1.2-sycl
SPHinXsys 1.1 SYCL is ready for test
What's Changed
- T-shaped pipe of VIPO with shell by @ChenxiZhaoTUM in #643
- Xiangyu/revise bidirectional buffer by @Xiangyu-Hu in #658
- environment for sycl development and test by @Xiangyu-Hu in #618
- regenerate the regression file for the Eulerian supersonic flow case by @ZhentongWang in #652
- done by @Xiangyu-Hu in #660
- Remove split CCL by @WeiyiVirtonomy in #644
- Generalized non-hourglass formulation for ULSPH solid dynamics by @Shuaihao-Zhang in #651
- Xiangyu/revise update body relation by @Xiangyu-Hu in #665
- add test_2d_owsc_python case for deep reinforcement learning training by @maiyetum95 in #671
- Xiangyu/buffer consistency by @Xiangyu-Hu in #673
- Fix
TransformShape::findBounds
by @FabienPean-Virtonomy in #683 - implement mesh dynamics by @Nafug22 in #672
- regression test problem #469 by @Bo-Zhang1995 in #682
- add citation to main publication by @Xiangyu-Hu in #690
- Xiangyu/decouple computing from simbody by @Xiangyu-Hu in #691
- update a badge for qq group by @yyc84 in #696
- corrected the bug by @Xiangyu-Hu in #698
- Xiangyu/compute kernel for kernel correction by @Xiangyu-Hu in #701
- [Test] solid multi-resolution by @WeiyiVirtonomy in #634
- transport velocity in soil by @Shuaihao-Zhang in #685
- Cleaning up solid-multi-resolution by @WeiyiVirtonomy in #706
- Xiangyu/sycl loop ranges by @Xiangyu-Hu in #712
- inlined vector up and degrade by @Xiangyu-Hu in #703
- varify the sequences of advection_step_setup and close by @Xiangyu-Hu in #714
- Fix/delete assign material function by @Xiangyu-Hu in #716
- Xiangyu/physical closure by @Xiangyu-Hu in #717
- Now the aligned box becomes device copyable now. by @Xiangyu-Hu in #720
- naming velocity_j_in_wall and p_j_in_wall by @Shuaihao-Zhang in #726
- generalize 2- and 3d geomentric shape by @Xiangyu-Hu in #725
- increase buffer independency by @FengWang3119 in #727
- Add Surface Indication With CK/SYCL? Feature to SPHinXsys by @YuVirtonomy in #721
- using singular variable for aligned box by @Xiangyu-Hu in #729
- diffusion dynamics in SYCL by @Xiangyu-Hu in #719
- no memeber data in OperationOnDataAssemble by @Xiangyu-Hu in #731
- fix viscous force with wall in ck/sycl version (#732) by @YuVirtonomy in #734
- Ck sycl/transport velocity correction by @YuVirtonomy in #733
- Implementation of Standard k-ε Turbulence Model within ESPH by @Yashmandaokar in #724
New Contributors
Full Changelog: SPHinXsys1.0...v1.1-sycl
SPHinXsys 1.0 release 2024.09.14
This the final release of SPHinXsys before the transition to new version 2.0 for heterogeneous computing.
New updates (mainly bug fix) of the SPHinXsys 1.0 will be within the branch name version/1.0.
We will limit the adding of new features to this version.
Most of new features will be added in master branch for future releases under the version 2.0.
New features and new implementation level set creation
- New feature on fluid-shell and shell-shell interaction with examples.
- New examples on complex thermal problems (see examples on window frames).
- New implementation on level set creation using the open source library: https://github.com/InteractiveComputerGraphics/TriangleMeshDistance.
- Data structure further revised for general usage.
- Weakly compressible finite volume method using 3D mesh.
Linear gradient kernel correction generally applicable
Other new features, revision and bug fixes:
- Now, due to our new hourglass control method, the total Lagrangian SPH for solid dynamics is very stable for arbitrary materials.
- Dual time-step criteria method improved to achieve angular momentum conservation for inviscid flows.
- General continuum SPH model is developed for soil applications.
- Gravity, viscous force and other force can be updated in arbitrary frequency.
- Now, SPHinXsys naturally generalized mesh-based FVM method as a special case of SPH algorithm.
- Thermal optimization is included to shown the embedded optimization function in SPHinXsys.
- Novel pressure boundary condition is added for general channel flows.
- Coupling between fluid and one-side shell interactions is presented.
- Violent two phase flows can be robustly simulated with high resolutions.
- Transport formulation correction is now limited for flow region only with considerable zero-order consistency error.
Preview release of the GPU version using SYCL
This is a preview release of SPHinXsys in GPU version.
Currently, only the dam-break cases are running on GPU.
Please feel free to fork, try and test the performance.
For installing this version, please follow the instruction from
https://www.sphinxsys.org/html/installation.html#installing-sycl-version-on-ubuntu
If you have any suggestion or comments, please use the issue and discussion page.
You can also contact me (xiangyu.hu@tum.de) for possible collaborations on the GPU version.
New features & bug fix
- Now, the shell model is matured, we have provided with several new challenging cases.
- We have provided kernel correction method to solved the long standing excessive dissipation problem for general free surface flows.
- Bug in wall treatment Riemann problem is fixed.
- Free surface density evaluation fixed so the that free surface level is must more accurate now.
- New complex boundary conditions for diffusion reaction dynamics introduced. Now, SPHinXsys can handle heat transfer with arbitrary types of boundary conditions together.
- Python interface is provided for running and control SPHinXsys simulation in python environment.
Installation notes: install pybind11 in vcpkg is required.
Bug fix on Riemann solver and thin shell dynamics for better numerical stability
In this release, two important bug fixes have been included.
- Riemann solver will still be used for fluid-wall interaction, since some cases occasionally lead to very small times steps,
especially when the resolution is high.
2, The bug on numerical dissipation for thin shell structure has been corrected.
Now the simulation of thin shell problems do not require smaller time steps any more.
Eigen library, new features and faster fluid dynamics
In this release, the new features are:
- The library uses Eigen 3 for vector and matrix operations.
- The fluid dynamics has been further accelerated more than 30%.
- Dynamics algorithms are explicitly defined in case file.
- Level-set topological correction introduced for to great robustness in particle generation.
- Particle split and merge algorithms are included with a new dam-break case.
- Adaptive particle sizes and variable smoothing lengths can be used for fluid dynamics simulation.
Please check the project website www.sphinxsys.org for the updated installation instructions for Linux and Windows systems.
You are welcomed to try and comment this new release.
New features on geometry, contact and particle generation
In this release, the new features are:
- New geometric shape which is much faster than triangular mesh is introduced.
- General coordinate transformation is introduced to all shapes.
- Contact between volumetric and surface structures is introduced.
- Particle generation is generalized for volumetric and surface particles.
- Construction of adaptation, particles and materials now are based on factory methods.
Installation note:
Eigen 3 library is required for this release. You can download it from https://eigen.tuxfamily.org/index.php?title=Main_Page.
The eigen library source should be put in the folder 3rd_party/eigen.