>> as to trig functions, the simplification of things like sin(3*pi/2) is
>> nontrivial since you have to code this for all of the functions.
>> There is a way to code this up once for a general trig function and
>> then all other functions work automatically, see the "trig" branch
>> here:
>>
>> https://github.com/certik/sympy/blob/trig/t.py
>>
>
> I had looked into the implementation of lookup tables
> when we had discussed about this on gitter.
>
> Considering there are a lot of corner cases to be handled
> and ensuring the module passes the unit tests, a significant
> time needs to be spent on enhancing and testing the current module
> and then further extending it to inverses and hyperbolic modules.

I would simply translate the `t.py` implementation to C++ in CSymPy.
I don't think it's hard. Just implement the "TrigFunction" class which
implements the gist of the algorithm and then implement the actual
Sin, Cos, Tan classes as in `t.py`.

There will probably be some corner cases, so it's good to spend some time
on this and get this right.

We'll also probably want to extend it to functions like sec(), but getting
sin/cos/tan right is more important.

>
> Also adding python wrappers should be a decent plus.
>
>> You should also put there a schedule of what things you want to get
>> done each week.
>
>
> I wanted to have a review first on how the proposal looks. Now
> that it is decent enough, I'll add a timeline and we can discuss further
> upon that.
>
> Also I looked into the current SymPy Trignometric Module
> and added a small patch to implement Taylor Term for sec.

Thanks! I left some minor comments on the PR.

>
> It would be great if you could look into it or redirect me to someone
> who worked on those lines recently. There are quite a few things
> which are still marked TODO in that module. I'll try to fix more
> once I'm done with the proposal.

You can use "git blame" to figure out who wrote what. I only remember that long
time ago, Luke and I wanted to reimplement the trig stuff along the
lines of t.py above,
which should simplify things a lot, but didn't manage to finish it up.

Ondrej

-- 
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 http://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CADDwiVA%3DmxkB5xp-Q%3D-baF3eAcD-1YrNZ7P1tDf%2B0H7uYCinJQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to