Releases: trixi-framework/TrixiParticles.jl
v0.4.1
TrixiParticles v0.4.1
Merged pull requests:
- Implement Implicit Incompressible SPH (IISPH) (#751) (@noahstruschka)
- Split fluid and TLSPH time integration to allow for TLSPH substeps (#794) (@efaulhaber)
- Make
kernel_gradthreshold compatible with single precision and small particle spacing (#913) (@LasNikas) - Fix bib (#914) (@svchb)
- Set 0.4.1-dev (#916) (@svchb)
- Update program flow diagram (and use Mermaid.js to make it easy to modify) (#917) (@efaulhaber)
- CompatHelper: add new compat entry for Statistics at version 1, (keep existing compat) (#918) (@github-actions[bot])
- Remove test set steady state reached (
interval) (#920) (@LasNikas) - Fix
eltypeincompact_support(#921) (@LasNikas) - Fix
update_callback_usedwhenSaveSolutionCallbackcomes first (#924) (@efaulhaber) - Fix
requires_update_callbackof shifting techniques (#925) (@efaulhaber) - Fix
convert_particle!(#926) (@LasNikas) - Refactoring of IISPH Code (#927) (@noahstruschka)
- Prepare 0.4.1 release (#930) (@efaulhaber)
Closed issues:
- Inconsistencies in naming abstract types (#898)
v0.4.0
TrixiParticles v0.4.0
Breaking changes
-
Renamed
BoundarySPHSystemtoWallBoundarySystemand the keyword argument
movementtoprescribed_motion. -
Renamed
OpenBoundarySPHSystemtoOpenBoundarySystem. -
Renamed
BoundaryMovementtoPrescribedMotion. Themovement_functionmust now be
a function of(x, t)returning the new position instead of an offset.
For example,movement_function(t) = SVector(t, 0.0)now needs to be
movement_function(x, t) = x + SVector(t, 0.0). -
Renamed directory
solidtostructurein the examples file tree.
VTK files for theTotalLagrangianSPHSystemare now also calledstructure_*. -
Renamed keyword argument
n_fixed_particlesof theTotalLagrangianSPHSystem
ton_clamped_particles. -
API for
OpenBoundarySystemandBoundaryZonechanged.
It is now possible to pass multipleBoundaryZones to a singleOpenBoundarySystem.
Reference values are now assigned individually to eachBoundaryZone. (#866) -
Rename keyword arguments
planeandplane_normalforBoundaryZonetoboundary_faceandface_normal(#597). -
The argument of
TransportVelocityAdamiis now a keyword argument.
TransportVelocityAdami(1000.0)now becomes
TransportVelocityAdami(background_pressure=1000.0)(#884). -
Combined transport velocity formulation (TVF) and particle shifting technique (PST) into
one unified framework.
The keyword argumenttransport_velocitynow changed toshifting_technique.
TheParticleShiftingCallbackhas been removed. To use PST, use theUpdateCallback
instead, and passshifting_technique=ParticleShiftingTechniqueSun2017()to the system (#884). -
Renamed the keyword argument
tlsphtoplace_on_shellforParticlePackingSystem,
sample_boundary,extrude_geometry,RectangularShape, andSphereShape(#814). -
Custom quantity functions passed to
SolutionSavingCallbackorPostprocessCallback
that were not using the documented API but were functions of
(system, v_ode, u_ode, semi, t)now need to be functions
of(system, dv_ode, du_ode, v_ode, u_ode, semi, t)(#879). -
Renamed
each_moving_particletoeach_integrated_particle,
n_moving_particleston_integrated_particles
andactive_particlestoeach_active_particle.
Features
- Added consistent particle shifting by Sun et al. (2019) as
ConsistentShiftingSun2019(#888).
Merged pull requests:
- Define boundary zone from STL-file (#597) (@LasNikas)
- Write metadata to a dedicated JSON file (#737) (@marcelschurer)
- Merge dev to main (#832) (@svchb)
- Implement consistent shifting by Sun et al. 2019 (#888) (@efaulhaber)
- Make EDAC more consistent (#902) (@LasNikas)
- Renamings 1 (#903) (@efaulhaber)
- Renamings 2 (#904) (@efaulhaber)
- Renamings 3 (#905) (@efaulhaber)
- Restructure boundary files (#908) (@efaulhaber)
- Make
PrescribedMotionmore powerful by passing the initial position (#909) (@efaulhaber) - Fix GPU tests, GPU interpolation and GPU postprocessing (#912) (@LasNikas)
v0.3.2
TrixiParticles v0.3.2
Merged pull requests:
- Add descriptive header to each example (#815) (@svchb)
- Clean up timer outputs (#819) (@efaulhaber)
- Averaged inflow velocity (#833) (@LasNikas)
- Make PST work for different smoothing length factors (#834) (@efaulhaber)
- Update News.md for 0.3.1 (#838) (@svchb)
- Remove duplicate pressure limiting for Adami BC (#839) (@efaulhaber)
- Write displacement for TLSPH systems (#840) (@LasNikas)
- CompatHelper: bump compat for CairoMakie to 0.15 for package test, (keep existing compat) (#841) (@github-actions[bot])
- Show parallelization backend and Julia version in info callback (#842) (@efaulhaber)
- Fix merge error (#845) (@svchb)
- Packing tutorial (#847) (@LasNikas)
- Avoid
atomic_casin open boundaries and add gpu tests (#849) (@LasNikas) - Bump crate-ci/typos from 1.32.0 to 1.34.0 (#851) (@dependabot[bot])
- Fix Adami boundary viscosity (#853) (@efaulhaber)
- Fix OBC extrapolation (again) (#855) (@LasNikas)
- Improve plot recipes (#862) (@efaulhaber)
- Restructure TVF (#864) (@efaulhaber)
- Revise open boundaries (#866) (@LasNikas)
- Make
custom_quantitiesGPU compatible (#867) (@LasNikas) - Reduce info prints (#868) (@LasNikas)
- Add viscosity to
TotalLagrangianSPHSystem(#869) (@efaulhaber) - DummyParticles with ContinuityDensity on GPU is broken (#870) (@svchb)
- Make TVF GPU compatible (#872) (@svchb)
- CompatHelper: add new compat entry for Literate at version 2 for package docs, (keep existing compat) (#877) (@github-actions[bot])
- Add
dvdu_odevector tocustom_quantities(#879) (@LasNikas) - Make average pressure reduction for EDAC independent of TVF (#882) (@efaulhaber)
- Move update_callback_used flag to semidiscretization (#883) (@efaulhaber)
- Combine PST and TVF into a unified framework (#884) (@efaulhaber)
- Fix
von_mises_stressinterpolation and add safety checks for particle spacing uniformity in set operations (#886) (@LasNikas) - Bump actions/checkout from 4 to 5 (#889) (@dependabot[bot])
- Bump crate-ci/typos from 1.34.0 to 1.35.7 (#890) (@dependabot[bot])
- Incorrect Smoothing Length (#891) (@svchb)
- Fix pressure setter (#894) (@LasNikas)
- Release 0.3.2 (#901) (@svchb)
Closed issues:
- Verify FSI with results from the paper (#23)
- Basic sea spray simulation (#43)
- Fix
BoundaryModelDummyParticles()for FSI (#53) - Visualization master plan (#71)
- Before Public Release (#95)
- Data format definition for 2D geometries is unclear (#818)
- Call of
evaluate_characteristics!is misleading (#823) - Change indexing approach for
active_particles(#850) custom_quantitiesnot GPU compatible (#859)- More descriptive names for open boundary models (#861)
v0.3.1
TrixiParticles v0.3.1
Merged pull requests:
- Implement threaded broadcast array type to make time integration multithreaded (#722) (@efaulhaber)
- CompatHelper: bump compat for ForwardDiff to 1, (keep existing compat) (#738) (@github-actions[bot])
- Add simple SGS to Adami and Morris Viscosity (#753) (@svchb)
- Improve plane interpolation performance (#763) (@efaulhaber)
- Implement Tensile Instability Control (TIC) (#769) (@efaulhaber)
- Open boundaries - NHS fix and thread supported loop (#773) (@LasNikas)
- Add docs particle packing (#797) (@LasNikas)
- Fix Validation Setups (#801) (@svchb)
- Fix tests:
count_allocations(#804) (@LasNikas) - Fix error message when using TVF without UpdateCB (#807) (@svchb)
- Separate computed and interpolated density in interpolation (#808) (@LasNikas)
- Fix allocations caused by branching with 1.10 (#809) (@svchb)
- Fix
tspanin example tests (#811) (@LasNikas) - Interpolation on GPU (#812) (@LasNikas)
- Make PST GPU-compatible (#813) (@efaulhaber)
- Rename 'tlsph' to 'place_on_shell' (#814) (@svchb)
- Fix doc test (#816) (@svchb)
- Make tests run on Metal (#817) (@efaulhaber)
- Bump crate-ci/typos from 1.31.2 to 1.32.0 (#820) (@dependabot[bot])
- Add DXF file format for
load_geometry(#821) (@LasNikas) - Fix
current_velocityfor EDAC (#825) (@LasNikas) - Fix
smoothing_length_factor(#828) (@LasNikas) - Fix tafuni extrapolation (#829) (@LasNikas)
- Fix advection velocity for packing (#835) (@LasNikas)
- Mark version 0.3.1 (#836) (@LasNikas)
Closed issues:
- Drop Support for Julia 1.9 (#672)
- No error is thrown when using TVF without
UpdateCallback(#767) - Disabling multithreading is broken (#788)
- Interpolation returns computed density rather than the interpolated density (#796)
- NUMA awareness (#805)
- Density diffusion update doesn't scale nicely inside a simulation (#806)
v0.3.0
TrixiParticles v0.3.0
Breaking Changes
-
Rescaled the Wendland kernels by a factor of 2 to be consistent with literature.
This requires adjusting the previously used smoothing length for the Wendland Kernels
by dividing them by 2 as well to obtain the same results (#775). -
The API for custom quantities and functions in the
PostprocessCallbackchanged (#755). -
The API for choosing parallelization backends changed. The keyword argument
data_type
insemidiscretizewas removed and a keyword argumentparallelization_backendwas added
toSemidiscretization. See the docs on GPU support for more details. -
The API for the
DEMSystemchanged (#756).
Merged pull requests:
- add
BoundaryModelTafuni(#574) (@LasNikas) - Make Adami loop flipping optimization optional (#581) (@efaulhaber)
- Transport Velocity Formulation for WCSPH (#600) (@LasNikas)
- Implement the time integration method used in DualSPHysics and add docs for time integration (#716) (@efaulhaber)
- Viscosity Doc Refactoring (#725) (@svchb)
- Read VTK simulation files into Trixi (#731) (@marcelschurer)
- Rework particle packing (#732) (@LasNikas)
- Implement the Particle Shifting Technique (PST) (#735) (@efaulhaber)
- Add variable smoothing length (#736) (@LasNikas)
- Fix FSI-Open Boundary interaction and add variable material parameters (#740) (@LasNikas)
- Mark dev 2.8 (#746) (@svchb)
- Refactor parallelization backends (#748) (@efaulhaber)
- CompatHelper: add new compat entry for OrdinaryDiffEqCore in [weakdeps] at version 1, (keep existing compat) (#750) (@github-actions[bot])
- Fix missed
@threaded semi(#752) (@LasNikas) - Rework custom quantities (#755) (@efaulhaber)
- DEM improvements (#756) (@svchb)
- Consider
DensityDiffusionAntuonoinallocate_buffer(#761) (@LasNikas) - Suppress iteration over inactive particles (#765) (@LasNikas)
- Remove unnecessary timers (#766) (@efaulhaber)
- Update to fixed version of WriteVTK (#770) (@svchb)
- Rescale Wendland kernels (#775) (@efaulhaber)
- Hotfix for unit tests (#776) (@efaulhaber)
- Update julia formatter (#778) (@svchb)
- Visualization doc: How to scale point size in ParaView (#779) (@LasNikas)
- Bump crate-ci/typos from 1.31.1 to 1.31.2 (#787) (@dependabot[bot])
- Merge
devintomain(#789) (@efaulhaber) - Add full support for parallelization backends (#790) (@efaulhaber)
- CompatHelper: add new compat entry for ReadVTK at version 0.2, (keep existing compat) (#791) (@github-actions[bot])
- Use TrixiTest.jl (#798) (@JoshuaLampert)
Closed issues:
v0.2.7
TrixiParticles v0.2.7
Merged pull requests:
- Implement Morris surface tension model (#584) (@svchb)
- Revise boundary zones and allow bidirectional flow (#623) (@LasNikas)
- Make GPUs actually usable (#689) (@efaulhaber)
- Mark dev version (#713) (@svchb)
- Bump crate-ci/typos from 1.29.0 to 1.29.5 (#715) (@dependabot[bot])
- Avoid using 'min' Julia version in CI (#721) (@efaulhaber)
- Use JuliaGPU Buildkite CI for GPU tests (#723) (@efaulhaber)
- Fix doctests (#727) (@efaulhaber)
- Bump crate-ci/typos from 1.29.5 to 1.30.0 (#729) (@dependabot[bot])
- Bump crate-ci/typos from 1.30.0 to 1.31.1 (#743) (@dependabot[bot])
v0.2.6
TrixiParticles v0.2.6
Merged pull requests:
- Generalize surface normal calc (#539) (@svchb)
- Switch default for foreach_point_neighbor (#687) (@svchb)
- Add test for Adami Pressure Extrapolation. (#692) (@RubberLanding)
- Set to Version 0.2.6-dev (#704) (@svchb)
- CompatHelper: bump compat for CairoMakie to 0.13 for package test, (keep existing compat) (#705) (@github-actions[bot])
- minor changes for JOSS publication (#708) (@danielskatz)
- Add JOSS Paper (#709) (@svchb)
- Docs tutorial: add more information on the speed of sound (#710) (@efaulhaber)
v0.2.5
TrixiParticles v0.2.5
Merged pull requests:
- Particle packing (#529) (@LasNikas)
- Drop support for Julia 1.9 (#703) (@efaulhaber)
Closed issues:
v0.2.4
TrixiParticles v0.2.4
Merged pull requests:
- Boundary Pressure Calculation for FSI (#498) (@svchb)
- Add tutorial for setting up a simulation (#514) (@efaulhaber)
- Add Logo (#575) (@svchb)
- Steady state callback (#601) (@LasNikas)
- Add ideal gas equation (#607) (@svchb)
- Fixes for Open Boundary Systems for free surfaces (#609) (@svchb)
- Add set operations for geometries (#636) (@LasNikas)
- Fix the URL's in the docs (#637) (@RubberLanding)
- Set to Version 0.2.4-dev (#639) (@svchb)
- Validation TVF (#640) (@LasNikas)
- Bump crate-ci/typos from 1.25.0 to 1.26.8 (#641) (@dependabot[bot])
- Avoid bounds checking where it is safe to do so (#656) (@efaulhaber)
- Clarify statement of need (#658) (@svchb)
- Fix image path (#659) (@svchb)
- Add docs for GPU support (#660) (@efaulhaber)
- Use latest version of JuliaFormatter (#661) (@efaulhaber)
- Make simulations run with
Float32(#662) (@efaulhaber) - Fix installation instructions for developers in the docs (#663) (@efaulhaber)
- Test docs on win (#664) (@svchb)
- Fix callback
showand remove hacky workaround (#669) (@efaulhaber) - Improve Test Coverage (#674) (@svchb)
- Plot recipes: support automatic marker size with
xlimsandylims(#677) (@LasNikas) - Bump crate-ci/typos from 1.26.8 to 1.28.1 (#678) (@dependabot[bot])
- Bump codecov/codecov-action from 4 to 5 (#679) (@dependabot[bot])
- Use Asciicast.jl to display console output (#684) (@efaulhaber)
- Bump crate-ci/typos from 1.28.1 to 1.29.0 (#690) (@dependabot[bot])
- Add proper
showforInitialConditionand geometries (#695) (@LasNikas) - Make
load_geometrytype stable (#696) (@LasNikas) - CompatHelper: bump compat for CairoMakie to 0.13 for package test, (keep existing compat) (#697) (@github-actions[bot])
- CompatHelper: add new compat entry for TrixiParticles at version 0.2 for package docs, (keep existing compat) (#700) (@github-actions[bot])
Closed issues:
v0.2.3
TrixiParticles v0.2.3
Merged pull requests:
- Reopen #221: Transport Velocity for EDAC (#436) (@LasNikas)
- Complex shapes docs (#587) (@LasNikas)
- Cleanup examples (#592) (@svchb)
- Mark development version 0.2.3 (#595) (@svchb)
- Add citation bibliography (#596) (@LasNikas)
- Prepare CI for 1.11 release (#599) (@svchb)
- Fix moving boundaries (#603) (@LasNikas)
- Remove soundspeed from openboundary system (#605) (@svchb)
- Skip empty systems (#606) (@svchb)
- Artificial Density Diffusion should only be applied to the same system (#608) (@svchb)
- Remove unsafe bitsets (#610) (@svchb)
- Bump crate-ci/typos from 1.23.6 to 1.24.3 (#612) (@dependabot[bot])
- Add YouTube video of JuliaCon talk to README (#614) (@efaulhaber)
- Rename
WindingNumberHormantoWindingNumberHormann(#615) (@LasNikas) - [paper] Fix formatting of citations (#616) (@giordano)
- [docs] Point to downloads page to install julia (#617) (@giordano)
- Fix sign in
OutFlow(#621) (@LasNikas) - Bump crate-ci/typos from 1.24.3 to 1.25.0 (#624) (@dependabot[bot])
- Fix tests for TimerOutputs (#626) (@efaulhaber)
- CompatHelper: bump compat for GPUArraysCore to 0.2, (keep existing compat) (#628) (@github-actions[bot])
- Fix getting started docs (#631) (@efaulhaber)
- Fix plotting of
ODESolution(#632) (@efaulhaber) - CompatHelper: add new compat entry for Plots at version 1 for package docs, (keep existing compat) (#634) (@github-actions[bot])
Closed issues: