Thank you for the clarification. A reproducible problem report makes it
much easier to figure out what happened, and to recommend a solution.
K^^-1 returns immediately (with a rational result, so you'll probably want
to float it). K^^-1 is the standard, default way of calculating matrix
inverses.
We need to clarify the documentation of 'invert'; though it clearly says "The
current implementation is inefficient for matrices of high order.", it also
makes it sound as though it's the preferred method for floating-point
matrices ("This allows a user to compute the inverse of a matrix with
bfloat entries
or polynomials with floating point coefficients without converting to
cre-form.").
I would recommend that we rename the adjoint invert to invert_by_adjoint
(cf. invert_by_lu) to clarify that it uses a particular method. The
generic 'invert' and '^^-1' should attempt to choose the best method given
the input. (There has been some discussion of this on the mailing list --
it is not completely clear how to do that, but it's a reasonable goal.)
-s
On Thu, Jun 27, 2013 at 3:07 PM, ahmet alper parker <aaparker at gmail.com>wrote:
> 1) wxMaxima, however, during calculations, command line also fails.
> 2) Calculates forever,
> 3) all floating point with symetric matrix configuration
> 4) invert(M)
> 5)
>
> 16*16 example
>
>
> K:matrix([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,494.5054945054945,-178.5714285714286,0,0,54.94505494505494,-13.73626373626375,0,-4.578754578754582,109.8901098901099,4.578754578754582,0,59.52380952380952,-73.26007326007327,-59.52380952380952],[0,0,-178.5714285714286,494.5054945054945,0,0,13.73626373626375,-302.1978021978022,0,-73.26007326007327,4.578754578754582,109.8901098901099,0,-73.26007326007327,-4.578754578754582,109.8901098901099],[0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0],[0,0,54.94505494505494,13.73626373626375,0,0,494.5054945054945,178.5714285714286,0,59.52380952380952,73.26007326007327,-59.52380952380952,0,-4.578754578754582,-109.8901098901099,4.578754578754582],[0,0,-13.73626373626375,-302.1978021978022,0,0,178.5714285714286,494.5054945054945,0,73.26007326007327,-4.578754578754582,-109.8901098901099,0,73.26007326007327,4.578754578754582,-109.8901098901099],[0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0],[0,0,-4.578754578754582,-73.26007326007327,0,0,59.52380952380952,73.26007326007327,0,110.2389673818245,19.84126984126984,-48.49119134833421,0,7.674864817721962,-19.84126984126984,-22.85016570730857],[0,0,109.8901098901099,4.578754578754582,0,0,73.26007326007327,-4.578754578754582,0,19.84126984126984,110.2389673818245,-19.84126984126984,0,19.84126984126984,-48.49119134833421,-19.84126984126984],[0,0,4.578754578754582,109.8901098901099,0,0,-59.52380952380952,-109.8901098901099,0,-48.49119134833421,-19.84126984126984,110.2389673818245,0,-22.85016570730857,19.84126984126984,7.674864817721962],[0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0],[0,0,59.52380952380952,-73.26007326007327,0,0,-4.578754578754582,73.26007326007327,0,7.674864817721962,19.84126984126984,-22.85016570730857,0,110.2389673818245,-19.84126984126984,-48.49119134833421],[0,0,-73.26007326007327,-4.578754578754582,0,0,-109.8901098901099,4.578754578754582,0,-19.84126984126984,-48.49119134833421,19.84126984126984,0,-19.84126984126984,110.2389673818245,19.84126984126984],[0,0,-59.52380952380952,109.8901098901099,0,0,4.578754578754582,-109.8901098901099,0,-22.85016570730857,-19.84126984126984,7.674864817721962,0,-48.49119134833421,19.84126984126984,110.2389673818245])
> ;
> invert(K);
> fails
>
> However invert_by_lu does it...
> ratmax didnot helped (command ratmax:true; )
>
> Mr Barton already gave some advice, however, I replied only to him by
> mistyping reply all.
>
>
>
>
>
>
> On Thu, Jun 27, 2013 at 8:17 PM, Stavros Macrakis <macrakis at alum.mit.edu>wrote:
>
>> 1) What interface to Maxima are you using (wxMaxima? XMaxima? command
>> line?).
>>
>> 2) What do you mean "tries to calculate the result" and "gives no
>> answer"? Do you mean it has calculated the result but doesn't display it?
>> Does it calculate forever? Do you get a fresh %i line? What exactly are
>> the symptoms?
>>
>> 3) What do your matrices look like? Are they
>> dense/sparse/triangular/tridiagonal/...? float/rational/symbolic?
>>
>> 4) What method are you using to invert? M^^-1? invert(M)?
>>
>> Please provide* *a *self-contained, minimal, and reproducible* description
>> of your problem. Ideally a small number of Maxima commands which, when
>> executed in a fresh Maxima, re-create the problem.
>>
>> -s
>>
>>
>> On Thu, Jun 27, 2013 at 9:26 AM, ahmet alper parker <aaparker at gmail.com>wrote:
>>
>>>
>>> Dear All,
>>> When I try to invert a 24*24 matrix, maxima tries to calculate the
>>> result but gives no answer, this is same even in smaller matrices. What is
>>> the problem, is there a patch to apply?
>>> Best Regards
>>> Ahmet Alper Parker
>>>
>>> _______________________________________________
>>> Maxima mailing list
>>> Maxima at math.utexas.edu
>>> http://www.math.utexas.edu/mailman/listinfo/maxima
>>>
>>>
>>
>