[GiNaC-list] Not factoring expression
Alexei Sheplyakov
varg at metalica.kh.ua
Tue Feb 17 08:32:58 CET 2009
Hello,
On Mon, Feb 16, 2009 at 04:05:33PM +0000, James Jackson wrote:
> (C_2*s^2*L_2*V_1+C_2*L_1*C_1*s^4*L_2*V_1+L_1*C_1*s^2*V_1+V_1)*(1
> +L_1*C_1*s^2+C_2*L_1*s^2+C_2*L_1*C_1*s^4*L_2+C_2*s^2*L_2)^(-1)*V_1^(-1)
>
> What is happening is that the V_1 terms in the first bracket are not
> being factorised, and therefore no cancellation with the final
> (V_1)^(-1) term is occuring. All my symbols are created with a
> SymbolFactory pattern, so I can be sure each V_1 is the same object.
>
> Can anyone suggest why GiNaC isn't simplifying this to cancel the V_1
> terms?
It's a feature: GiNaC's automatic evaluator does not do any expensive
operations (such as computing GCDs, which is necessary to cancel common
factors). GiNaC is designed to process quite a large expressions (> 10^7
terms), so anything complicated (i.e. more expensive than O(N^2)) is
done only upon user's request. Otherwise it would be difficult even to
input the expression, let alone doing anything non-trivial with it (see
e.g. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=407109).
Best regards,
Alexei
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: Digital signature
URL: <http://www.cebix.net/pipermail/ginac-list/attachments/20090217/7feb27cd/attachment.sig>
More information about the GiNaC-list
mailing list