I'll need to break it out of a more specialized package first, but this all sounds very promising. It'll be a few weeks before I can really get started (dissertation writing...), but I think it should only take a day or so after that, at least to have something to share. Maybe longer to flesh out the feature set and add a cleaner interface. Mostly I just want it to be available in a place where it'll get use.
N On Tuesday, February 24, 2015 at 10:28:13 AM UTC-7, Jason Moore wrote: > > Nathan, > > Can you show us the code? It may help us understand what you are doing. > > Also, we have code in sympy that optional depends on scipy as do we other > packages: cython, numpy, theano, matplotlib, etc. The code generation and > tightly coupled symboli/numeric code is in that blurry zone about what we'd > add. > > But if you make a working separate package it can be a good start. For > example the PyDy project depends on sympy but deals with generating > specific numerical codes. If you make the package and we want to include > it, then great. If not, you have an easily installable package that others > can use and we can link to it from our docs/website. > > > Jason > moorepants.info > +01 530-601-9791 > > On Tue, Feb 24, 2015 at 9:08 AM, Nathan Woods <[email protected] > <javascript:>> wrote: > >> The decoupling is actually pretty easy. Unfortunately, the Sympy-specific >> stuff isn't especially useful without the context of a numerical >> integrator. >> >> Maybe an example will help. Say you want to numerically integrate a step >> function H(x) over the interval [-1, 1]. Most numerical integrators will >> try to fit a polynomial to this, but polynomials can't handle the jump at >> x=0 gracefully, so you end up wasting a lot of processing time trying to >> refine it. The fix is to break up the integral, and do it in two pieces, >> one from [-1, 0), and one from [0, 1]. The integrator has no trouble with >> this, so you get a very fast evaluation. Many integrators, and in >> particular scipy.integrate.quad, have this capability. >> >> What I've done is figure out a way to get the same benefits for >> multidimensional functions. So, you could integrate H(x**2 + y**2 - z) over >> a volume, and get the same kind of efficiency. Without this, not only is >> evaluation of the integral very slow, but the results can sometimes be very >> inaccurate too. >> >> Anyway, from what I can tell, a similar effect could be achieved using >> mpmath, rather than SciPy. Maybe that project is a better venue. >> >> Thanks again! >> >> N >> >> >> On Tuesday, February 24, 2015 at 9:17:41 AM UTC-7, Joachim Durchholz >> wrote: >>> >>> Am 24.02.2015 um 17:03 schrieb Nathan Woods: >>> > Anyway, I would like to package this up in a way that would be >>> publicly >>> > useful, but I'm not sure where it fits. Sympy seemed a likely guess, >>> but >>> > the SciPy dependence is problematic. >>> >>> Out of the box, a separate project with a dependency on both SymPy and >>> SciPy would probably fit best. >>> >>> > Alternatively, the >>> > discontinuity-processing could be decoupled and used with any iterated >>> > integrator that supports manually specified points of discontinuity. >>> >>> Decoupling and putting the modules into their respective projects would >>> work, too. >>> It's much more work though. >>> >>> > If >>> > Sympy isn't a good fit for this, I would appreciate suggestions about >>> other >>> > places that might be better. >>> >>> I did not fully understand your description of what your code does, so I >>> can't be very specific. >>> In general, anything that analyzes mathematical objects for properties >>> of interest that go beyond a one-shot task would be a worthy addition to >>> SymPy. >>> >> -- >> 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] <javascript:>. >> To post to this group, send email to [email protected] <javascript:> >> . >> Visit this group at http://groups.google.com/group/sympy. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/sympy/125f4bc9-7c1d-441f-bf41-5df851379a7d%40googlegroups.com >> >> <https://groups.google.com/d/msgid/sympy/125f4bc9-7c1d-441f-bf41-5df851379a7d%40googlegroups.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 http://groups.google.com/group/sympy. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/bed69b8c-fd47-4cba-a3fa-e800e34acea8%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
