question

Bryan Suharik avatar image
0 Likes"
Bryan Suharik asked Matthew Gillespie commented

How to break up a list of items?

I'm almost there on this simulation, but i think i have an issue with the process flow. I need each wellsite to release the particular itemtype at set intervals defined in the arrivals table. However, it seems that ALL items for all Well sites queues are put on the list and then the release rates takes into account the entire group of flow items, not individually by wellsite queue. Is there any way to separate it to each wellsite so that dynamically, if the user selects 3 wellsites vs 4 wellsites, the process flow is individual to each wellsite and isolated to the wellsite?

bryansuharik1.fsm

FlexSim 16.2.2
listlist entries
bryansuharik1.fsm (84.7 KiB)
· 2
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Sam Stubbs avatar image Sam Stubbs ♦ commented ·

Have you tried creating a partition on your item List, per Well Site? Then you could just get statistics on that particular partition. Would that work for your situation?

0 Likes 0 ·
Bryan Suharik avatar image Bryan Suharik commented ·

@Sam Stubbs

Do you have an example? I haven't tried that before.

I was thinking of assigning more global lists. Then copying the process flow nodes multiple times for however many wellsites there are. This may be more complicated than needs to be done though.

What is the partition idea?

0 Likes 0 ·

1 Answer

Sam Stubbs avatar image
0 Likes"
Sam Stubbs answered Matthew Gillespie commented

In the user manual, if you go under Modeling Tools > Lists > Concepts, it explains briefly about List partition. Essentially lists can be broken up into partitions, smaller subsets of the list, which each have numerical ID associated with them. If you were to partition your item list into a number of partitions dictated by the GUI # of Well Sites. Then you could, wherever you push those items onto the list, push them onto the partition corresponding to that well site. When you create the well sites, maybe put a label on them that has the corresponding partition ID. (For example: Well Site 1 would have a "partID" label with a value of 1, Well Site 2's "partID" label would be 2, etc.) Then in your Pull from List activity in Process Flow, under the partition ID field you could write something like this: getlabel(getlabel(token,"wellSite"),"partID")

I would suggest reading up on Lists and Partition IDs in the manual and see if this is along the lines you were thinking.

· 4
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Bryan Suharik avatar image Bryan Suharik commented ·
@Sam Stubbs

I'll have a look. that sounds like exactly the thing i need. Thanks!

0 Likes 0 ·
Bryan Suharik avatar image Bryan Suharik commented ·

@Sam Stubbs

Hi Sam, so it seems my process flow list is already partitioned as its separated by itemtype where a new itemtype releases at various intervals. But how would i asssign it 2 partitions, i.e. itemtype and wellsite number. Struggling a bit on this as there's not too much information in the user manual on list partitioning and pulling from it. Any help is appreciated.

Thanks!bryansuharik1.fsm

0 Likes 0 ·
bryansuharik1.fsm (90.4 KiB)
Sam Stubbs avatar image Sam Stubbs ♦ Bryan Suharik commented ·

One thing I might try then, if you can figure out how to rework your logic a little bit, would be to have the list partitioned by Well Site number, and just use the itemType field that's already on the list to organized the items by type. Wherever you are pulling the items, instead of pulling them by partition, pull them by itemType using a query.

0 Likes 0 ·
Matthew Gillespie avatar image Matthew Gillespie ♦♦ Bryan Suharik commented ·
0 Likes 0 ·