From ab293826320d0eacdab671b66d5224015af4adc3 Mon Sep 17 00:00:00 2001 From: MatDau Date: Fri, 24 May 2019 14:10:27 +0200 Subject: [PATCH] update pi.fly --- examples/pi/src/main/fly/fly/pi/pi.fly | 44 ++++++++++++++------------ 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/examples/pi/src/main/fly/fly/pi/pi.fly b/examples/pi/src/main/fly/fly/pi/pi.fly index 767c867..9ab02d9 100755 --- a/examples/pi/src/main/fly/fly/pi/pi.fly +++ b/examples/pi/src/main/fly/fly/pi/pi.fly @@ -1,20 +1,24 @@ -env local = [type:"local"] - channel ch on local - func hit(data){ - random r - var x = r.nextDouble() - var y = r.nextDouble() - var msg=0 - if( (x*x)+(y*y) < 1.0 ){ msg=1 } - ch!msg - } - func estimation(){ - var sum = 0 - var crt = 0 - for i in [0:10000] { - sum += ch? as Integer - crt += 1 - } - println "PI approximation is "+ (sum*4.0)/crt - } - fly hit in [0:10000] on local thenall estimation \ No newline at end of file +var local = [type="smp",nthread=4] + +var ch = [type="channel"] on local + +func hit(i){ +var r = [type="random"] + var x = r.nextDouble() + var y = r.nextDouble() + var msg=0 + if((x*x)+(y*y)<1.0){msg=1} + ch!msg +} + +func estimation(){ + var sum = 0 + var crt = 0 + for i in [0:1000000] { + sum += ch? as Integer + crt += 1 +} + println "pi estimation: "+ (sum*4.0)/crt +} + +fly hit in [0:1000000] on local thenall estimation