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

Community Tip - Have a PTC product question you need answered fast? Chances are someone has asked it before. Learn about the community search. X

why is my β1 variable said to be not defined when it's clearly defined above?

yoohooos
11-Garnet

why is my β1 variable said to be not defined when it's clearly defined above?

And why is my second equation doesn't work but it worked in the simpler line below?

 

Thank you very much!

Annotation 2020-03-03 210826.pngAnnotation 2020-03-03 212508.png

3 REPLIES 3

I suspect your issue lies with the fact that both "a" and "c" have units but beta does not.  The symbolic solver does not recognize units.

 

And I will repeat again (people are getting tired of listening):  MathCad is and has always been primarily a numeric program--if you want symbolics you are far better off searching elsewhere.  ( Your page fails in symbolics but works in numerics ==>  c := a/beta.)

LucMeekes
23-Emerald III
(To:yoohooos)

First of all:

Attach your worksheet. A picture may paint a thousand words. A worksheet tells more.

 

Then:

Symbolics do not work well with program's and certainly not with if-statements.

If you had not defined Beta1  before your symbolic solve statement, it would be undefined and the symbolic solver would have told you that c equals a/beta1.

 

The symbolic capabilities of Prime are good for many mathematical purposes, but you must realize that they are pure mathematics; part of that is that symbolics do not 'handle units' the way you might think, symbolics usually treats units as undefined variables.

So: if you want to use symbolics, then first solve whatever problem you have purely symbolically, to arrive at an expression. Once you have that, you can fill in the numbers, including units, to get a numeric answer.

In your case, you'd define

c(a,Beta1) := a=Beta1 * c  solve c --> a/Beta1

then you calculate:

c(a,Beta1)= ...

 

Success!
Luc

 

You were already told that the reason for you symbolic calculation failing is, that the symbolics has problems with the if statements, which it tries to evaluate symbolically without substituting the actual values.

For what you do you would not need symbolic evaluation, you could as well  use the numeric "root" command or a numeric solve block.

One way to use the symbolic "solve" as you had set it up is, to make beta_1 true numerical by reassigning it with an inline evaluation:

Werner_E_0-1583366671066.png

 

Top Tags