I have a relatively simple program that applies lateral displacement to the head of a pile embedded in a soil profile. The pile is defined using nonlinearBeamColumn elements for flexure along with elastic models for shear and axial response. Soil is defined by pySimple1. Both the structural and soil models seem to be stable on their own, as I have written separate programs to test individual elements to large displacement and they are stable.
When I run my analysis, convergence is sensitive to the length of the discrete pile elements. For example, if I discretize a 150m long pile into 100 elements, or a 15m pile into 10 elements (so element length = 1.5m), the analysis will converge. If I discretize the same models into more elements, for example such that the element length is 1m, it will not converge. I have also tried altering the number of iteration points per element, but this doesn't seem to help.
Any ideas on why it might be behaving this way? It seems like having more elements (i.e., shorter element length) should make the analysis more stable, so I must be missing something here. Am I perhaps concentrating too much plasticity in a single element and causing it to fail?
convergence problem related to length of elements
Moderators: silvia, selimgunay, Moderators
Re: convergence problem related to length of elements
use the dispBeamColumn element instead. adding more elements to your nonlinear problem does not make it more stable, can actually makes it more unstable. think of a simple nonlinear cantilever that will hinge at base. as add more elements, hinge length gets smaller and smaller.