Thank You Tim and Jason for your suggestions and clearing my doubts.

We can also have an another module for solving beam problems. As Jason Have
suggested earlier.

Some of its classes would be Beam, DistributedLoad, PointLoad, Moment.

We can have the API as:-

from sympy import SingularityFunction,Beam,DistributedLoad,PointLoad,Moment
b = Beam(length = 1, E = 1.87, I = 12)
Load1 = DistrubutedLoad(start=l/2, end=l, value= 50)
Load2 = PointLoad(location=l/3, value=60)
Load3 = Moment(locaton = 1, value = 40, anticlockwise = True)
b.apply(Load1,Load2,Load3)
b.loadDistribution    # Outputs the loading function in the form of
singularity function
b.shearForce          # Outputs the Shear Force  Function
b.bendingMoment       # Outputs the bending Moment Function
b.slope               # Outputs the Slope Function
b.deflection          # Outputs the deflection Function

b.plotLoadDistribution   # Outputs the plot of load Distribution Curve
b.plotBendingMoment      # Outputs the plot of Bending Moment Curve
b.plotDeflection         # Outputs the plot of Deflection Curve




Regards
Sampad Kumar Saha
Mathematics and Computing
I.I.T. Kharagpur

On Wed, Mar 16, 2016 at 2:45 AM, Tim Lahey <[email protected]> wrote:

> I agree. One should start directly from the loading function q(x). The
> general steps are:
>
> 1. Start with the loading function q(x)
> 2. Integrate to get the shear function V(x).
> 3. Integrate again to get the bending moment function M(x).
> 4. Integrate to get the slope function E*I*v’(x).
> 5. Integrate to get the displacement function E*I*v(x).
>
> Note that the singularity functions can be multiplied by arbitrary
> functions of x as well. This allows for varied loads and cases where E and
> I vary too. To be strictly correct one should include the integration
> constants as well and then solve for the reaction forces and the constants.
>
> You’ll need to carefully consider how you handle evaluating at transition
> points, especially the beam boundaries.
>
> Cheers,
>
> Tim.
>
> > On Mar 15, 2016, at 4:53 PM, Jason Moore <[email protected]> wrote:
> >
> > I think you'd want the user to input the loads on the beam as
> singularity functions or some higher level abstraction. If you require them
> to manually compute the bending moment then you are defeating the purpose
> of having a CAS do it for you.
> >
> >
> > Jason
> > moorepants.info
> > +01 530-601-9791
> >
> > On Sun, Mar 13, 2016 at 2:25 PM, SAMPAD SAHA <[email protected]>
> wrote:
> > Hi Jason,
> >
> > I have a confusion regarding the user inputs for the beam problems.
> >
> > I think that we should take only the Bending Moment Function (in the
> form of singularity functions) and the boundary conditions as inputs.
> >
> > I mean to say that generally in a given beam bending problem, a diagram
> of a beam and distributed loads are provided. So it is not possible to get
> these data as an user input. Rather we can expect that the user would
> formulate the bending moment function, in the form of Singularity function,
> and then provide that function as an input for getting the elastic curve
> equation.
> >
> > Note:- Values of  E , I , Boundary Conditions are also expected as an
> input.
> >
> > I need your suggestions.
> >
> >
> >
> > -----------------
> > Regards,
> > Sampad
> >
> >
> >
> >
> >
> > Regards
> > Sampad Kumar Saha
> > Mathematics and Computing
> > I.I.T. Kharagpur
> >
> > On Sat, Mar 12, 2016 at 11:50 AM, Aaron Meurer <[email protected]>
> wrote:
> > It should give (-1)**n*f^(n)(0) (that is, (-1)**n*diff(f(x), x,
> n).subs(x, 0)), if I remember the formula correctly.
> >
> > Aaron Meurer
> >
> > On Fri, Mar 11, 2016 at 9:00 AM, SAMPAD SAHA <[email protected]>
> wrote:
> > Hi Aaron,
> >
> > I have a doubt .
> >
> > Do we want:
> >
> >
> >  integrate(f(x)*DiracDelta(x, n), (x, -oo, oo)) would output as
> >
> > <image.png>
> >
> >
> >
> >
> >
> > Regards
> > Sampad Kumar Saha
> > Mathematics and Computing
> > I.I.T. Kharagpur
> >
> > On Wed, Mar 9, 2016 at 3:11 AM, Aaron Meurer <[email protected]> wrote:
> > DiracDelta(x, k) gives the k-th derivative of DiracDelta(x) (or you
> > can write DiracDelta(x).diff(x, k)).
> >
> > It does look like the delta integrate routines could be improved here,
> though:
> >
> > In [2]: integrate(f(x)*DiracDelta(x), (x, -oo, oo))
> > Out[2]: f(0)
> >
> > In [3]: integrate(f(x)*DiracDelta(x, 1), (x, -oo, oo))
> > Out[3]:
> > ∞
> > ⌠
> > ⎮  f(x)⋅DiracDelta(x, 1) dx
> > ⌡
> > -∞
> >
> > Since the integration rules for derivatives of delta functions are
> > simple extensions of the rules for the delta function itself, this is
> > probably not difficult to fix.
> >
> > Aaron Meurer
> >
> > On Mon, Feb 29, 2016 at 3:39 AM, Tim Lahey <[email protected]> wrote:
> > > Hi,
> > >
> > > Singularity functions are actually extremely easy to implement given
> that we have a Dirac delta and Heaviside functions. Assuming that the Dirac
> delta and Heaviside functions properly handle calculus, it’s trivial to
> wrap them for use as singularity functions. The only thing that will need
> to be added is the derivative of the Dirac delta (assuming it’s not already
> there). I implemented singularity functions in Maple in less than an
> afternoon.
> > >
> > > I was a TA for a Mechanics of Deformable Solids course about 11 or 12
> times and wrote it to help the students (as we have a site license for
> Maple). I also wrote a set of lecture notes on the topic.
> > >
> > > Cheers,
> > >
> > > Tim.
> > >
> > >> On Feb 26, 2016, at 4:29 PM, SAMPAD SAHA <[email protected]>
> wrote:
> > >>
> > >> Hi Jason,
> > >>
> > >> Thank you for the explanation. It really helped me.
> > >>
> > >> So, basically we want to start it, firstly, by creating a module
> which would deal with the mathematical operations performed on Singularity
> Functions. After this whole module is prepared, we would focus on how to
> use this module for solving beam problems. Am I correct?
> > >>
> > >> Can you please explain me in brief that what are the mathematical
> operations we wanted to implement on that module?
> > >>
> > >>
> > >> On Friday, February 26, 2016 at 4:54:59 PM UTC+5:30, SAMPAD SAHA
> wrote:
> > >>
> > >> Hi,
> > >>
> > >> I am Sampad Kumar Saha , an Undergraduate Mathematics and Computing
> Student at I.I.T. Kharagpur.
> > >>
> > >> I have gone through the idea page and I am interested in working on
> the project named Singularity Function.
> > >>
> > >> By going through the Idea, I understood that we want to add a package
> to Sympy which can be used for for solving beam bending stress and
> deflection problems using singularity function. Am I correct?
> > >>
> > >> We can by this way:-
> > >> While solving we will be having the moment function as an input which
> we can arrange in the form of singularity functions and then integrate it
> twice to get the deflection curve and we can give the plot or the equation
> obtained of deflection curve as an output.
> > >>
> > >> I have gone through some documents available on internet which have
> brief studies on solving beam bending stress and deflection problems using
> singularity functions.
> > >>
> > >> References:-
> > >>       • Beam Deflection By Discontinuity Functions.
> > >>       • Beam Equation Using Singularity Functions.
> > >>       • Enhanced Student Learning in Engineering Courses with CAS
> Technology.
> > >> Since there is just a brief idea given in the idea page, I have a
> doubt that what are the things other than solving beam bending stress and
> deflection problems to be implemented in the project?
> > >>
> > >> Any type of suggestions are welcome.
> > >>
> > >>
> ==========================================================================================================================================
> > >> Regards
> > >> Sampad Kumar Saha
> > >> Mathematics and Computing
> > >> I.I.T. Kharagpur
> > >>
> > >> --
> > >> You received this message because you are subscribed to the Google
> Groups "sympy" group.
> > >> To unsubscribe from this group and stop receiving emails from it,
> send an email to [email protected].
> > >> To post to this group, send email to [email protected].
> > >> Visit this group at https://groups.google.com/group/sympy.
> > >> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sympy/7cbe2101-fd59-484b-9e25-f563636d6366%40googlegroups.com
> .
> > >> For more options, visit https://groups.google.com/d/optout.
> > >
> > > --
> > > You received this message because you are subscribed to the Google
> Groups "sympy" group.
> > > To unsubscribe from this group and stop receiving emails from it, send
> an email to [email protected].
> > > To post to this group, send email to [email protected].
> > > Visit this group at https://groups.google.com/group/sympy.
> > > To view this discussion on the web visit
> https://groups.google.com/d/msgid/sympy/1795A385-4AEA-44FD-BEE8-8115D53DA14B%40gmail.com
> .
> > > For more options, visit https://groups.google.com/d/optout.
> >
> > --
> > You received this message because you are subscribed to the Google
> Groups "sympy" group.
> > To unsubscribe from this group and stop receiving emails from it, send
> an email to [email protected].
> > To post to this group, send email to [email protected].
> > Visit this group at https://groups.google.com/group/sympy.
> > To view this discussion on the web visit
> https://groups.google.com/d/msgid/sympy/CAKgW%3D6JiW6zhx%3DcTahjcugKaR3jOTrYOnFJWYRr-%2BNiS-2zcLQ%40mail.gmail.com
> .
> > For more options, visit https://groups.google.com/d/optout.
> >
> >
> > --
> > You received this message because you are subscribed to the Google
> Groups "sympy" group.
> > To unsubscribe from this group and stop receiving emails from it, send
> an email to [email protected].
> > To post to this group, send email to [email protected].
> > Visit this group at https://groups.google.com/group/sympy.
> > To view this discussion on the web visit
> https://groups.google.com/d/msgid/sympy/CANzav4HrH7YbrOm4%3D9s2%2BHevCnCv4vz1RbuU%2BZWwLWLnCZpbcw%40mail.gmail.com
> .
> >
> > For more options, visit https://groups.google.com/d/optout.
> >
> >
> > --
> > You received this message because you are subscribed to the Google
> Groups "sympy" group.
> > To unsubscribe from this group and stop receiving emails from it, send
> an email to [email protected].
> > To post to this group, send email to [email protected].
> > Visit this group at https://groups.google.com/group/sympy.
> > To view this discussion on the web visit
> https://groups.google.com/d/msgid/sympy/CAKgW%3D6KrEOoZ-CvGJ_HTBVSpTLVkW6geUfvXdP8GAiBNO4y8qQ%40mail.gmail.com
> .
> >
> > For more options, visit https://groups.google.com/d/optout.
> >
> >
> > --
> > You received this message because you are subscribed to the Google
> Groups "sympy" group.
> > To unsubscribe from this group and stop receiving emails from it, send
> an email to [email protected].
> > To post to this group, send email to [email protected].
> > Visit this group at https://groups.google.com/group/sympy.
> > To view this discussion on the web visit
> https://groups.google.com/d/msgid/sympy/CANzav4EeosCsLaP55dwMpKxOxBkGhW6ZAkeCQiSvQnXtieU6PQ%40mail.gmail.com
> .
> >
> > For more options, visit https://groups.google.com/d/optout.
> >
> >
> > --
> > You received this message because you are subscribed to the Google
> Groups "sympy" group.
> > To unsubscribe from this group and stop receiving emails from it, send
> an email to [email protected].
> > To post to this group, send email to [email protected].
> > Visit this group at https://groups.google.com/group/sympy.
> > To view this discussion on the web visit
> https://groups.google.com/d/msgid/sympy/CAP7f1AjHOvGfvxRfOTy2RhRm3YnNc_eJ9OpjBOain6iK15chMA%40mail.gmail.com
> .
> > For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/sympy.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sympy/B66DECFB-0205-41DC-A09D-342BBDF6FAC4%40gmail.com
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CANzav4EdwS7M83pouux5JsvAVOw3nFxj6T4ygXjY5y_efLC9YQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to