# Continuum mechanics from a simple spring model?

I was trying to see if a simple spring model would reproduce continuum mechanics. My reasoning was that (at least in metals), the atoms form a lattice held together by forces that can be well described by Hooke's law.

I considered a 2D square lattice (the distance between the points is the equilibrium length of the spring) like this:

The mass points all have mass $$m$$ and are held by springs with spring constant $$k$$. Therefore, the force of gravity $$W=mg$$ acts on each mass, as well as Hookean forces in the springs.

If it were not for gravity, this configuration would be in equilibrium. However, the body should deform under gravity and I wrote a simple program to find the equilibrium configuration, with the points on the far left held in place (i.e., we should get a cantilevered beam in theory).

The results looked like this:

This does not at all look like a bent cantilever beam. However, I always got a similar result over many iterations of the values for $$m$$ and $$k$$. I therefore think that there is a problem with the model itself.

Can someone explain what the problem is and what would be a correct model that yields linear elasticity in the limit?

• Are you plotting the position of the masses in the deformed configuration? Each dot represents a mass? Commented Oct 2, 2022 at 16:21

There are many problems. The main is that two neighboring points of your model can only exchange forces along the direction joining them, i.e. no shear stress.

You need to exchange them even in small displacement limit, where you can linearize your equations (from your plot, i'm quite sure you performed a nonlinear simulation) if you want your model approximate well an elastic medium.

As a first try, let each pair of neighboring nodes be connected by a pair of springs:

• one that stretches in the same direction of the line joining the points in the undeformed condition;
• one that stretches in the perpendicular direction (this should start introducing some shear stress).
• Would springs that run "diagonally" also work? (I.e., not between immediate neighbours, but points on opposite vertices of the squares.) Commented Sep 7, 2022 at 8:54
• Everything works, depending on your concept of "working", i.e. the accuracy you need. I'd take the way I suggested in my answer Commented Sep 7, 2022 at 9:00
• And do you have any reference about approximating continuum mechanics by similar models? Commented Sep 7, 2022 at 9:47
• I disagree with @basic. One horizontal force + one vertical one = one diagonal force => shear. We need more information about the Math. I suspect the model does not account for the force of the wall on the left masses. You need to solve both the equations for the forces and the moments. $$\sum_ i \overrightarrow{ \mathscr{M}_{F_{i}}}= \overrightarrow{0}$$ $$\sum_ i \overrightarrow{ F_{i}}= \overrightarrow{0}$$ Please label the axis on your graph. Commented Sep 7, 2022 at 9:47
• @Shaktyai. I understand what you mean here, but I'd prefer a model with normal and shear stress that are decoupled, so that you can easily tune the model. I have no specific reference, but I'd suggest to have a look at finite element or finite volume approximations of the continuous problem, maybe starting with simple structural elements, like beams Commented Sep 7, 2022 at 9:55

You can have lattice models that yield continuum models (in the limit). One main issue with your example is that you have a really small example, for it to be considered a continuum you need repetition of your unit cell.

You can test the number of unit cells needed, I would guess that you need at least tenths in one direction and hundreds in the other.

I suggest the following:

1. Use an uniaxial problem
2. Compute a force vs displacement curve for each case
3. Estimate strain and stress from it and compute Young modulus
4. Repeat for a lattice with 4 times the number of cells (splitting each one in 4)

After this process, plot Young modulus vs number of particles. What you should see is that at some point the value start to be a constant. Above that you can consider your system to be a continuum, but that's not true below that value.

This method was introduced in: Hrennikoff, Alexander. "Solution of problems of elasticity by the framework method." (1941): A169-A175.

• While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. - From Review Commented Feb 17, 2023 at 15:06