grobner basis: hints for the variables elimination order ?
Subject: grobner basis: hints for the variables elimination order ?
From: Barton Willis
Date: Mon, 1 Nov 2010 19:20:28 -0500
First, the call to grobner basis isn't needed to solve your equations--you can solve
them with simply using algsys or solve.
Second, I don't know anything about the affine package, it seems to me that the
affine/grobner_basis function returns an incorrect value for your equations. There
is an alternative grobner basis code that might work:
(%i1) load(grobner)$
Loading maxima-grobner $Revision: 1.6 $ $Date: 2009/06/02 07:49:49 $
(%i2) poly_reduced_grobner([n1*(Rc+Rp1)-Cp1*Rp1, n0*(Rc+Rp1)-1,d1*(Rc+Rp1)-Cp1*Rp1*Rc], [Rc, Rp1, Cp1]);
(%o2) [n0*n1*Rp1-n1+d1*n0,n1^2+Cp1*(d1*n0-n1),n1*Rc-d1]
(%i3) algsys(%,[Rc, Rp1, Cp1]);
(%o3) [[Rc=d1/n1,Rp1=(n1-d1*n0)/(n0*n1),Cp1=n1^2/(n1-d1*n0)]]
The call to poly_reduced_grobner isn't needed at all:
(%i4) solve([n1*(Rc+Rp1)-Cp1*Rp1, n0*(Rc+Rp1)-1,d1*(Rc+Rp1)-Cp1*Rp1*Rc], [Rc, Rp1, Cp1]);
(%o4) [[Rc=d1/n1,Rp1=(n1-d1*n0)/(n0*n1),Cp1=n1^2/(n1-d1*n0)]]
--Barton
-----maxima-bounces at math.utexas.edu wrote: -----
>Hello,
>
>I'm?performing?electrical?circuits?parameters?extraction?from?measured
>frequency?response.?For?instance,?
>if?the?admittance?is?given?by
>????????Cp1?Rp1?s?+?1??
>Y(s)?=?------------------------
>????????Cp1?Rp1?Rc?s?+?Rc?+?Rp1?
>
>I?identify?a?transfer?function?as
>????????n1?s?+?n0
>H(s)?=?-----------
>????????d1?s?+?1?
>
>From?there,?I?solve?the?system?in?Maxima?as
>
>grobner_basis([n1*(Rc+Rp1)-Cp1*Rp1,?n0*(Rc+Rp1)-1,
>d1*(Rc+Rp1)-Cp1*Rp1*Rc]);
>
>[(-?Cp1?Rc?+?d1)?Rp1?+?d1?Rc,?
>??(-?n1?+?Cp1)?Rp1?-?d1,?
>-?n0?Rp1?-?n0?Rc?+?1,?
>-?n1?Rc?+?d1,?
>-?Cp1?n0?Rc?-?n1?+?Cp1,?
>????2
>-?n1??+?Cp1?n1?-?Cp1?d1?n0]
>
>From?the?last?line?I?get?Cp1,?from?the?previous?Rc,?and?so?on.?The?problem
>is?that?n1,?n0?and?d1?are?considered?as?variables,?though?there?are?just
>coefficients?extracted?from?data.?Would?it?be?possible,?with
>grobner_basis,
>to?specify?that?there?are?three?independant?variables,?namely?Rc,?Rp1?and
>Rc1,?which?must?be?obtained?mainly?as?functions?of?n1,?n0?and?d1???Or,
>alternativelly,?I?tried
>solve(grobner_basis([n1*(Rc+Rp1)-Cp1*Rp1,?n0*(Rc+Rp1)-1,
>d1*(Rc+Rp1)-Cp1*Rp1*Rc]),?[Rc,?Rp1,?Cp1]);
>But?is?seems?that?the?output?of?grobner_basis?is?not?compatible?with?solve
>input.?Any?hint??
>
>Regards
>
>Pascal?Dupuis
>--?
>
>
>Save?money,?use?Scarlet?Internet?solutions:?as?from?EUR?25/month...?visit
>http://www.scarlet.be/
>
>_______________________________________________
>Maxima?mailing?list
>Maxima at math.utexas.edu
>http://www.math.utexas.edu/mailman/listinfo/maxima