Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

global variable in MATHCAD 15 and Prime 3.0

Status
Not open for further replies.

smo03

Structural
Sep 9, 2005
2
0
0
FR
Hello All,

How can we explain that when we evaluate a global variable between two global définition with the same name, the value is identical to the first one and not the last one in the worksheet.

I use Mathcad 15 M30.

For the same example, with prime 3.0, Mathcad returns me that we can't define two global defintion with the same name. Which is the message that we expect for.

Thanks in advance for the response.

Sidi
 
Replies continue below

Recommended for you

Think of Mathcad as a scripting language that executes like any other programming language, i.e., evaluations occur left to right and top to bottom, just like C or Matlab. Every time you recalculate the sheet, the script runs through its paces.

The <SHFT>~ is a "global" variable assignment, ONLY in the context of its "scope" in M15; in programming, scope refers to the regions of the program where a variable or constant is valid.

If a single instance of z <SHFT>~ 5 exists, then the scope of z=5 is everywhere in the sheet, but a second instance, say z <SHFT>~ 3 is instantiated, then the scope z=5 is only between the the two <SHFT>~, while the scope of the second <SHFT>~ exists everywhere else.

So,
r := z+1 = 3

z <SHFT>~ 5

r := z+1 = 6

z <SHFT>~ 2

r := z+1 = 3


In Mathcad Prime, that paradigm was changed, since the M15 paradigm is a little bit inconsistent, because the left to right, top to bottom, evaluation order is actually violated for the <SHFT>~ assignments, since they're basically assigned and calculated before the rest of the sheet, which should have resulted in z=2 all the time in the example above. If that was the intended paradigm, then multiple <SHFT>~ assignments of z should always take the last assigned value of 2, and there should be no instance of z=3 anywhere in the sheet.

TTFN
faq731-376
7ofakss

Need help writing a question or understanding a reply? forum1529


Of course I can. I can do anything. I can do absolutely anything. I'm an expert!
There is a homework forum hosted by engineering.com:
 
Status
Not open for further replies.
Back
Top