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

Community Tip - Help us improve the PTC Community by taking this short Community Survey! X

Solve block for N inputs

DJF
16-Pearl
16-Pearl

Solve block for N inputs

I'm wondering if there is a simple way to perform this, as I can't figure it out.  

Let's saying we're using a solve block to develop a solution - in this case the flow through multiple orifices in series.  Easy enough to enter the equations and solve as follows:ori1.jpg

 

But if we have 10 orifices, that's a lot of typing.  Is there a way to use indices or otherwise simplify this?  I was thinking of something along these lines, but can't get it to work.  Judging by the error maybe it's impossible.  

ori4.jpg

 

 

This still shows N=2 orifii as a starting point, but the table could have 2, 3, .. N rows.  

Any thoughts or solutions would be appreciated.

4.0 attached.

Thanks!

1 ACCEPTED SOLUTION

Accepted Solutions
MJG
18-Opal
18-Opal
(To:DJF)

See attached (PDF and Prime 3.1).

 

P_in is the pressure before the first orifice.  P_out is the pressure after the last orifice.

Pin and Pout are vectors with the pressure before and after each orifice.

The guess values for Pin and Pout are multiplied by C just to make them vectors of the same size.

View solution in original post

4 REPLIES 4
Fred_Kohlhepp
23-Emerald I
(To:DJF)

Can you treat it ike a finite difference problem--define a vector of N=1 pressures, develop a cost function that computes the error in each step and use a solve block to find the correct values in the vector?

ValeryOchkov
24-Ruby IV
(To:DJF)

I have used a programing tools in same case

16-10[1].png

MJG
18-Opal
18-Opal
(To:DJF)

See attached (PDF and Prime 3.1).

 

P_in is the pressure before the first orifice.  P_out is the pressure after the last orifice.

Pin and Pout are vectors with the pressure before and after each orifice.

The guess values for Pin and Pout are multiplied by C just to make them vectors of the same size.

DJF
16-Pearl
16-Pearl
(To:MJG)

Thank MJG, exactly what I was after.  Very clever with the stack = stack constraint.  I also think I could get there using Minerr, which is where Fred was headed, I think.  But this solution is very compact.  Will come in handy for this and other problems.

Top Tags