Examples
Examples
Try the starting example
- Ingredients [name,forecast drinks,units/drink,loss fraction,stock units,pack units]; enter JSON
- [["Syrup",100,0.02,0.1,1,1],["Cream",50,0.03,0.05,0.5,1]]
- Stock plan [name,gross units,packs,surplus] (JSON)
- [["Syrup",2.22222222222,2,0.777777777778],["Cream",1.57894736842,2,0.921052631579]]
Try another scenario
- Ingredients [name,forecast drinks,units/drink,loss fraction,stock units,pack units]; enter JSON
- [["Syrup",150,0.025,0.08,1,1],["Cream",60,0.04,0.1,1,2]]
- Stock plan [name,gross units,packs,surplus] (JSON)
- [["Syrup",4.07608695652,4,0.923913043478],["Cream",2.66666666667,1,0.333333333333]]
Calculation method
Calculation method
Stock plan [name,gross units,packs,surplus] (JSON)
Gross=forecast×per-drink/(1−loss); packs=ceil(max(0,gross−stock)/pack); surplus=stock+packs×pack−gross.
Symbols and units
- a
- Ingredients [name,forecast drinks,units/drink,loss fraction,stock units,pack units]; enter JSON
Use the units shown. A list keeps the order in which you enter its values. The symbol ^ means “raised to the power of”.
Assumptions & limits
Assumptions & limits
- Net recipe demand adjusted for measured loss and whole packs; one independent ingredient per row. Supported limits: All numeric inputs and computed intermediates must remain finite. Supported numeric input magnitude is zero or 1e-12 through 1e12 in absolute value; reject values outside this bounded range. All lists/JSON record tables are limited to 100 records unless a stricter bound is stated; reject malformed record arity and wrong member types. Loss fraction in [0,1); pack units>0; all units internally consistent per ingredient.
Are these inputs private?
These calculations run in your browser. A shared link contains the values you choose to share. Only questions submitted to the separate AI finder are sent to OpenAI.