The Splitter is used to send material to multiple output ports in percentages that the modeller specifies. These percentages are specified in a table called the Splitter Percents Table. Each row in the table corresponds to an output port. There are columns that allow the modeller to enter a description of each port (for the modeller’s use only) and the percentage (from 0-100) of the outgoing material that will go to each port. When the Splitter sends material out, it will always send in the percentages specified. If the Splitter can not send all the material that it is trying to send, it will reduce the amount that it sends to the other ports to keep the percentages equal at all times. The modeller has complete control over the input rates and scale factors using the AdjustInputPorts function. They also have control over the total output rate. The port output rate and the scale factors will be adjusted by the object itself as needed. It should be noted that the fluidsplitter may not adjust the amount of material to go out correctly if the downstream objects are full, or nearly full. Due to the timing of the calculations, the Splitter may decide there is no room for material it is trying to send even if the downstream object will release enough material to make room for the Splitter’s material.
Details
The FluidBlender receives material in a normal manner, but sends it out differently. It sends material out in percentages that the user specifies in a table called the Splitter Percents. The table is not visible in the Properties window until the Splitter is connected to downstream objects. Each row of the table corresponds to a single output port, and has two columns: a description and the percentage. The description is a text string that describes the material being sent to that port, it is not used by the object and is for the modeller's benefit only. The percentage is a number between 0 and 100 that indicates what percentage of the outgoing material should be sent to that port.
Every tick, the Splitter calculates the amount of material that should be sent to each of the downstream objects, based on rates and capacities. If there is not enough room in one of the downstream objects to receive the amount the Splitter has calculated, the amount sent to each port is reduced to keep the percentages correct.
Because the Splitter controls how much it sends to each port at any point in time, the modeller does not have access to the maximum port rate or the output port scale factors. They can, however, edit the object’s maximum output rate. The user has complete control over the input rates and scale factors. They can change these values with the AdjustInputRates function, which fires every tick. This allows them to update the input rates and scale factors as the model is running.
States
Empty - The Splitter has nothing in it.
Not Empty - The Splitter has material in it that can be sent out.
Properties pages
Splitter
Percents
Triggers
FluidLevelDisplay
Labels
General