Hi Brett,
On Thu, Jun 11, 2015 at 5:37 PM, Brett Smith <
waym...@gmail.com> wrote:
> Thank you for getting back to me so quickly!
> I am actually excited about this program, but it seems like I will need to
> learn a thing or two about numerical analysis.
> Our class is supposed to use TK Solver, and it seems to work OK. However, I
Interesting, it looks like TK Solver
(
http://en.wikipedia.org/wiki/TK_Solver) was invented by Miloš
Konopásek (
http://en.wikipedia.org/wiki/Milos_Konopasek), born in the
same country as I was.
I think this would be a welcome addition. We need to learn about the
algorithms and state of the art to solve these kinds of problems. If
it is a polynomial system of equations, then Gröbner basis is one such
method and SymPy has such capability. But I am not an expert in that.
It looks like you are after a numerical solution, so that's what I
would recommend at first. It might be much easier to implement. You
should open source it. Depending on which language you'll use to
implement it, it can go to SciPy or a separate library. I like that
you are trying to find or implement an open source solution. I am the
same way, thus SymPy was born.
Can you describe the symbolic structure of those equations --- what
kind of non-linearity is allowed? Because perhaps you can tell SymPy
to first eliminate the linear system, which SymPy should be able to
do, and then we just need to handle the nonlinear part. One way is to
take one equation and substitute into the rest, and so on. This only
works for some non-linear systems. If it is more non-linear, it might
not be easy to eliminate a variable from an equation, then you need
something more advanced.
E.g. these are a bit tricky:
> Sa^2 = 3*T14^2
> Sb^2 = 3*T12^2
> Sc^2 = 3*T43^2
> Sd^2 = 3*T32^2
But you can help it by solving two cases, first:
Sa = + sqrt(3) * T14
...
and the second:
Sa = - sqrt(3) * T14
And you'll have two solutions. It might be that the whole system
doesn't have a solution for one of the cases, so then you end up with
just one solution overall.
What is the application of such systems?
Ondrej
>
https://groups.google.com/d/msgid/sympy/0ca6f806-1316-4903-8cc2-99732b6b9e07%40googlegroups.com.