Re: Question regarding replacement
- To: mathgroup at smc.vnet.net
- Subject: [mg63866] Re: [mg63860] Question regarding replacement
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Fri, 20 Jan 2006 04:32:20 -0500 (EST)
- Reply-to: hanlonr at cox.net
- Sender: owner-wri-mathgroup at wolfram.com
a=b c/d; params={d/(b c)->theta}; Since you require that params not be redefined and, presumably, that params be used: a/.Solve[params/.Rule->Equal,b][[1]] 1/theta or a/.Solve[params/.Rule->Equal,c][[1]] 1/theta or a/.Solve[params/.Rule->Equal,d][[1]] 1/theta In general, the LHS of a replacement rule should be as simple as possible so that the form will match. Bob Hanlon > > From: "michael_chang86 at hotmail.com" <michael_chang86 at hotmail.com> To: mathgroup at smc.vnet.net > Subject: [mg63866] [mg63860] Question regarding replacement > > Hi, > > Often, when manipulating symbolic results, one might want to replace > some symbols with "simpler" expressions, and typically, I've managed > this with "/.". However, suppose that > > In[1]: a = b c/d > > and I know that d/(b c) = theta. Unfortunately, > > In[2]: params={d/(b c)->theta}; a/.params > does *not* yield 1/theta. How can I achieve this simply *without* > redefining params? > > (This (too) simple example is meant to demonstrate some difficulties > that I typically encounter when trying to replace symbols in *much* > more complicated expressions, where, sometimes, the symbols that I am > trying to replace are inverted ... :( ) > > My apologies in advance, since this seems embarassingly simple, but any > help or suggestions would be greatly appreciated! > > Regards, > > Michael > > Bob Hanlon Chantilly, VA