**Update**James Kennedy reported a minor print error with regards to default smoothing length calculation. This has been corrected. Thanks James.

In Smoothed Particle Hydrodynamics (SPH), the particles not only pocess time-history variables such as density, displacement, velocity, acceleration, strrain-rate, stress-rate, etc but they also act as interpolation points. The space and time dependent variable called smoothing length is used to determine the region of influence of the neibhoring particles.

** Default smoothing length calculation **

In LS-DYNA, the initial smoothing length is constant for each part and is calculated as maximum value of all the minimum distance for each particle. For example, if we have three particle, A, B, C, then first the distance to the nearest particle is computed for all three particles. Lets assume the shortest distances for the particles A, B, and C are AD, BD, and CD respectively. The default smoothing length ** DSML ** is then taken as CLSH*maximum of (AD, BD, and CD) where CLSH is a scale factor to the initially computed smoothing length DSML can vary between HMIN * DSML and HMAX * DSML as the simulation progresses. The computed smoothing length at time zero is based on per part basis such that each part will have one smoothing length for all the particles that belongs to that part. After determining the initial smoothing length, it is recomputed every cycle for each particle based on the divergence of the velocity and can vary with repect to time and space.

** Time Derivative Of Smoothing Length **

There are two choices for recomputing the time-derivative of the smoothing length. The default method is based on the direct divergence of the velocity vector (IDERIV=0). Optionally, we can use the cube-root of the divergence which would yield a much smaller smoothing length by setting IDERIV=1. The minimum and maximum values of the smoothing length can further be limited to a minimum value (HMIN*h) and a maximum value (HMAX*h).

** Constant and User Specified Smoothing Length **

A constant smoothing length can be achieved by setting HMIN=HMAX=1.0. Optionally, a user-defined initial smoothing length can be specified using the variable SPHINI which will override values computed by LS-DYNA.

** User Defined Smoothing Length **

LS-DYNA also allows the user to embed his own routine to compute the smoothing length. Please see “Remark 3” in the LS-DYNA keyword manual under *SECTION_SPH for more information on this

Below are two studies in which a container with a fluid, modeled using SPH and Equation of State, is initialized for grativational forces. In the first study, the smoothing length is forced to be constant and small by setting HMIN=HMAX=0.1 which means that we are scaling the default smoothing length by taking on 10% of the initially computed value and also making it to be constant for the remainder of the simulation. As you can see in the animation (below), this causes a very small region of influence allowing particles to intially move freely which alters the total height of the fluid after the gravity initialization is completed. In the second case, the default smoothing length is alllowed to vary between values of HMIN*h and HMAX*h by setting HMIN=0.1 and HMAX=1.2. For a varying smoothing length, the CLSH further scales the initial smoothing length, h0, by 1.3 (default is 1.2). In this case, the correct height of the fluid is achieved since the influence of the particles are considered yielding a desired fluid level after the initialization due to gravity.

To speed up the smoothing length calculations and also the particle approximations, SPH taps into the bucket-sorting algorithm that was originally developed for contact in LS-DYNA.

** Viewing Smoothing Length in LS-PREPOST **

Smoothing length for each particle is written to the D3PLOT which can be read into LS-PREPOST directly. LS-PREPOST scales the smoothing length by a factor of 0.3 and uses it to render a sphere whose diameter is the scaled smoothing length. To view the raw smoothing length (radius=smoothing length), you can use the “Setting/SPH-Nodes” to reset to a scale factor of 1.0.

Dear Len,

The per part h0 calculation is mentioned in REMARK # 1 under *SECTION_SPH keyword. I hope this is what you were referring to.

Suri