:MACRO: CLIP(x1,x2,y1,y2) CLIP=IF THEN ELSE(x1>x2,y1,y2) ~ y1 ~ | :END OF MACRO: ******************************************************** .Retail ********************************************************~ | UOR=INTEG(RRR-SSR,RRI*(DHR+DUR)) ~ units ~ unfilled orders at retail | IAR=INTEG(SRR-SSR,AIR*RRI) ~ units ~ inventory actual at retail | STR=UOR/DFR ~ units/week ~ shipping rate to be tried at retail | NIR=IAR/DT ~ units/week ~ negative inventory limit rate at retail | SSR=CLIP(STR,NIR,NIR,STR) ~ units/week ~ shipments sent from retail | DFR=(MNR/IAR)+DHR ~ weeks ~ delay in filling orders at retail | MNR=DUR*IDR ~ unit*weeks ~ | IDR=AIR*RSR ~ units ~ inventory desired at retail | RSR=INTEG((1/DRR)*(RRR-RSR),RRR) ~ units/week ~ requisitions smoothed at retail | PDR=RRR+(1/DIR)*(IDR-IAR+LDR-LAR+UOR-UNR) ~ units/week ~ purchasing rate decision at retail | LDR=RSR*DCR+RSR*DMR+RSR*DFD+RSR*DTR ~ units ~ pipeline orders desired in transit to supply retail | LAR=CPR+PMR+UOD+MTR ~ units ~ pipeline orders actually in transit to retail | UNR=RSR*(DHR+DUR) ~ units ~ normal unfilled orders at retail | CPR=INTEG(PDR-PSR,DCR*RRI) ~ units ~ clerical in-process orders at retail | PSR=DELAY3(PDR,DCR) ~ units/week ~ purchase orders sent from retail | PMR=INTEG(PSR-RRD,DMR*RRI) ~ units ~ purchase orders in mail from retail | RRD=DELAY3(PSR,DMR) ~ units/week ~ requisitions received at distributor | MTR=INTEG(SSD-SRR,DTR*RRI) ~ units ~ material in transit to retail | SRR=DELAY3(SSD,DTR) ~ units/week ~ shipments received at retail | ******************************************************** .Retail.Noise ********************************************************~ Implements the noise input from Section 15.7.3, not found in Appendix B | NSE=SAMPLE IF TRUE( Time-INTEGER(Time)