code 41546;
real procedure WEIBULLINV(PROB,LOC,SCALE,ALPHA);
value PROB,LOC,SCALE,ALPHA; real PROB,LOC,SCALE,ALPHA;
begin
  if PROB ≤ 10-10 ∨ PROB ≥ 1 - 10-10 then
    STATAL3 ERROR(“WEIBULLINV”,1,PROB) else
  if SCALE ≤ 0 then
      STATAL3 ERROR(“WEIBULLINV”,3,SCALE)
  else
  if ALPHA ≤ 0 then
      STATAL3 ERROR(“WEIBULLINV”,4,ALPHA);

  WEIBULLINV:= LOC + SCALE × (-LN(1 - PROB)) ⭡ (1 / ALPHA)
end WEIBULLINV;
eop