The pile lateral load analysis program presented in a previous post used linear elastic spring supports to model the restraint provided by the soil. Soil stress/strain behaviour is of course highly non-linear, and this post presents an Excel User Defined Function (UDF) that will generate non-linear force-deflection curves (often known as P-Y curves) for a variety of soil types, above or below the water table, and under static or cyclic loading. This function will be incorporated in the pile analysis program in a future post, together with non-linear behaviour of reinforced concrete piles.
The curves are based on those described in the manual for the COM 624 pile analysis program, which is available for free download from the US FHWA, together with many other valuable documents. The contents of this manual, together with other aspects of pile design, are summarised in detail in the “Theoretical Manual for Pile Foundations” published by the US ArmyEngineer Research and Development Center. The linked download site, Vulcanhammer.net, also has a wealth of other documents related to piled foundations available for free download.
A spreadsheet containing the PY624 function and examples, including full open source code, may be downloaded from PY-COM624.zip. Note that the latest version of the LatPile spreadsheet incorporates significant changes to the PY curve function, giving closer results to those in the COM624 Manual. This may be downloaded from: LatPilePY.zip.
Input and output details are given in the spreadsheet, and are shown in the screenshots below, together with typical output for a variety of soil types. As always, feedback on the spreadsheet is welcome, using the comment link at the bottom of the post.

PY624 Function input

PY624 Function Output

Soft clay below water table, static load

Soft clay below water table, cyclic load

Stiff clay above water table

Stiff clay below water table, static

Stiff clay below water table, cyclic

Sand below water table, static

Sand below water table, cyclic