Skip to content

Commit 35a8ba2

Browse files
committed
[n-body] fix some type errors
1 parent fce6a8b commit 35a8ba2

File tree

1 file changed

+7
-8
lines changed

1 file changed

+7
-8
lines changed

shootout/n-body.p6.pl

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,15 @@
44
#
55
# USAGE: perl6 n-body.p6.pl 1000
66

7-
constant PI = 3.141592653589793;
8-
constant SOLAR_MASS = (4 * PI * PI);
9-
constant DAYS_PER_YEAR = 365.24;
7+
constant SOLAR_MASS = (4 * pi * pi);
8+
constant DAYS_PER_YEAR = 365.24e0;
109

1110
constant $LAST = 4;
1211

1312
# @ns = ( sun, jupiter, saturn, uranus, neptune )
14-
my Num @XS = (0, 4.84143144246472090e+00, 8.34336671824457987e+00, 1.28943695621391310e+01, 1.53796971148509165e+01);
15-
my Num @YS = (0, -1.16032004402742839e+00, 4.12479856412430479e+00, -1.51111514016986312e+01, -2.59193146099879641e+01);
16-
my Num @ZS = (0, -1.03622044471123109e-01, -4.03523417114321381e-01, -2.23307578892655734e-01, 1.79258772950371181e-01);
13+
my Num @XS = (0e0, 4.84143144246472090e+00, 8.34336671824457987e+00, 1.28943695621391310e+01, 1.53796971148509165e+01);
14+
my Num @YS = (0e0, -1.16032004402742839e+00, 4.12479856412430479e+00, -1.51111514016986312e+01, -2.59193146099879641e+01);
15+
my Num @ZS = (0e0, -1.03622044471123109e-01, -4.03523417114321381e-01, -2.23307578892655734e-01, 1.79258772950371181e-01);
1716
my Num @VXS = map {$^a * DAYS_PER_YEAR},
1817
(0, 1.66007664274403694e-03, -2.76742510726862411e-03, 2.96460137564761618e-03, 2.68067772490389322e-03);
1918
my Num @VYS = map {$^a * DAYS_PER_YEAR},
@@ -63,7 +62,7 @@ ($dt)
6362
sub energy {
6463
my Num ($e, $dx, $dy, $dz, $distance);
6564

66-
$e = 0.0;
65+
$e = 0e0;
6766
for 0..$LAST -> $i {
6867
$e += 0.5 * @MASS[$i] *
6968
(@VXS[$i]*@VXS[$i] + @VYS[$i]*@VYS[$i] + @VZS[$i]*@VZS[$i]);
@@ -79,7 +78,7 @@ sub energy {
7978
}
8079

8180
sub offset_momentum {
82-
my Num ($px, $py, $pz) = (0.0, 0.0, 0.0);
81+
my Num ($px, $py, $pz) = (0e0, 0e0, 0e0);
8382

8483
for 0..$LAST -> $i {
8584
$px += @VXS[$i] * @MASS[$i];

0 commit comments

Comments
 (0)