File Exchange

image thumbnail


version 1.0.1 (2.1 MB) by milan batista
Planar Cosserat rod


Updated 09 Dec 2019

View License

rod2d handle object is used for computation of planar Cosserat rod, i.e. extensible and shearable rod, which is based on the analytical solution given in [1]. The initial shape of the rod can be a straight line or a circular arc. The rod can be loaded by endpoint force and endpoint bending moment. The rod is specified once load (force F and its direction alpha) and integration parameters k and C are set. Calculation of k and C, (and maybe F and alpha) depends on boundary conditions. The user must, therefore, write function, which allows the calculation of unknown parameters. Once all the parameters are set, rod2d automatically compute coordinates of the rod, distribution of rotation angle, tangent angle, curvature, strains, internal forces and moment and rod length in user-specified arc-length coordinates. Rod2d contains several utilities for calculation of nonlinear equations (isolve1, isolve2), printing the results (info) and plotting the results ( contour, graph, plot , plotPhasePortrait). As an example package included a complete calculation for cantilever rod (bifurcation diagram, load-deflection diagram, follower load).
All data stored in rod2d object are dimensionless. With rod2dProp object one can compute dimensionless rod properties (slenderness, stiffness ratio, force and moment units) from given physical data.
Calculation with elliptic function is based on the elfun18 library [2] which is included in the package for convenience. The package also contains the draw19 library [3] which contains some plot utilities.
The manual can be downloaded from

[1] M.Batista, A closed-form solution for Reissner planar finite-strain beam using Jacobi elliptic functions, International Journal of Solids and Structures 87 (2016) 153–166
[2] draw2d (,
[3] elfun18

Cite As

milan batista (2020). rod2d (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (1)

D Swain



add link to manual

MATLAB Release Compatibility
Created with R2019b
Compatible with any release
Platform Compatibility
Windows macOS Linux