# I Plant bending physics

1. Jul 10, 2017

### accursedCursive

I'm trying to simulate plant evolution to see if there's a genetic reason why fronds are so common in nature, and one problem I've come across is branch physics.

Whenever a segment of a leaf or branch bends, not only does it affect the angle of all child segments (and thus how they'll bend), it affects the leverage the weight it carries has on its parent.

Thus, the only good way to calculate how every segment bends is to have some fancy formula that also takes into account how everything else will bend.
Is anyone here good enough at maths to do it?

Segments vary in size, flexibility, and density/thickness(difference doesn't matter), by the way.

2. Jul 10, 2017

### A.T.

Stuff like this is usually solved numerically, using finite elements.

3. Jul 10, 2017

### accursedCursive

I have no idea what any of that means, I'm just a programmer who hasn't done anything more mathematically difficult than graphics programming.

4. Jul 10, 2017

### A.T.

Have you tried a web search of the term?

5. Jul 10, 2017

### accursedCursive

I'm not looking for a highly-accurate engineering solution.
I just want segments that bend only at the joints between each other.

This has to be easily programmed and run extremely fast.

6. Jul 10, 2017

### accursedCursive

There isn't an exact geometric rule, that's the whole point of the evolution simulation.
And there is branching.
However, the deflection doesn't have to be a function, and there doesn't have to be just one calculation.

I just don't know a way to do this except by doing calculations that asymptotically move the branch towards stability.

7. Jul 10, 2017

### accursedCursive

You've missed the point of this completely.
My problem has nothing to do with how things grow, it's to do with how they bend under their own weight. I need a very efficient way of calculating it based on a tree of segments.

The entire point of this is to study the evolution of fractal patterns in leaf growth.

8. Jul 10, 2017

### 256bits

9. Jul 12, 2017

### accursedCursive

10. Jul 12, 2017

### A.T.

Some kind of iteration might be needed for the general case. But you might be able to optimize what you use now. Formulate your equilibrium condition based on your degrees of freedom (joint angles) and fixed parameters (joint stiffness, segment weights). Then ask in the math or computer science sub forums how to solve this equations most efficiently. Or search directly for computer science papers about simulating plant movement.

You might use some algorithm similar to inverse kinematics. In fact some inverse kinematics algorithms work by defining joint stiffness, and an attractive force between a skeleton part and its desired position. Then they solve for joint moment equilibrium. You just have to replace that force with gravity for all segments.

Last edited: Jul 12, 2017
11. Jul 12, 2017

### Nidum

No I haven't . I've just seen that there are more components to this problem than you have so far identified .

This is not difficult . You have a structure that is fixed only at one end . At simplest then what you have is a cascade of cantilevers . With each new cantilever added having it's own deflection and adding a new end load on the string of earlier ones . So for each new cantilever added a new end deflection for the string of earlier ones can be calculated and then the deflection of the new cantilever added on .

That as described is for a simple one stem structures with end growth but complex branching structures can be analysed in essentially the same way .

For case of a frond the problem can be modelled in 2-1/2 D . That is the basic geometry is considered to be on a flat plane but all deflections are normal to plane .

2-1/2 D model allows a very simple solution algorithm . Full 3D is perfectly possible but requires a much more complex solution algorithm .

Some complexities that you might want to add at a later date are that the earlier growths might continue to develop and become stronger as new outer components emerge and that environmental loading such as wind and rain may be as or more significant than simple gravity loading .

To start off on this work begin by studying :

Beam deflection theory .
Matrix methods for solving structural mechanics problems .

You could also usefully study :

FEA

12. Jul 12, 2017

### accursedCursive

It would be an easy-peasy problem if bending was a matter of only weight, and not torque.
The problem is, every time the deflection of a cantilever changes, the change in leverage causes it to change the deflection of the parent cantilever, and the change in deflection of course changes the deflection of any child cantilevers.
So, no matter where you start to do your calculations from, a change to anything changes everything, which of course is an unresolvable situation.
Maybe it asymptotically approaches the correct state, but that's poor efficiency.

Thus, the only efficient method is to calculate the bend of each segment in one go, since nothing can be changed.

13. Jul 12, 2017

### A.T.

What do you mean by "in one go"? Even if you formulate the system of equations for the entire tree, it will be nonlinear and require some iterative solver. Then you might just as well try iterative inverse kinematics algorithms. In any case, your question is not really about the physics of the problem, but more about numerics and efficient computing.

14. Jul 12, 2017

### Nidum

The parent cantilever before a child cantilever is attached has a known system of loads and known angular and linear displacements at the tip .

Adding a child cantilever adds new loads to the tip of the parent in the form of a force and a bending moment . This causes a change in the displacements at the tip of the parent .

The child cantilever has linear and angular tip deflections of it's own - as if it was attached to a wall - and additional tip displacements caused by the geometric effect of it being connected end on to the parent .

The final tip displacements of the child cantilever - now the tip displacements of the new parent - are fully determined .

Last edited: Jul 12, 2017