Skip to main content
6-Contributor
May 6, 2025
Solved

Solve block question

  • May 6, 2025
  • 2 replies
  • 1633 views

Good morning, PTC Community:

I am getting stuck in quite a simple solve block. See attached for pipe min wall thickness calculation.

A sensible solution for OD is somewhere slightly greater than 0.60-inch.

Is this related to TOL or CTOL commands? Even if I take the TOL or CTOL off, the solution gets stuck in the solver.

Do I have too many items in the Guess block?

I use Mathcad Prime 10.0.1.0.

 

Your review and suggestions for a fix will be appreciated.

 

Regards,

Joseph T.

Best answer by Werner_E

When you define r (and other variables) dependent on OD in your solve block it uses the guess values and is never changed. It remains a constant.

That way you actually don't have any equation in OD in your solve block and Prime cannot fulfill your "equation"

Werner_E_0-1746541134082.png

because the value on the left hand side is constant 2.295  (which is what you get with the guess value OD=0.75 in).

 

There are two possible ways to solve your problem:

 

1) Turn every assignment like

Werner_E_1-1746541271813.png

into an equation

Werner_E_2-1746541336438.png

You would have to do this five times.

Drawback is that you now must have the solve block to solve for six variables (OD, r, t, Sig1, Sig2 and Sig.VM) even though you are only interested in OD.

 

2) The way I would prefer and have chosen in the attached sheet.

Turn all those assignments which depend on OD into functions of OD. I would also move these functions out of the solve block in front of it. That way all that remains in the solve block is the guess and one equation. The additional constraint OD>ID is not really necessary if the guess is large enough, but I would leave it there just to be on the safe side.

This is what it looks like now:

Werner_E_3-1746541806038.png

 

 

BTW, you could also use the "root" function to do the job

Werner_E_4-1746542140497.png

Depending on the range you provide you may also get the solution which is lower than ID

Werner_E_5-1746542214054.png

The "root" function could also used by providing a guess value in front instead of the range limits:

Werner_E_6-1746542335418.png

 

Prime 10 sheet attached

 

 

2 replies

Werner_E25-Diamond IAnswer
25-Diamond I
May 6, 2025

When you define r (and other variables) dependent on OD in your solve block it uses the guess values and is never changed. It remains a constant.

That way you actually don't have any equation in OD in your solve block and Prime cannot fulfill your "equation"

Werner_E_0-1746541134082.png

because the value on the left hand side is constant 2.295  (which is what you get with the guess value OD=0.75 in).

 

There are two possible ways to solve your problem:

 

1) Turn every assignment like

Werner_E_1-1746541271813.png

into an equation

Werner_E_2-1746541336438.png

You would have to do this five times.

Drawback is that you now must have the solve block to solve for six variables (OD, r, t, Sig1, Sig2 and Sig.VM) even though you are only interested in OD.

 

2) The way I would prefer and have chosen in the attached sheet.

Turn all those assignments which depend on OD into functions of OD. I would also move these functions out of the solve block in front of it. That way all that remains in the solve block is the guess and one equation. The additional constraint OD>ID is not really necessary if the guess is large enough, but I would leave it there just to be on the safe side.

This is what it looks like now:

Werner_E_3-1746541806038.png

 

 

BTW, you could also use the "root" function to do the job

Werner_E_4-1746542140497.png

Depending on the range you provide you may also get the solution which is lower than ID

Werner_E_5-1746542214054.png

The "root" function could also used by providing a guess value in front instead of the range limits:

Werner_E_6-1746542335418.png

 

Prime 10 sheet attached

 

 

thodij6-ContributorAuthor
6-Contributor
May 6, 2025

Werner - I like the 2nd approach that you have explained above, and it works perfectly.

Thank you for the speedy response and solution options.

Getting to a resolution within minutes of my post is unheard of anywhere. So, this is much appreciated.

 

Regards,

Joseph T.

thodij6-ContributorAuthor
6-Contributor
May 6, 2025

Manual solution for OD = 0.66733-inch (call it 0.667-inch), with MOS ~ 1.5.

See attached.

25-Diamond I
May 6, 2025

@thodij wrote:

Manual solution for OD = 0.66733-inch (call it 0.667-inch), with MOS ~ 1.5.

See attached.


Correct 🙂

Guess our posting have crossed.

 

BTW, demanding that the MoS>=1.5 does not make much sense, because any OD value larger than the 0.667 in makes the MoS larger.

The same is true for any value of OD smaller than 0.348 in.

 

Werner_E_0-1746543074771.png

 

thodij6-ContributorAuthor
6-Contributor
May 6, 2025

Werner,

 

If I set MOS >= 1.5, and set a TOL on the MOS to, say +0.001/-0.000 within the solve block, then that will constrain the problem solution.

What do you think?

 

Joseph T.