Hi Aaron,

Pardon Please. I am bit confused. Are you taking about the "*Piecewise
Representation*" that I have mentioned in Phase I ?





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

On Fri, Mar 25, 2016 at 12:00 AM, Aaron Meurer <[email protected]> wrote:

> You should call the method _eval_rewrite_Piecewise. Then you can call it
> with expr.rewrite(Piecewise). The advantage here is that this will
> automatically work even if it's a subexpression of some larger expression.
>
> Aaron Meurer
>
> On Fri, Mar 18, 2016 at 9:37 PM, Jason Moore <[email protected]> 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 <[email protected]>
>> 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 <[email protected]>
>>> 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 <[email protected]>
>>>> 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 <[email protected]>
>>>>> 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 <[email protected]>
>>>>>> 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 <[email protected]>
>>>>>>> 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 <
>>>>>>> [email protected]> 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 <[email protected]>
>>>>>>> wrote:
>>>>>>> > Add the constants when you integrate in your beam class.
>>>>>>> >
>>>>>>> >
>>>>>>> > On 2016-03-18, at 10:12 AM, SAMPAD SAHA <[email protected]>
>>>>>>> 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 <[email protected]>
>>>>>>> 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 <[email protected]>
>>>>>>> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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 <[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/CAP7f1AiuP1c2LxKte0%3DEV3BYAb-TYEi1wDBfNXg4E5YV1e64Aw%40mail.gmail.com
>> <https://groups.google.com/d/msgid/sympy/CAP7f1AiuP1c2LxKte0%3DEV3BYAb-TYEi1wDBfNXg4E5YV1e64Aw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>> 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/CANzav4Gxk5jRChZwTDiRfD0F%2ByMjAHcgJgN6WnLJD9LSmyKiqA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to