We have this *_eval_rewrite_as_Piecewise() *method defined in *Heaviside* Class. But How can we call it or use this implemented functionality from terminal?
Regards Sampad Kumar Saha Mathematics and Computing I.I.T. Kharagpur On Fri, Mar 25, 2016 at 2:00 AM, SAMPAD SAHA <[email protected]> wrote: > 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/CANzav4FA_sJ8_EeR89dj0fv9UC4k%2BSrqL5B8M63E5jdEvkmazA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
