(def SAMPLES []) (let [Tl 0.2 Po 0.403 Pl 0.272 Sl 0.035] (defn walsh ([] (walsh (+ (rand 500) 1) (+ (rand 500) 1))) ([fl p] (let [lr (/ (* Tl Po p) (* Pl Sl fl))] (if (>= lr 10) 10 0)))) (defn random-walsh ([] (random-walsh 1000 1 300 100 500)) ([samples] (random-walsh samples 1 300 100 500)) ([min-fl max-fl min-p max-p] (random-walsh 1 min-fl max-fl min-p max-p)) ([samples min-fl max-fl min-p max-p] (dotimes [one samples] (let [fl (+ (rand max-fl) min-fl) p (+ min-p (rand (- max-p min-p))) lr (walsh fl p)] (def SAMPLES (conj SAMPLES [fl p lr])))) (let [result SAMPLES] (def SAMPLES []) result))) ) ;end let