Mathematica 9 is now available
Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2007
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2007

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Rule-based programming: declare variables to be a number

  • To: mathgroup at smc.vnet.net
  • Subject: [mg80792] Re: Rule-based programming: declare variables to be a number
  • From: dh <dh at metrohm.ch>
  • Date: Sat, 1 Sep 2007 00:39:28 -0400 (EDT)
  • References: <fb83lf$82d$1@smc.twtelecom.net>


Hi Hendrick,

simpliy replace g by 1. before calling NumberQ.

Further, I think it is a bad thing to change definitions of built in 

function. Better create your own. Then:

myNumberQ[expr_] := NumberQ[expr /. g -> 1.]

By the way, I noted ,that NumberQ returns True for Exp[1.] but False for 

Exp[1]

hope this helps, Daniel



Hendrik van Hees wrote:

> I still work with Mathematica 4.0. I hope, somebody can answer my

> question despite this.

> 

> I have written a simple rule-based program to evaluate traces of

> SU(2)-Lie algebra (Pauli matrices) to help me to obtain the Lagrangian

> of a chiral model, but that's not so important for my question.

> 

> My problem is the following: To get the usual rules with algebraic

> expressions containing numbers and Lie-algebra variables, one needs to

> define what happens when a Lie-algebra variable is multiplied by a

> number. This works fine as long as I use really constant numbers like

> 1, 2, 1/2, etc.

> 

> However, of course, one needs this feature also for variable numbers,

> say a coupling constant g. So I wrote Unprotect[NumberQ] and then said

> 

> NumberQ[g]:=True,

> 

> but then NumberQ[g^2] evaluates to False. So I have written a whole

> bunch of rules to make powers of g also numbers. It works already quite

> well, but is there a possibility to just declare a variable (like g) to

> be a number, and then make Mathematica know, that expressions like g^2,

> Sqrt[g], 1+g, etc. are also numbers?

>  




  • Prev by Date: Re: [Mathematica 6] Bug in Labeled, Center align option not accepted.
  • Next by Date: Re: Animation of a rotating object. (Mathematica 6)
  • Previous by thread: Re: [Mathematica 6] Bug in Labeled, Center align option not accepted.
  • Next by thread: Re: Rule-based programming: declare variables to be a number