Hi,
I was thinking, How about designing the solveset similiar
to the ODE Module . Something like hints system to classify solvers?
Example:
primaryhint = [
"univariate",
"multivariate",
"single_eq",
"multiple_eq"
]
subhints = [
'solve_linear_system'
'linear_trig',
'polynomial',
'transcendental',
'piecewise',
'relational'
'solve_lambertw'
'miscellaneous'
]
def classify_solver(f, symbols=None):
"""
Clasifies the input equation(s)/function(s) to solve for, into possible
hints such as linear, univariate, multivariate, etc.
"""
hints = []
# Methods to classify Equations
def solveset(f, symbol=None):
if eq_type == 'linear':
solve_linear(f, symbol)
if eq_type == 'linear_system':
solve_linear_system(f, symbol)
.
.
. and so on
In that case we will be able to add new solvers, without messing with
the others, and we will have a more robust and flexible framework
which will be easy to extend.
I think, building a robust framework, which felicitates further
development, worth much more than adding new solvers.
Thoughts from the community are invited.
AMiT Kumar
--
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/5b7393ef-7d4d-46f9-bfcd-dbbeb38639c4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.