cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Did you get an answer that solved your problem? Please mark it as an Accepted Solution so others with the same problem can find the answer easily. X

Strange Substitution Bug in Mathcad 8??

RonaldKohl
5-Regular Member

Strange Substitution Bug in Mathcad 8??

In the thirty-day trial.  Hoping this "bug" (see attached .pdf) turns out to be my mistake, because if not, PTC will have lost a customer.

 

 

1 ACCEPTED SOLUTION

Accepted Solutions

I would consider it being a combination of user error and software bug 😉

 

You used S.0 like a function because you typed S.0(... instead of S.0 * (....  and IMHO Prime should throw an error when you try to replace the function name S.0 by the expression.

 

You can avoid that error by explicitly type a multiplication * after S.0.

Note that there is an implicit multiplication character right in front of s(lambda) which was automatically inserted by Prime

 

Its similar to when you type 2x, then Prime assumes you mean a multiplication (what else?) and inserts an implicit multiplication in-between which you only see when you click in the region.

On the other hand if you type xy, Prime can't know that you maybe mean x*y and assumes a variable name xy.

And if you type xy( then Prime assumes a function with the name xy and the opening parenthesis being there to hold the function arguments..

 

The expression you try to substitute S.0 for never can be a function name and so Prime should refuse to substitute. Unfortunately it doesn't and the result presented is quite strange indeed. S.0 is split in a function I( in the numerator and a second function e.c in the denominator 😉

 

Here is what you possible expected, but note that you introduced another function with a strange name which as I guess you did not intend, too:

Werner_E_0-1677876073614.png

So what you had in mind possibly was

Werner_E_1-1677876194429.png

I assumed that DeltaOmega was really meant to be a single variable name and that s(lambda) really should be a function.

As you can see I used implicit multiplications throughout (shown as a small space only) now and deleted unnecessary parentheses, but the symbolics used explicit multiplications in its result

You can create an implicit multiplication by typing Ctrl-Shift-U and its called "scaling operator" in the Prime help (because its also used between a value and its unit).

 

 

 

 

View solution in original post

4 REPLIES 4

Hi,

PDF not available. Please upload also Mathcad file.


Martin Hanák
RonaldKohl
5-Regular Member
(To:RonaldKohl)

Mathcad file is attached.  Thanks Martin.

I would consider it being a combination of user error and software bug 😉

 

You used S.0 like a function because you typed S.0(... instead of S.0 * (....  and IMHO Prime should throw an error when you try to replace the function name S.0 by the expression.

 

You can avoid that error by explicitly type a multiplication * after S.0.

Note that there is an implicit multiplication character right in front of s(lambda) which was automatically inserted by Prime

 

Its similar to when you type 2x, then Prime assumes you mean a multiplication (what else?) and inserts an implicit multiplication in-between which you only see when you click in the region.

On the other hand if you type xy, Prime can't know that you maybe mean x*y and assumes a variable name xy.

And if you type xy( then Prime assumes a function with the name xy and the opening parenthesis being there to hold the function arguments..

 

The expression you try to substitute S.0 for never can be a function name and so Prime should refuse to substitute. Unfortunately it doesn't and the result presented is quite strange indeed. S.0 is split in a function I( in the numerator and a second function e.c in the denominator 😉

 

Here is what you possible expected, but note that you introduced another function with a strange name which as I guess you did not intend, too:

Werner_E_0-1677876073614.png

So what you had in mind possibly was

Werner_E_1-1677876194429.png

I assumed that DeltaOmega was really meant to be a single variable name and that s(lambda) really should be a function.

As you can see I used implicit multiplications throughout (shown as a small space only) now and deleted unnecessary parentheses, but the symbolics used explicit multiplications in its result

You can create an implicit multiplication by typing Ctrl-Shift-U and its called "scaling operator" in the Prime help (because its also used between a value and its unit).

 

 

 

 

RonaldKohl
5-Regular Member
(To:Werner_E)

Many thanks Werner_E.  A wonderfully well-done explanation.  Should be helpful to all newbies.

Top Tags