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

Community Tip - Learn all about PTC Community Badges. Engage with PTC and see how many you can earn! X

Automatic pulling of answers from a solver block

ppennington
1-Newbie

Automatic pulling of answers from a solver block

Hi

I'm working on a sheet which has a number of solver blocks. For clarity of work and for a concise summary, I want to pull the answers from the 'FIND' function out of the solver block. Currently I have to do this manually as I can't find a way of automatically outputting the values into the main body of the sheet. Does anybody know how to achieve this automatically?

Solver block issue.png

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions

Phil Pennington wrote:

Thanks Stuart

This appears to provide the same outcome as the original formula however, as below. If I type Fcyl= outside of the solver block, although it does pull out the value automatically, it pulls out the complete matrix including the other 11 outputs, which isn't particularly helpful. I'm really looking to isolate each output in the same manner as I am currently manually typing in the image below

mcd export.png

OK.  You've got a few choices for dealing with this, I think. (I've only got the Prime Express, which doesn't allow access to solve blocks or programs).

Your Find statement will return all of the parameters you've asked it to do.  I assume you want all of them.

Either way, you need to define a (column) vector containing all of the names of parameters and in the order that you've put them.   You can then replace FCYL in the Solve Block with some arbitrary but meaningful name, such as Results, and then assign Results to the vector of names.  Alternatively, you could try just replacing FCYL with the vector of names inside the Solve Block.

Stuart

View solution in original post

4 REPLIES 4

Instead of writing "Find(x,y,z)=", write "Results:=Find(x,y,z)" , or whatever variable name you want in place of "Result".

You can even write "f(a):=Find(x,y,z)" where a is a parameter that you use within your solve block.   I think this should be covered in the Help somewhere.

Stuart

Thanks Stuart

This appears to provide the same outcome as the original formula however, as below. If I type Fcyl= outside of the solver block, although it does pull out the value automatically, it pulls out the complete matrix including the other 11 outputs, which isn't particularly helpful. I'm really looking to isolate each output in the same manner as I am currently manually typing in the image below

mcd export.png

Thanks

Phil

Phil Pennington wrote:

Thanks Stuart

This appears to provide the same outcome as the original formula however, as below. If I type Fcyl= outside of the solver block, although it does pull out the value automatically, it pulls out the complete matrix including the other 11 outputs, which isn't particularly helpful. I'm really looking to isolate each output in the same manner as I am currently manually typing in the image below

mcd export.png

OK.  You've got a few choices for dealing with this, I think. (I've only got the Prime Express, which doesn't allow access to solve blocks or programs).

Your Find statement will return all of the parameters you've asked it to do.  I assume you want all of them.

Either way, you need to define a (column) vector containing all of the names of parameters and in the order that you've put them.   You can then replace FCYL in the Solve Block with some arbitrary but meaningful name, such as Results, and then assign Results to the vector of names.  Alternatively, you could try just replacing FCYL with the vector of names inside the Solve Block.

Stuart

Spot on, thanks Stuart

I went for the first option, for the record.

Top Tags