Jason,

I went through the ode package. I felt that it would be difficult to use
boundary condition to solve for the constants of integration using the
exisiting *dsolve() *method. It seems that it is still under development.

So I thought of implementing that functionality explicitly for solving beam
problems.

I would be taking Boundary conditions as input as:

*bcs = Beam.BoundaryCondition( {f(0) : 5, f.diff(0) : 4 } )* and so on.

If nothing is provided then  *f(0) !=  0 , f.diff(0) = 0 *or something like
this would be assumed.

Depending on this boundary condition I would add the required constants by
myself while finding the slope and deflection function and output the value
by solving for those constants.

By this way, the hack would be easier. What do you suggests?






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

On Sat, Mar 19, 2016 at 7:17 AM, SAMPAD SAHA <sampadsa...@gmail.com> wrote:

> Yah, you are right . We should not have the name simplify() as a method
> since it have already created some issues in  #7716
> <https://github.com/sympy/sympy/issues/7716> and #8798
> <https://github.com/sympy/sympy/issues/8798>. So i will keep it as
> *to_piecewise()*  . it would be fine then.
>
> As you suggested I will be look at ode package for this constant of
> integration thing.
>
> Thank You...
>
>
>
>
> Regards
> Sampad Kumar Saha
> Mathematics and Computing
> I.I.T. Kharagpur
>
> On Sat, Mar 19, 2016 at 7:07 AM, Jason Moore <moorepa...@gmail.com> wrote:
>
>> Simplification means something very specific in SymPy, see the simplify()
>> function. I think you need to choose a different method name for converting
>> to piecewise continuous. Maybe: .to_piecewise()?
>>
>> You will need to implement some method for dealing with the constants of
>> integration and boundary conditions. Maybe you should have a look at the
>> ordinary differential equations package in SymPy to get some ideas about
>> that.
>>
>>
>> Jason
>> moorepants.info
>> +01 530-601-9791
>>
>> On Fri, Mar 18, 2016 at 4:04 PM, SAMPAD SAHA <sampadsa...@gmail.com>
>> wrote:
>>
>>> Thank You Jason for the appreciation.
>>>
>>> Yah, that *Simplify  * method would convert  into continous piecewise.
>>> Like this :-
>>>
>>> In    [ ] : F = singularityFunc(x, 0, 1) +  singularityFunc(x, 3, 2)
>>>
>>> In    [ ] : F
>>> Out [ ] :
>>>                     2
>>> <x> + <x - 3>
>>>
>>> In [ ] : F.simplify()
>>> Out [ ] :
>>>
>>> 0                   for x < 0
>>> x                   for 0 <= x < 3
>>> x + (x-3)^2    for x  >= 3
>>>
>>>
>>> As you have suggested earlier, I have solved some examples by hand and
>>> then tried to implement a desired api. From that I came to this conclusion
>>> that if we implement Addition, Substraction, Integration,
>>> Differentiation, Simplify on Singularity Functions then we can successfully
>>> solve out the beam problems.
>>>
>>> But i got doubt while implementing the boundary constants. I mean to say
>>> that sympy dont gives constant of integration while doing indefinite
>>> integration. We can take boundary conditions as input from users that is
>>> not a problem, but we cant use it since there will be no constant of
>>> integration.
>>>
>>>
>>>
>>> Regards
>>> Sampad Kumar Saha
>>> Mathematics and Computing
>>> I.I.T. Kharagpur
>>>
>>> On Sat, Mar 19, 2016 at 4:07 AM, Jason Moore <moorepa...@gmail.com>
>>> wrote:
>>>
>>>> Sounds like a good start. How about a method to convert to continuous
>>>> piecewise?
>>>>
>>>> Like I said earlier, you should pick some examples that you want the
>>>> software to be able to solve and then implement methods and functionality
>>>> based on those examples. It's hard to think of all the needed functionality
>>>> and API without motivating examples first.
>>>>
>>>>
>>>> Jason
>>>> moorepants.info
>>>> +01 530-601-9791
>>>>
>>>> On Fri, Mar 18, 2016 at 10:27 AM, SAMPAD SAHA <sampadsa...@gmail.com>
>>>> wrote:
>>>>
>>>>> Jason,
>>>>>
>>>>> I have thought of implementing Addition, Substraction, Integration,
>>>>> Differentiation, Simplify on Singularity Functions.
>>>>>
>>>>> What are the other functionalities we should implement?
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Regards
>>>>> Sampad Kumar Saha
>>>>> Mathematics and Computing
>>>>> I.I.T. Kharagpur
>>>>>
>>>>> On Fri, Mar 18, 2016 at 8:16 PM, SAMPAD SAHA <sampadsa...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Yah you are correct. Differentiation of heaviside and diracdelta also
>>>>>> exists.
>>>>>>
>>>>>> It was my mistake. Thanks for rectifying me.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Regards
>>>>>> Sampad Kumar Saha
>>>>>> Mathematics and Computing
>>>>>> I.I.T. Kharagpur
>>>>>>
>>>>>> On Fri, Mar 18, 2016 at 8:02 PM, Tim Lahey <tim.la...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> For differentiation you’re missing a case,
>>>>>>>
>>>>>>> if n = 0 or n = -1
>>>>>>>    return Singularity(x, a, n-1)
>>>>>>> else if n < -1
>>>>>>>    return error
>>>>>>>
>>>>>>> In other words, you can still differentiate for the n = 0 and n = -1
>>>>>>> cases.
>>>>>>>
>>>>>>> Cheers,
>>>>>>>
>>>>>>> Tim.
>>>>>>>
>>>>>>> > On Mar 18, 2016, at 10:22 AM, SAMPAD SAHA <sampadsa...@gmail.com>
>>>>>>> wrote:
>>>>>>> >
>>>>>>> > And what about the pseudocode of integration and differentiation i
>>>>>>> have posted earlier , is it alright?
>>>>>>> >
>>>>>>> >
>>>>>>> >
>>>>>>> >
>>>>>>> >
>>>>>>> > Regards
>>>>>>> > Sampad Kumar Saha
>>>>>>> > Mathematics and Computing
>>>>>>> > I.I.T. Kharagpur
>>>>>>> >
>>>>>>> > On Fri, Mar 18, 2016 at 7:51 PM, SAMPAD SAHA <
>>>>>>> sampadsa...@gmail.com> wrote:
>>>>>>> > Thanks Tim,
>>>>>>> >
>>>>>>> > It is really a nice and effective solution.
>>>>>>> >
>>>>>>> >
>>>>>>> >
>>>>>>> >
>>>>>>> >
>>>>>>> > Regards
>>>>>>> > Sampad Kumar Saha
>>>>>>> > Mathematics and Computing
>>>>>>> > I.I.T. Kharagpur
>>>>>>> >
>>>>>>> > On Fri, Mar 18, 2016 at 7:46 PM, Tim Lahey <tim.la...@gmail.com>
>>>>>>> wrote:
>>>>>>> > Add the constants when you integrate in your beam class.
>>>>>>> >
>>>>>>> >
>>>>>>> > On 2016-03-18, at 10:12 AM, SAMPAD SAHA <sampadsa...@gmail.com>
>>>>>>> wrote:
>>>>>>> >
>>>>>>> >> Thanks TIm,
>>>>>>> >>
>>>>>>> >> Integration and Differentiation are really very straight forward
>>>>>>> that is why i am thinking to add diff and integrate method to the
>>>>>>> Singularity function class itself.
>>>>>>> >>
>>>>>>> >> For integrate the pseuesocode will be :-
>>>>>>> >>
>>>>>>> >> if(n<0)
>>>>>>> >>     return SingularityFunction(x , a, n+1)
>>>>>>> >> else
>>>>>>> >>     return (1/n+1 * SingularityFunction(x , a, n+1))
>>>>>>> >>
>>>>>>> >> Similarly for differentiation:
>>>>>>> >>
>>>>>>> >> if (n>0)
>>>>>>> >>    return n * SingularityFunction(x , a, n - 1)
>>>>>>> >> else
>>>>>>> >>    Error message
>>>>>>> >>
>>>>>>> >>
>>>>>>> >> My doubt regarding Boundary condition was actually was that since
>>>>>>> sympy don't provide constant of integration while performing indefinite
>>>>>>> integration on any expression, how to use the boundary conditions to 
>>>>>>> find
>>>>>>> the exact values of constant of integration?
>>>>>>> >>
>>>>>>> >>
>>>>>>> >>
>>>>>>> >>
>>>>>>> >>
>>>>>>> >> Regards
>>>>>>> >> Sampad Kumar Saha
>>>>>>> >> Mathematics and Computing
>>>>>>> >> I.I.T. Kharagpur
>>>>>>> >>
>>>>>>> >> On Fri, Mar 18, 2016 at 6:09 PM, Tim Lahey <tim.la...@gmail.com>
>>>>>>> wrote:
>>>>>>> >> Hi,
>>>>>>> >>
>>>>>>> >> Do you know the integration and differentiation rules for
>>>>>>> singularity functions? They’re pretty straightforward.
>>>>>>> >>
>>>>>>> >> As for boundary conditions, the beam will have supports (or a
>>>>>>> free end) at each end of the beam and as part of the beam creation each 
>>>>>>> end
>>>>>>> type is specified. Each type corresponds to a specific set of 
>>>>>>> conditions on
>>>>>>> that end (either at x=0 or x=L). You substitute those conditions in the
>>>>>>> appropriate equation and solve for the integration constant as 
>>>>>>> necessary.
>>>>>>> All of the conditions should be in any decent mechanics of deformable
>>>>>>> solids text book.
>>>>>>> >>
>>>>>>> >> You’ll want to do sums of forces and moments as well to solve for
>>>>>>> reaction forces as well.
>>>>>>> >>
>>>>>>> >> The only trick is making sure you don’t double count things. If
>>>>>>> you have a step function due to a reaction force at the start of the 
>>>>>>> beam
>>>>>>> and assume it’s zero at x=0 (effectively the limit at x=0^-) you can 
>>>>>>> get a
>>>>>>> non-zero integration constant that can be double counting that reaction
>>>>>>> since at x=0^+ that reaction force is non-zero. Note that you can get a
>>>>>>> non-zero integration constant (even when including reaction forces in 
>>>>>>> the
>>>>>>> loading function) for shear and moment equations if you have 
>>>>>>> non-polynomial
>>>>>>> loads (e.g., sine and cosine). You’ll also have to think about the other
>>>>>>> end as well. I leave it up to you to reason that out. Make sure you
>>>>>>> completely document how you’ve implemented it for the user (and why).
>>>>>>> >>
>>>>>>> >> Beam coordinate systems must start at the left end and increase
>>>>>>> to the right. The definition of the singularity functions require this.
>>>>>>> >>
>>>>>>> >> I hope this helps.
>>>>>>> >>
>>>>>>> >> Cheers,
>>>>>>> >>
>>>>>>> >> Tim.
>>>>>>> >>
>>>>>>> >> > On Mar 18, 2016, at 8:17 AM, SAMPAD SAHA <sampadsa...@gmail.com>
>>>>>>> wrote:
>>>>>>> >> >
>>>>>>> >> > I am also confused about implementing the boundary conditions
>>>>>>> for getting the deflection curve.
>>>>>>> >> >
>>>>>>> >> > Any suggestions on how to implement it.
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Regards
>>>>>>> >> > Sampad Kumar Saha
>>>>>>> >> > Mathematics and Computing
>>>>>>> >> > I.I.T. Kharagpur
>>>>>>> >> >
>>>>>>> >> > On Fri, Mar 18, 2016 at 5:36 PM, SAMPAD SAHA <
>>>>>>> sampadsa...@gmail.com> wrote:
>>>>>>> >> > Yah, you are right multiplication of singularity functions are
>>>>>>> not needed for solving beam problems. Mathematically, it is also not 
>>>>>>> used
>>>>>>> that much. So lets leave this multiplication and powers part.
>>>>>>> >> >
>>>>>>> >> > I was thinking about the integrate and diff methods. I feel
>>>>>>> that we should define instance methods diff and  integrate  in the
>>>>>>> singularity function module which would internally use the existing diff
>>>>>>> and integrate function for Differentiation and Integration respectively.
>>>>>>> >> >
>>>>>>> >> > I need your suggestions.
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Regards
>>>>>>> >> > Sampad Kumar Saha
>>>>>>> >> > Mathematics and Computing
>>>>>>> >> > I.I.T. Kharagpur
>>>>>>> >> >
>>>>>>> >> > On Fri, Mar 18, 2016 at 3:14 AM, Jason Moore <
>>>>>>> moorepa...@gmail.com> wrote:
>>>>>>> >> > I think you need to override the operators. I'm not sure if
>>>>>>> multiplying singularity functions is needed (at least for beam 
>>>>>>> problems),
>>>>>>> even if it is mathematically correct, you don't have to implement it. 
>>>>>>> If it
>>>>>>> is easy to implement then, sure, do so.
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Jason
>>>>>>> >> > moorepants.info
>>>>>>> >> > +01 530-601-9791
>>>>>>> >> >
>>>>>>> >> > On Thu, Mar 17, 2016 at 1:34 PM, SAMPAD SAHA <
>>>>>>> sampadsa...@gmail.com> wrote:
>>>>>>> >> >
>>>>>>> >> > Jason,
>>>>>>> >> >
>>>>>>> >> > For implementing Additon , Multiplication Do we need to over
>>>>>>> ride __mul__ , __add__  these methods inside the class 
>>>>>>> SingularityFunction
>>>>>>> or we can just use simplify for getting the results.
>>>>>>> >> >
>>>>>>> >> > I am really confused.
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Regards
>>>>>>> >> > Sampad Kumar Saha
>>>>>>> >> > Mathematics and Computing
>>>>>>> >> > I.I.T. Kharagpur
>>>>>>> >> >
>>>>>>> >> > On Fri, Mar 18, 2016 at 1:59 AM, SAMPAD SAHA <
>>>>>>> sampadsa...@gmail.com> wrote:
>>>>>>> >> >
>>>>>>> >> > I was thinking about multiplication of two singularity
>>>>>>> functions. It is possible and it is mathematically significant. We can
>>>>>>> implement this too in Sympy. Similarly with powers.
>>>>>>> >> >
>>>>>>> >> > I need your suggestions.
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Regards
>>>>>>> >> > Sampad Kumar Saha
>>>>>>> >> > Mathematics and Computing
>>>>>>> >> > I.I.T. Kharagpur
>>>>>>> >> >
>>>>>>> >> > On Wed, Mar 16, 2016 at 9:41 PM, SAMPAD SAHA <
>>>>>>> sampadsa...@gmail.com> wrote:
>>>>>>> >> > Yah , You are right . A software having good documentations
>>>>>>> about all the functionality is preffered more over the others by the 
>>>>>>> users.
>>>>>>> I will be spending a good amount of time in preparing the documentation
>>>>>>> citing plenty of examples and tutorials.
>>>>>>> >> >
>>>>>>> >> > Here is link to my proposal. I have almost added all the things
>>>>>>> which we have disscussed. I still need to add the example and many more
>>>>>>> "TODO"s are left. I am working on those.
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Suggestions are welcomed.
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Regards
>>>>>>> >> > Sampad Kumar Saha
>>>>>>> >> > Mathematics and Computing
>>>>>>> >> > I.I.T. Kharagpur
>>>>>>> >> >
>>>>>>> >> > On Wed, Mar 16, 2016 at 6:18 AM, Jason Moore <
>>>>>>> moorepa...@gmail.com> wrote:
>>>>>>> >> > Looks good. I think you should have plenty of examples in the
>>>>>>> docs. People tend to use software more if the docs are top notch. So 
>>>>>>> plenty
>>>>>>> of examples and tutorials will really help.
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Jason
>>>>>>> >> > moorepants.info
>>>>>>> >> > +01 530-601-9791
>>>>>>> >> >
>>>>>>> >> > On Tue, Mar 15, 2016 at 5:25 PM, SAMPAD SAHA <
>>>>>>> sampadsa...@gmail.com> wrote:
>>>>>>> >> > You are right. delta_function.py needs to be improved. I will
>>>>>>> to be using only DiracDelta and Heaviside for generating almost all the
>>>>>>> Singularity Functions.
>>>>>>> >> >
>>>>>>> >> > I was also thinking to complete this project in four phases:
>>>>>>> >> >       • Improving existiing Functions.
>>>>>>> >> >       • Creating Singularity Functions module
>>>>>>> >> >       • Creating beam Module
>>>>>>> >> >       • Documentation
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Regards
>>>>>>> >> > Sampad Kumar Saha
>>>>>>> >> > Mathematics and Computing
>>>>>>> >> > I.I.T. Kharagpur
>>>>>>> >> >
>>>>>>> >> > On Wed, Mar 16, 2016 at 5:44 AM, Jason Moore <
>>>>>>> moorepa...@gmail.com> wrote:
>>>>>>> >> > https://www.python.org/dev/peps/pep-0008/
>>>>>>> >> >
>>>>>>> >> > I think you will need a pure singularity function module and
>>>>>>> then you will need a beam module that utlizes the singularity function
>>>>>>> module. You will also likely need to improve the discontinuous functions
>>>>>>> that are already in sympy. There are at least three layers to this in my
>>>>>>> eyes.
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Jason
>>>>>>> >> > moorepants.info
>>>>>>> >> > +01 530-601-9791
>>>>>>> >> >
>>>>>>> >> > On Tue, Mar 15, 2016 at 5:07 PM, SAMPAD SAHA <
>>>>>>> sampadsa...@gmail.com> wrote:
>>>>>>> >> > Jason
>>>>>>> >> >
>>>>>>> >> > Pardon please. I couldn't get you by "You will need to follow
>>>>>>> PEP8 for the method and class names".
>>>>>>> >> >
>>>>>>> >> > and yah, i also felt that it would be better if i use the input
>>>>>>> and output values of the example problem done by hand.
>>>>>>> >> >
>>>>>>> >> > So , what do you suggest, Would it be better if we create a
>>>>>>> different module ,other than the singularity function module, for 
>>>>>>> solving
>>>>>>> beam problems?  That module would import the singularity function module
>>>>>>> for using them.
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Regards
>>>>>>> >> > Sampad Kumar Saha
>>>>>>> >> > Mathematics and Computing
>>>>>>> >> > I.I.T. Kharagpur
>>>>>>> >> >
>>>>>>> >> > On Wed, Mar 16, 2016 at 5:22 AM, Jason Moore <
>>>>>>> moorepa...@gmail.com> wrote:
>>>>>>> >> > I think it is a good start. You will need to follow PEP8 for
>>>>>>> the method and class names. But I just want to see desired 
>>>>>>> functionality.
>>>>>>> The more you can think up, the better. I would suggest doing a beam 
>>>>>>> problem
>>>>>>> by hand and then translating that to a desired API. You can mock up what
>>>>>>> you think the inputs and outputs should be for that example problem.
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Jason
>>>>>>> >> > moorepants.info
>>>>>>> >> > +01 530-601-9791
>>>>>>> >> >
>>>>>>> >> > On Tue, Mar 15, 2016 at 4:46 PM, SAMPAD SAHA <
>>>>>>> sampadsa...@gmail.com> wrote:
>>>>>>> >> > Ok Jason,
>>>>>>> >> >
>>>>>>> >> > And what about the API I have posted just before the earlier
>>>>>>> post?
>>>>>>> >> >
>>>>>>> >> > Any suggestions
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Regards
>>>>>>> >> > Sampad Kumar Saha
>>>>>>> >> > Mathematics and Computing
>>>>>>> >> > I.I.T. Kharagpur
>>>>>>> >> >
>>>>>>> >> > On Wed, Mar 16, 2016 at 5:10 AM, Jason Moore <
>>>>>>> moorepa...@gmail.com> wrote:
>>>>>>> >> > The file locations and method class names are just fine details
>>>>>>> that can be worked out later. They are generally not important for your
>>>>>>> proposal. Just focus on describing what the future modules should do.
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Jason
>>>>>>> >> > moorepants.info
>>>>>>> >> > +01 530-601-9791
>>>>>>> >> >
>>>>>>> >> > On Tue, Mar 15, 2016 at 4:36 PM, SAMPAD SAHA <
>>>>>>> sampadsa...@gmail.com> wrote:
>>>>>>> >> > Hi Jason,
>>>>>>> >> >
>>>>>>> >> > As I am thinking to create a another module for solving
>>>>>>> especially beam problems (suppose beambending.py) , what will be its 
>>>>>>> file
>>>>>>> location?
>>>>>>> >> > Similarly for Singularity Functions (suppose
>>>>>>> singularity_function.py), What will be its location?
>>>>>>> >> >
>>>>>>> >> > And what about the names of methods and classes, Can I give any
>>>>>>> name or we will be discussing it at the time of developing them?
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > ---------------------
>>>>>>> >> > Regards,
>>>>>>> >> > Sampad
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> >
>>>>>>> >> > Regards
>>>>>>> >> > Sampad Kumar Saha
>>>>>>> >> > Mathematics and Computing
>>>>>>> >> > I.I.T. Kharagpur
>>>>>>> >> >
>>>>>>> >> > On Wed, Mar 16, 2016 at 3:56 AM, SAMPAD SAHA <
>>>>>>> sampadsa...@gmail.com> wrote:
>>>>>>> >> > 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 <tim.la...@gmail.com>
>>>>>>> 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 <
>>>>>>> moorepa...@gmail.com> 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 <
>>>>>>> sampadsa...@gmail.com> 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 <
>>>>>>> asmeu...@gmail.com> 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 <
>>>>>>> sampadsa...@gmail.com> 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 <
>>>>>>> asmeu...@gmail.com> 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 <
>>>>>>> tim.la...@gmail.com> 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 <
>>>>>>> sampadsa...@gmail.com> 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 sympy+unsubscr...@googlegroups.com.
>>>>>>> >> > > >> To post to this group, send email to
>>>>>>> sympy@googlegroups.com.
>>>>>>> >> > > >> 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 sympy+unsubscr...@googlegroups.com.
>>>>>>> >> > > > To post to this group, send email to sympy@googlegroups.com
>>>>>>> .
>>>>>>> >> > > > 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 sympy+unsubscr...@googlegroups.com.
>>>>>>> >> > > To post to this group, send email to sympy@googlegroups.com.
>>>>>>> >> > > 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 sympy+unsubscr...@googlegroups.com.
>>>>>>> >> > > To post to this group, send email to sympy@googlegroups.com.
>>>>>>> >> > > 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 sympy+unsubscr...@googlegroups.com.
>>>>>>> >> > > To post to this group, send email to sympy@googlegroups.com.
>>>>>>> >> > > 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 sympy+unsubscr...@googlegroups.com.
>>>>>>> >> > > To post to this group, send email to sympy@googlegroups.com.
>>>>>>> >> > > 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 sympy+unsubscr...@googlegroups.com.
>>>>>>> >> > > To post to this group, send email to sympy@googlegroups.com.
>>>>>>> >> > > 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 sympy+unsubscr...@googlegroups.com.
>>>>>>> >> > To post to this group, send email to sympy@googlegroups.com.
>>>>>>> >> > 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 sympy+unsubscr...@googlegroups.com.
To post to this group, send email to sympy@googlegroups.com.
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/CANzav4Hu8ne95ecq5Fk6hY-fFbmuBZOVeK%3D3Dq1h1eFJTt7opQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to