-
-
Notifications
You must be signed in to change notification settings - Fork 4.3k
GSoC 2018 Report Yathartha Joshi: Solvers: Completing Solveset
This page summarises the work that I have done during the GSoC period along with the links to PR's submitted in chronological order. See my blog for the weekly progress of the project.
My name is Yathartha Joshi and I am an undergrad in Computer Science and Engineering.
The project mainly focused on improving the coverage of solving equations by solveset
. For this purpose transolve
was implemented. This routine would help solveset
solve transcendental equations.
-
Implementing
transolve()
: a transcendental equation solver forsolveset
and exponential solver as part of thetransolve
This was the main PR where the API and design fortransolve
was discussed. Handling of equations coming fromsolveset
, API and design for the helper solvers and the documentation were discussed and implemented. Also exponential equation solver was implemented from scratch. -
Specifying domain when calling
solveset
incalculus.singualrities
Minor fix while calculating singularities. -
Implementing logarithmic solver in
transolve
This was yet another PR that dealt with the implementation of log solver fortransolve
as a helper routine. This PR also included changes in the working of the exponential equation -
added explicit check to see if base of an exponential equation is zero This was a fix done in the existing code. Before this exponential equations were evauated (in
invert_real
) without checking the base being zero. This caused problems in solving symbolic expressions.
-
Implementing lambert solver as part of
transolve
This is another helper solver for solving lambert type equations. This implementation will complete the coverage of equations handled bysolveset
.
Most of the things have been covered during the SoC period, things that remain will be continued by me post GSoC and I hope this report will be useful for whosoever wishes to contribute in solvers.solveset
module in future.
Following is a list that comprises of all the ideas which can extend my GSoC project.
- Implementing BigUnion and BigInterSection.
- Integrating helper solvers within
solveset
: linsolve, solve_decomposition, nonlinsolve - Ability to solve modular equations with integer solutions.