Not that I can think of. Good catch on the minus sign. And use the `as_Add` 
flag unless you are positive that the expression you are working with is 
always an Add. Does this work:

sp.Eq(*[-1**i*a for i, a in enumerate(reversed((ht * _lhs - ht * 
_rhs).expand().as_independent(rho1, as_Add=True)))]

On Saturday, May 6, 2017 at 3:24:24 PM UTC-5, Jonathan Essen wrote:

> Thank you for the reply, but I noticed that the new right hand side is off 
> by an overall minus sign! I fixed it using:
>
> tmp = (ht * _lhs - ht * _rhs).expand().as_independent(rho1)
> sp.Eq(tmp[1], rhs=-tmp[0])
>
> Is there was a cleaner way to do this?
>
>
>
> On Thursday, May 4, 2017 at 8:21:44 AM UTC-7, Chris Smith wrote:
>>
>> Given Eq(L, R) where L and R are the left and right hand sides of the 
>> equation, try: `Eq(*list(reversed((L - R).expand().as_indepedent(foo, 
>> as_Add=True))))` where foo is the variable of interest to get the new 
>> equation.
>>
>> On Tuesday, April 25, 2017 at 2:35:10 PM UTC-5, Jonathan Essen wrote:
>>>
>>> I am attempting to use sympy to generate an implicit scheme for the heat 
>>> equation. With the Crank-Nicolson time discretization I have equation 1 
>>> (attached).
>>>
>>> Is there any way to isolate all occurrences of $\rho^{n+1}$ (along with 
>>> its derivatves) to the lefthand side, as in equation 2 (attached).
>>>
>>> I would be very interested to know! Apparently it has something to do 
>>> with the collect function.
>>>
>>> Best,
>>> Jonathan
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/48e8a80b-f619-4eca-8e43-989749e3fbab%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to