GSoC : This week in SymPy #2Open Source · GSoC · SymPy
Hi there! It’s been two weeks into GSoC, & I have managed to flip some bits.
This week, I started working on
ComplexPlane Class, & also worked on improving
Progress of Week 2
The major portion of this week went into improving
linsolve function, which I wrote last week,
PR : #9438.
Jason suggested to let the Matrix code be the core source for all linear solve operations (i.e. remove all algorithmic solve code from everywhere else in sympy). Then for any linear solve stuff that can’t be handled by the Matrix code base, implement that here in
It was indeed a good idea, since solving linear system is more of Matrix stuff than that of solvers in CAS, So we introduced a new solver in
matrices.py named as:
gauss_jordan_solve(): It solves
Ax = busing Gauss Jordan elimination.
There may be zero, one, or infinite solutions. If one solution exists, it will be returned. If infinite solutions exist, it will be returned parametrically in terms of Dummy parameters. If no solutions exist, It will throw ValueError.
linsolve is a light wrapper around
gauss_jordan_solve() method, it basically converts all the input types into the standard A & b form & calls A.gauss_jordan_solve() and replaces the dummy parameters with the symbols input by the user.
Plan for Week 3:
This week I plan to complete ComplexPlane class & get the following PR’s Merged:
That’s all for now, looking forward for week #3.