SPH Integration of Continuum Equations

In order to keep an almost constant number of neighbors contributing at each particle, use smoothing length varying in time and in space.

Consider d i the smoothing length related to particle i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyAaaaa@36E4@ ;

W j ( i ) = W ^ ( x i − x j , d i + d j 2 )

and ∇ W j ( i ) = g r a d | x i [ W ^ ( x − x j , d i + d j 2 ) ] if kernel correction or

W j ( i ) = W ( x i − x j , d i + d j 2 )

and ∇ W j ( i ) = g r a d | x i [ W ( x − x j , d i + d j 2 ) ] without kernel correction.

At each time step, density is updated for each particle i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyAaaaa@36E4@ , according to:

d ρ d t | i = − ρ i ∇ ⋅ v | i

with

∇ ⋅ v | i = ∑ m j ρ j ( v i − v j ) ⋅ ∇ W j ( i )

Where,
m j
Mass of a particle i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyAaaaa@36E4@
ρ i
Density
v j
Velocity

Strain tensor is obtained by the same way when non pure hydrodynamic laws are used or in the other words when law uses deviatoric terms of the strain tensor:

d v α d x β | i = ∑ m j ρ j ( v i α − v j α ) d W j d x β ( i ) , α = 1...3 , β = 1...3.

Next the constitutive law is integrated for each particle. Then Forces are computed according to:

m i d v d t | i = − ∑ j V i V j [ p i ∇ W j ( i ) − p j ∇ W i ( j ) ] − ∑ j m i m j π i j [ ∇ W j ( i ) − ∇ W i ( j ) ] 2

Where ρ i and p j are pressures at particles i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyAaaaa@36E4@ and j MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyAaaaa@36E4@ , and π i j is a term for artificial viscosity. The expression is more complex for non pure hydrodynamic laws.
Note: The previous equation reduces to the following one when there is no kernel correction:
m i d v d t | i = − ∑ j V i V j [ p i + p j ] ∇ W j ( i ) − ∑ j m i m j π i j ∇ W j ( i ) ,

since ∇ W i ( j ) = − ∇ W j ( i )

Then, in order particles to keep almost a constant number of neighbors into their kernels ( ρ d 3 is kept constant), search distances are updated according to:

d ( d i ) d t = d i ∇ ⋅ v | i 3