During this week, I implemented the last part of Phase-2. These included solve_for_ild_moment()
and plot_ild_moment()
functions. The solve_for_ild_moment()
function uses the solve_for_ild_reactions()
function and calculates the I.L.D. equations for moment at a point specified by the user. The derived equations can then be plotted using the plot_ild_moment()
function.
solve_for_ild_moment()
This function calculates the moment equations in terms of ‘x’. Here ‘x’ represents the distance of the moving load from the origin. Here is an example:
>>> from sympy import symbols
>>> from sympy.physics.continuum_mechanics.beam import Beam
>>> E, I = symbols('E, I')
>>> R_0, R_8 = symbols('R_0, R_8')
>>> b = Beam(12, E, I)
>>> b.apply_support(0, 'roller')
>>> b.apply_support(8, 'roller')
>>> b.solve_for_ild_reactions(1, R_0, R_8)
>>> b.solve_for_ild_moment(4, 1, R_0, R_8)
>>> b.ild_moment
Piecewise((-x/2, x < 4), (x/2 - 4, x > 4))
plot_ild_moment()
This function plots the above solved equations
>>> b.plot_ild_moment()
With this PR, Phase-2 ends. I have started working on Phase-3 functions. These include plotting function for shear stress in Beam class and Beam3D class and functions to find max shear force, bending moment and deflection in Beam3D class. Hopefully Phase-3 will get completed by the end of the next week.