On Monday, March 7, 2016 at 7:12:44 PM UTC+1, Subham Tibra wrote: > > Hi Ondrej, thank you for your response. > > ore_algebra in Sage has implemented `annihilator_of_composition` which > finds annihilator of a holonomic function after application with an > algebraic function but doesn't support initial conditions. > > Do we want to get initial conditions of the resulting function when we > will implement this operation or just the annihilator? > > For instance, we have a holonomic function `sin(x)` defined by diff. eq. > and we want to apply this with the function z(x) = x**2 - 4 > > f(x) = holonomic(diff(diff(f)) + f, f(0) = 0, f'(0) = 1, x) > g(x) = f(z(x)) = f(x**2 - 4) > g'(x) = f'(z(x))*z'(x) -(1) > > Now, as we have value of f(x) at the point 0, we find the point where z(x) > is 0 which is x = 2 or -2, if we take x=2 we have g(2) = 0, for finding > g'(2) we put x = 2 in equation(1) so g'(2) = (1)*(2*2) = 4, and the > annihilator of g will be obtained by the algorithm which we will be > implemented. > > Is this method decent enough for implementing, if we need the initial > conditions? > > I had some other problems, if you can please take a look at my previous > post in this same thread that'd be very helpful. > > I thought about the API and liked the way gfun does it in maple. I thought > of something like this, initial condition will be given as a list [ f(x0), > f'(x0), ... ]. > > In []: holonomic(diffeq, x, initial_condition, x0 = 0) > Out[]:holonomic(diffeq, x, f(x0) = f1, .... ) > > Is it possible to provide initial conditions like this way: > > In []:holonomic(diffeq, x, f(x0) = f1, f(x1) = f2 .... ) > Out[]:holonomic(diffeq, x, f(x0) = f1, .... ) > > where we can provide initial conditions as f(x0) = x1. We can also provide > annihilators instead of differential equation as in sage. Which way will be > more preferred for it's use in SymPy? >
The internal data structure should probably be the annihilator. The input could be given either as a differential equation or an annihilator. If the given differential equation is inhomogeneous, you need to convert it to homogeneous form, so a bit of preprocessing is needed anyway. Fredrik -- 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/cdc5dd9e-b19a-475a-b3e7-e13b4f7d7cdc%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
