Question: Problem with applyrule

Hi,

can you please help me with the usage of applyrule? I have the following problem that I cannot isolate. I have a rule that I want to apply, but instead of applying the rule to the expression, the rule seems to be applied to itself. In an isolated worksheet everything is fine:

> 

restart;

> 

rule:=abs(''a''::algebraic)^2=''a''^2;

abs('a'::algebraic)^2 = 'a'^2

(1)
> 

 

> 

myexp:=abs(548.477146186283171377723+radius_motor*q_mot_vec_2(t)-l_wire_0[2])^2

abs(548.477146186283171377723+radius_motor*q_mot_vec_2(t)-l_wire_0[2])^2

(2)
> 

applyrule(rule,myexp);

(548.477146186283171377723+radius_motor*q_mot_vec_2(t)-l_wire_0[2])^2

(3)
> 

rule

abs(a::algebraic)^2 = a^2

(4)
> 

 


Download applyrule.mw

What happens when I try to use this rule in my script is this:

> 

restart;

> 

#read "some_long_script.mpl":

> 

rule:=abs(''a''::algebraic)^2=''a''^2;

abs('a'::algebraic)^2 = 'a'^2

(1)
> 

applyrule(rule,abs(x)^2)

abs(x)^2

(2)
> 

rule

a::algebraic^2 = a^2

(3)
> 

 

>
 

I want to clarify, that the script that is read before applying those rules does not apply a similar rule. Also the variables rule and x were free. Can you please help me to locate the problem?

Thanks!

Honigmelone

Please Wait...