solving a cubic eq



I am not aware of a function called poly_discriminant in Maxima or for
that matter a function by some other name that calculates polynomial
discriminants?  That said, the formulae are straightforward and you
can easily write it yourself, something like

disc3(p,var) :=  /* cubic case only  -- no input validation */
  block( [a,b,c,d],
         p: rat(p,var),
	 a: ratcoef(p,var,3),
	 b: ratcoef(p,var,2),
	 c: ratcoef(p,var,1),
	 d: ratcoef(p,var,0),
	 b^2*c^2 -4*a*c^3 -4*b^3*d -27*a^2*d^2 +18*a*b*c*d )$
	
                -s

On Fri, Apr 17, 2009 at 11:25 AM, andre maute <andre.maute at gmx.de> wrote:
> On Friday 17 April 2009, Stavros Macrakis wrote:
>> In this cubic, all three roots are real, but cannot be expressed with
>> real radicals, even in principle. See
>> http://en.wikipedia.org/wiki/Casus_irreducibilis . ?They *can* be
>> expressed as real expressions involving trigonometric functions, which
>> is what rectform does for you.
>>
>> That said, I wonder why you want the roots expressed as symbolic
>> expressions. ?I suppose there must be some application where
>> (8*cos(atan(sqrt(2101)/(69*sqrt(3)))/3)-sqrt(3))/sqrt(3) is more
>> useful than 3.584428340330492, but usually the latter is what you
>> really want, in which case why not calculate it directly using
>> realroots or allroots (which, unlike solve, work for *all*
>> polynomials, not just those which reduce to the quartic case or
>> simpler by factorization or polynomial decomposition).
>
> I still use Maxima 5.15.0,
> and I cannot find poly_discriminant in the html documentation
> poly_discriminant is nice to detect the casus irreducibilis
>
> Andre
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>