Re: Reduce::inex problem
- To: mathgroup at smc.vnet.net
- Subject: [mg114364] Re: Reduce::inex problem
- From: Adam Strzebonski <adams at wolfram.com>
- Date: Thu, 2 Dec 2010 05:39:34 -0500 (EST)
Andrzej Kozlowski wrote: > On 1 Dec 2010, at 08:13, Eduardo Cavazos wrote: > >> Hello, >> >> This seems like a pretty simple set of equations, but it's stumping >> reduce: >> >> { >> Subscript[V, b] == 4/3*Pi*Subscript[r, b]^3, >> Subscript[V, a] == 4/3*Pi*Subscript[r, a]^3, >> V == Subscript[V, b] - Subscript[V, a], >> \[Rho] == m/V >> }; >> % /. {Subscript[r, b] -> 5.75, >> Subscript[r, a] -> 5.70, \[Rho] -> 8.92}; >> Reduce[%] >> >> Of course, Solve can handle it. (Change the last expression to >> Solve[%,m].) >> >> Any thoughts on helping Reduce out here? >> >> Ed >> > > Clearly Reduce does not like subscripts. > {Vb == (4*Pi*rb^3)/3, Va == (4*Pi*ra^3)/3, > V == Vb - Va, \[Rho] == m/V}; > > % /. {rb -> 5.75, ra -> 5.7, \[Rho] -> 8.92}; > > Reduce[%] > > Vb == 796.3282878380627 && Va == 775.7346243950061 && > V == 20.593663443056585 && m == 8.92*V > > Andrzej Kozlowski > Reduce without variable specification finds a set of independent variables in the system. f[V, a] and V, for any symbol f, are not independent. Subscript does not have any special meaning for Reduce, it is treated like any other symbol. Hence, if the variables are not specified, Reduce will try to solve for variables {a, b, V, m}. If you specify variables {Subscript[V, a], Subscript[V, b], V, m}, Reduce solves the equations. In[1]:= eqns={Subscript[V, b] == 796.3282878380627, Subscript[V, a] == 775.7346243950061, V == -Subscript[V, a] + Subscript[V, b], 8.92 == m/V}; In[2]:= Reduce[eqns, {Subscript[V, a], Subscript[V, b], V, m}] Out[2]= V == 775.735 && V == 796.328 && V == 20.5937 && m == 8.92 V a b Best Regards, Adam Strzebonski Wolfram Research