> >>> solveset(sin(x)-1/2,x,S.Reals) > ∅ Here we need to make sure we write solveset(sin(x)-S(1)/2,x,S.Reals) , that > most of the people don't use generally.Is there any way tha t we dont need to > write like this S(1)/2.
The issue is because of the rules of the python language. Trying to solve this issue can too hard or might bring about a lot of unexpected behavior. An easier things you can do is issuing a warning if you see a float in the input equation. > After checking old `solver` and finding ways to solve non linear system ,I > found that one of the good way may be substitution method (for simple cases : > http://www.purplemath.com/modules/syseqgen5.htm) and Using the Quadratic > Formula(some complicated cases: > http://www.purplemath.com/modules/syseqgen6.htm). As far as I remember this methods are already implemented as radical solver. > Right now I come across the solution that can solve the trigonometric equation > g = 0 where g is a trigonometric polynomial. We can convert that into a > polynomial system by expanding the sines and cosines in it, replacing sin(x) > and cos(x) by two new variables s and c. before that need to check arguments > are same or not.It should not be like sin(x) and cos(x**2). So now we have two > variables and 1 equation another equation we know : s**2 + c**2 − 1 = 0.Means > sin(x)**2 + cos(x)**2 =1. Similarly we can solve others like tan,sec ; > cot,cosec .But I think it will be better if we convert all the trigonometric > functions into sin and cos ,and solve them for all cases .Then we don't need to > add same types of codes. It need another method solveset_trig which converts > the trigonometric equation to only sin, cos form then polynomial system > replacing sin(x) and cos(x) by two new variables s and c.Then need to solve > linear or non linear system equation. Now replacing s -> sin and c-> cos and > then solveset_real can easily solve You can as well solve trig equations by writing them in form of sines or cosines, as you recognized the current method works by writing them in exp. You should go ahead and implement it. There is no clear cut "better" method and the answer depends on the case at hand, which is also the case other techniques and sub solvers. I was thinking about a "search" on the solving techniques and I have described the idea in the solveset doc[1] but at this stage the idea is too vauge to go ahead with the implementation. > it contain a lot of information.It took me long time to go through the > attached PR,Issues, and discussions. I appreciate you effort, I wanted to point out that you can use the SymPy wiki [2] to maintain your notes about your solvers and other modules. It would be helpful to you and other people who would want to work on solvers in future. [1]: https://github.com/sympy/sympy/blob/master/doc/src/modules/solvers/solveset.rst#search-based-solver-and-step-by-step-solution [2]: https://github.com/sympy/sympy/wiki On 12 February 2016 at 09:28, Shekhar Prasad Rajak < [email protected]> wrote: > After checking old `solver` and finding ways to solve non linear system ,I > found that one of the good way may > be substitution method (for simple cases : > http://www.purplemath.com/modules/syseqgen5.htm)and Using the Quadratic > Formula(some complicated cases: > http://www.purplemath.com/modules/syseqgen6.htm). > > There are other ways also but to solve all types of Non linear system this > method will be usefull and > I have checked that many times we get multiple solution in non linear > system and sympy is able to solve > any type of equtaion that we get after the substitution. > > Please give your valuable suggestion. > > -- > Shekhar Prasad Rajak > > On Thursday, 4 February 2016 00:40:34 UTC+5:30, Shekhar Prasad Rajak wrote: >> >> >> Hello, >> my name is Shekhar Prasad Rajak.I want to discuss about Solver and >> Solveset module >> https://github.com/sympy/sympy/wiki/GSoC-2016-Ideas#solvers .I am going >> to apply for GSoc'16, so trying to know >> what sympy community expecting. >> Solveset came to Replace all internal solve() calls >> https://github.com/sympy/sympy/issues/8711 >> So I should focus on Solveset,right? >> I have some questions : >> 1.What are the main problems/issues in Solver and Solveset right now? >> 2.Is Solveset module done?If not,what are the main features, that should >> be added ? >> I have seen Harsh's PR : https://github.com/sympy/sympy/pull/7523 >> It seems, these need some works : >> -functions solvable by LambertW >> -functions that can be recast as polynomials with a change of >> variables this, for example; this can be >> factored out of solve where multiple generators are handled >> -use something like this : >> https://github.com/sympy/sympy/pull/7523#issuecomment-62198981 >> to handle the XFAILed test test_real_imag_splitting1, this will be >> handled in the set module. >> >> 3.This is list of Issues/ Discussions I found. >> >> https://github.com/sympy/sympy/wiki/GSoC-2014-Application-Harsh-Gupta:-Solvers#relevant-issues-discussions-and-references >> <https://github.com/sympy/sympy/wiki/GSoC-2014-Application-Harsh-Gupta:-Solvers#relevant-issues-discussions-and-references> >> but I don't know, whether they are solved or not. >> Issues which are still open in github repo, need solutions. >> There are also links of pdf and research papers, I am not sure whether >> they are implemented or not. >> >> 4.Can we use python library multiprocessing,Synchronization for the >> faster execution?one issue was opened for the same,which is closed now.But >> it is always better to take less time. >> >> >> -- >> Shekhar Prasad Rajak >> >> -- > 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/6edb47d9-a19a-4b4f-a450-2e6460f9eb7a%40googlegroups.com > <https://groups.google.com/d/msgid/sympy/6edb47d9-a19a-4b4f-a450-2e6460f9eb7a%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > For more options, visit https://groups.google.com/d/optout. > -- Harsh Sent from a GNU/Linux -- 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/CADN8iuoKTunyTZb%2BebZCs%2BD0L4CH%3D101zs8%3DUxOpWf_OCfP%2BMw%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
