com presentations: PHP in Space talk for PHP UK.: slides/space/2863d8cfddda939001b44506ab8e7a46.png slides/space/bill-explosion.xml slides/space/decimal_to_dms .xml slides/space/delta-v-specific-calculation.xml slid es/space/delta-v-specific-impulse.xml slides/space/delta-v .xml slides/space/direction.xml slides/space/distance-o n-kerbin.xml slides/space/distance-vincenty.xml slides/ space/distance.xml slides/space/dms_to_decimal.xml slides/space/duna

[email protected] (Derick Rethans)
Newsgroups php.pres
Message-ID <[email protected]>
Commit:    65fcd5c4edc6877ce4100ed7c22edebda74662a0
Author:    Derick Rethans <[email protected]>         Sat, 22 Feb 2014 12:47:57 +0000
Parents:   cabb86a81a41fdfe83c2dfa62ee283d7409a9dde
Branches:  master

Link:       http://git.php.net/?p=presentations.git;a=commitdiff;h=65fcd5c4edc6877ce4100ed7c22edebda74662a0

Log:
PHP in Space talk for PHP UK.

Changed paths:
  A  slides/space/2863d8cfddda939001b44506ab8e7a46.png
  A  slides/space/bill-explosion.xml
  A  slides/space/decimal_to_dms.xml
  A  slides/space/delta-v-specific-calculation.xml
  A  slides/space/delta-v-specific-impulse.xml
  A  slides/space/delta-v.xml
  A  slides/space/direction.xml
  A  slides/space/distance-on-kerbin.xml
  A  slides/space/distance-vincenty.xml
  A  slides/space/distance.xml
  A  slides/space/dms_to_decimal.xml
  A  slides/space/duna-crash.webm
  A  slides/space/duna.png
  A  slides/space/duna.webm
  A  slides/space/duna.xml
  A  slides/space/duna5.webm
  A  slides/space/eve.png
  A  slides/space/eve.xml
  A  slides/space/extensions.xml
  A  slides/space/fl-t400.png
  A  slides/space/get-it-right.xml
  A  slides/space/getting-to-ksp.xml
  A  slides/space/haversine.png
  A  slides/space/jebediah-on-minmus.png
  A  slides/space/jebediah.xml
  A  slides/space/kerbals-like-flight-at-day.xml
  A  slides/space/kerbin-system.png
  A  slides/space/kerbin-system.xml
  A  slides/space/kerbin.png
  A  slides/space/kerbin.xml
  A  slides/space/kerbol-inner.png
  A  slides/space/kerbol-system.png
  A  slides/space/kerbol.png
  A  slides/space/ksp.png
  A  slides/space/launch.png
  A  slides/space/launch1.png
  A  slides/space/launch2.png
  A  slides/space/launch3.png
  A  slides/space/minmus-only.png
  A  slides/space/minmus.png
  A  slides/space/minmus.xml
  A  slides/space/mun-rocket.png
  A  slides/space/mun.png
  A  slides/space/mun.xml
  A  slides/space/no-mun.png
  A  slides/space/orbit1.png
  A  slides/space/orbit1.xcf
  A  slides/space/orbit2.png
  A  slides/space/orbit3.png
  A  slides/space/orbit4.png
  A  slides/space/orbital-transfers.xml
  A  slides/space/point-rocket-to-space.png
  A  slides/space/resources.xml
  A  slides/space/rocket-equation.png
  A  slides/space/rockomax-48-7s.png
  A  slides/space/something-about-the-line.xml
  A  slides/space/specific-impulse.png
  A  slides/space/still-to-do.xml
  A  slides/space/sun-position.xml
  A  slides/space/thrust-to-weight-max-weight.xml
  A  slides/space/thrust-to-weight-ratio-calculation.xml
  A  slides/space/thrust-to-weight-ratio.xml
  A  slides/space/to-duna.xml
  A  slides/space/twr-demo.webm
  A  slides/space/twr.png
  A  slides/space/vis-viva-circle.png
  A  slides/space/vis-viva-circle2.png
  A  slides/space/vis-viva-equation-circle.xml
  A  slides/space/vis-viva-equation.xml
  A  slides/space/vis-viva.png
  A  slides/space/vis-viva2.png
  A  space-phpuk14.xml
diff_65fcd5c4edc6877ce4100ed7c22edebda74662a0.txt (text/plain, 28.9 KB)
diff --git a/slides/space/2863d8cfddda939001b44506ab8e7a46.png b/slides/space/2863d8cfddda939001b44506ab8e7a46.png
new file mode 100644
index 0000000..328a11f
Binary files /dev/null and b/slides/space/2863d8cfddda939001b44506ab8e7a46.png differ
diff --git a/slides/space/bill-explosion.xml b/slides/space/bill-explosion.xml
new file mode 100644
index 0000000..9c38d1c
--- /dev/null
+++ b/slides/space/bill-explosion.xml
@@ -0,0 +1,5 @@
+<slide>
+<title>First attempt...</title>
+
+<video filename="duna5.webm" autoplay="no"/>
+</slide>
diff --git a/slides/space/decimal_to_dms.xml b/slides/space/decimal_to_dms.xml
new file mode 100644
index 0000000..fca2176
--- /dev/null
+++ b/slides/space/decimal_to_dms.xml
@@ -0,0 +1,14 @@
+<slide>
+<title>Converting from decimal degrees to °, ′, and ″</title>
+
+<blurb>And we can do that the other way around too:</blurb>
+<example result="1"><![CDATA[
+<?php
+$jebLon = 45.74;
+$jebLat = -47.11;
+$lon = decimal_to_dms($jebLon, "longitude");
+$lat = decimal_to_dms($jebLat, "latitude");
+echo "{$lon['degrees']}°{$lon['minutes']}′{$lon['seconds']}″{$lon['direction']}\n";
+echo "{$lat['degrees']}°{$lat['minutes']}′{$lat['seconds']}″{$lat['direction']}\n";
+?>]]></example>
+</slide>
diff --git a/slides/space/delta-v-specific-calculation.xml b/slides/space/delta-v-specific-calculation.xml
new file mode 100644
index 0000000..410bf83
--- /dev/null
+++ b/slides/space/delta-v-specific-calculation.xml
@@ -0,0 +1,20 @@
+<slide>
+<title>Delta-V</title>
+
+<image align="left" filename="rockomax-48-7s.png"/>
+<image align="right" filename="fl-t400.png"/>
+<blurb>Specific impulse:</blurb>
+<image filename="specific-impulse.png"/>
+
+<blurb>Rocket equation:</blurb>
+<image filename="rocket-equation.png"/>
+
+<example result="3"><![CDATA[<?php
+function delta_v( $lsp, $g, $m0, $m1 )
+{
+	return ($lsp * $g) * log($m0/$m1);
+}
+echo delta_v( 300, 9.81, 3500, 1500 ), "\n";
+?>]]></example>
+
+</slide>
diff --git a/slides/space/delta-v-specific-impulse.xml b/slides/space/delta-v-specific-impulse.xml
new file mode 100644
index 0000000..cbaaa90
--- /dev/null
+++ b/slides/space/delta-v-specific-impulse.xml
@@ -0,0 +1,12 @@
+<slide>
+<title>Delta-V</title>
+
+<blurb>Specific impulse:</blurb>
+<image filename="specific-impulse.png"/>
+
+<list>
+<bullet>g₀: is the acceleration due to gravity at the Kerbin's surface, 9.81 m/s²</bullet>
+<bullet>Isp: is the specific impulse in seconds</bullet>
+</list>
+
+</slide>
diff --git a/slides/space/delta-v.xml b/slides/space/delta-v.xml
new file mode 100644
index 0000000..d013030
--- /dev/null
+++ b/slides/space/delta-v.xml
@@ -0,0 +1,15 @@
+<slide>
+<title>Delta-V</title>
+
+<blurb>Rocket equation:</blurb>
+<image filename="rocket-equation.png"/>
+
+<list>
+<bullet>m₀: is the initial total mass, including propellant</bullet>
+<bullet>m₁: is the final total mass</bullet>
+<bullet>delta-v: the maximum change of velocity</bullet>
+<bullet>ln: refers to the natural logarithm function</bullet>
+<bullet>ve: is the effective exhaust velocity</bullet>
+</list>
+
+</slide>
diff --git a/slides/space/direction.xml b/slides/space/direction.xml
new file mode 100644
index 0000000..8c970e0
--- /dev/null
+++ b/slides/space/direction.xml
@@ -0,0 +1,20 @@
+<slide>
+<title>Which direction does Jeb needs to head to?</title>
+
+<div effect="fade-out">
+<iframe width="1000" filename='../map/examples/3angle/?l=gcl&amp;lon1=-74.575&amp;lat1=-0.1025&amp;lon2=45.74&amp;lat2=-47.11&amp;zoom=3&amp;lat=-30&amp;lon=75&amp;kb=yes&amp;gcl_segments=1'/>
+</div>
+<div effect="fade-in-out">
+<iframe width="1000" filename='../map/examples/3angle/?l=gcl&amp;lon1=-74.575&amp;lat1=-0.1025&amp;lon2=45.74&amp;lat2=-47.11&amp;zoom=3&amp;lat=-30&amp;lon=75&amp;kb=yes&amp;gcl_segments=20'/>
+</div>
+<div effect="fade-in">
+<blurb>The geospatial extension has a function for this too:</blurb>
+<example result="1">
+<![CDATA[<?php
+$jeb = [ 'type' => 'Point', 'coordinates' => [ 45.74, -47.11 ] ];
+$ksp = [ 'type' => 'Point', 'coordinates' => [ -74.57527, -0.1025 ] ];
+var_dump((initial_bearing($jeb, $ksp) + 360) % 360);
+?>]]>
+</example>
+</div>
+</slide>
diff --git a/slides/space/distance-on-kerbin.xml b/slides/space/distance-on-kerbin.xml
new file mode 100644
index 0000000..24d74aa
--- /dev/null
+++ b/slides/space/distance-on-kerbin.xml
@@ -0,0 +1,20 @@
+<slide>
+<title>With coordinates, we calculate the distance</title>
+
+<list>
+	<bullet>Kerbin's diameter is 600 km, as compared to Earth's 6378.1 km</bullet>
+	<bullet>Haversine, because Vincenty is only for the WGS84 Earth Spheroid</bullet>
+</list>
+
+<example>
+Jeb lives at 45.74, -47.11
+KSP is at -74.575277777778, -0.1025
+</example>
+<example result="1"><![CDATA[
+<?php
+$jeb = [ 'type' => 'Point', 'coordinates' => [ 45.74, -47.11 ] ];
+$ksp = [ 'type' => 'Point', 'coordinates' => [ -74.57527, -0.1025 ] ];
+var_dump(haversine($jeb, $ksp, 600000));
+?>]]></example>
+
+</slide>
diff --git a/slides/space/distance-vincenty.xml b/slides/space/distance-vincenty.xml
new file mode 100644
index 0000000..e777437
--- /dev/null
+++ b/slides/space/distance-vincenty.xml
@@ -0,0 +1,18 @@
+<slide>
+<title>The Earth is not a sphere</title>
+
+<blurb>Vincenty</blurb>
+
+<blurb>Implemented in the geospatial extension:</blurb>
+
+<example>
+Jeb lives at 45.74, -47.11
+KSP is at -74.575277777778, -0.1025
+</example>
+<example result="1"><![CDATA[
+<?php
+$jeb = [ 'type' => 'Point', 'coordinates' => [ 45.74, -47.11 ] ];
+$ksp = [ 'type' => 'Point', 'coordinates' => [ -74.57527, -0.1025 ] ];
+var_dump(vincenty($jeb, $ksp));
+?>]]></example>
+</slide>
diff --git a/slides/space/distance.xml b/slides/space/distance.xml
new file mode 100644
index 0000000..ec4a51a
--- /dev/null
+++ b/slides/space/distance.xml
@@ -0,0 +1,21 @@
+<slide>
+<title>With coordinates, we calculate the distance</title>
+
+<blurb>Haversine:</blurb>
+
+<image filename="haversine.png"/>
+
+<blurb>Implemented in the geospatial extension:</blurb>
+
+<example>
+Jeb lives at 45.74, -47.11
+KSP is at -74.575277777778, -0.1025
+</example>
+<example result="1"><![CDATA[
+<?php
+$jeb = [ 'type' => 'Point', 'coordinates' => [ 45.74, -47.11 ] ];
+$ksp = [ 'type' => 'Point', 'coordinates' => [ -74.57527, -0.1025 ] ];
+var_dump(haversine($jeb, $ksp));
+?>]]></example>
+
+</slide>
diff --git a/slides/space/dms_to_decimal.xml b/slides/space/dms_to_decimal.xml
new file mode 100644
index 0000000..dccd337
--- /dev/null
+++ b/slides/space/dms_to_decimal.xml
@@ -0,0 +1,17 @@
+<slide>
+<title>Converting from °, ′, and ″ to decimal degrees</title>
+
+<blurb>From the php-geospatial extension:</blurb>
+
+<example result="1"><![CDATA[
+<?php
+$jebLon = 45.74;
+$jebLat = -47.11;
+echo "Jeb lives at $jebLon, $jebLat\n";
+
+$kspLon = dms_to_decimal(74, 34, 31, 'W');
+$kspLat = dms_to_decimal(0, 6, 9, 'S');
+echo "KSP is at $kspLon, $kspLat\n";
+?>]]>
+</example>
+</slide>
diff --git a/slides/space/duna-crash.webm b/slides/space/duna-crash.webm
new file mode 100644
index 0000000..1f23da5
Binary files /dev/null and b/slides/space/duna-crash.webm differ
diff --git a/slides/space/duna.png b/slides/space/duna.png
new file mode 100644
index 0000000..60047aa
Binary files /dev/null and b/slides/space/duna.png differ
diff --git a/slides/space/duna.webm b/slides/space/duna.webm
new file mode 100644
index 0000000..4b059f1
Binary files /dev/null and b/slides/space/duna.webm differ
diff --git a/slides/space/duna.xml b/slides/space/duna.xml
new file mode 100644
index 0000000..7d2cd2f
--- /dev/null
+++ b/slides/space/duna.xml
@@ -0,0 +1,7 @@
+<slide>
+<image filename="duna.png"/>
+<div class="float">
+<break lines="21"/>
+<blurb class="big-centre">|ffffff|Duna|</blurb>
+</div>
+</slide>
diff --git a/slides/space/duna5.webm b/slides/space/duna5.webm
new file mode 100644
index 0000000..490dc6e
Binary files /dev/null and b/slides/space/duna5.webm differ
diff --git a/slides/space/eve.png b/slides/space/eve.png
new file mode 100644
index 0000000..ca46e4d
Binary files /dev/null and b/slides/space/eve.png differ
diff --git a/slides/space/eve.xml b/slides/space/eve.xml
new file mode 100644
index 0000000..0082b42
--- /dev/null
+++ b/slides/space/eve.xml
@@ -0,0 +1,7 @@
+<slide>
+<image filename="eve.png"/>
+<div class="float">
+<break lines="21"/>
+<blurb class="big-centre">|ffffff|Eve|</blurb>
+</div>
+</slide>
diff --git a/slides/space/extensions.xml b/slides/space/extensions.xml
new file mode 100644
index 0000000..554eb5b
--- /dev/null
+++ b/slides/space/extensions.xml
@@ -0,0 +1,10 @@
+<slide>
+<title>Extensions extensions extensions</title>
+
+<blurb>Some of the functions I'm going to use are already in PHP, some we have to write.</blurb>
+<blurb>A few extensions are going to be used in this talk:</blurb>
+<list>
+	<bullet>*geospatial:*<br/>https://github.com/php-geospatial/geospatial</bullet>
+	<bullet>*solarsystem:*<br/>https://github.com/derickr/php-solarsystem</bullet>
+</list>
+</slide>
diff --git a/slides/space/fl-t400.png b/slides/space/fl-t400.png
new file mode 100644
index 0000000..168ace5
Binary files /dev/null and b/slides/space/fl-t400.png differ
diff --git a/slides/space/get-it-right.xml b/slides/space/get-it-right.xml
new file mode 100644
index 0000000..5cdafdb
--- /dev/null
+++ b/slides/space/get-it-right.xml
@@ -0,0 +1,5 @@
+<slide>
+<title>Get it right</title>
+
+<video filename="duna-crash.webm"/>
+</slide>
diff --git a/slides/space/getting-to-ksp.xml b/slides/space/getting-to-ksp.xml
new file mode 100644
index 0000000..6b6ffa8
--- /dev/null
+++ b/slides/space/getting-to-ksp.xml
@@ -0,0 +1,15 @@
+<slide>
+<title>How far is it to KSP?</title>
+
+<image filename="ksp.png" align="right"/>
+<list>
+	<bullet>Jebediah lives at 47.11°S, 45.74°E</bullet>
+	<bullet>KSP is at 0°6′9″S, 74°34′31″W</bullet>
+	<bullet>We need to figure out how far he has to walk, drive, or fly a plane to</bullet>
+</list>
+<break/>
+<list>
+	<bullet>°, ′, and ″ are units that are not often usable with algorithms</bullet>
+	<bullet>They need to be converted!</bullet>
+</list>
+</slide>
diff --git a/slides/space/haversine.png b/slides/space/haversine.png
new file mode 100644
index 0000000..328a11f
Binary files /dev/null and b/slides/space/haversine.png differ
diff --git a/slides/space/jebediah-on-minmus.png b/slides/space/jebediah-on-minmus.png
new file mode 100644
index 0000000..ce93d48
Binary files /dev/null and b/slides/space/jebediah-on-minmus.png differ
diff --git a/slides/space/jebediah.xml b/slides/space/jebediah.xml
new file mode 100644
index 0000000..45f1744
--- /dev/null
+++ b/slides/space/jebediah.xml
@@ -0,0 +1,7 @@
+<slide>
+<image filename="jebediah-on-minmus.png"/>
+<div class="float">
+<break lines="21"/>
+<blurb class="big-centre">|ffffff|Jebediah|</blurb>
+</div>
+</slide>
diff --git a/slides/space/kerbals-like-flight-at-day.xml b/slides/space/kerbals-like-flight-at-day.xml
new file mode 100644
index 0000000..2b96e09
--- /dev/null
+++ b/slides/space/kerbals-like-flight-at-day.xml
@@ -0,0 +1,18 @@
+<slide>
+<title>Launches at day time only!</title>
+
+<div effect="fade-out">
+<image filename="launch.png"/>
+</div>
+
+<blurb>PHP has a function for calculating sunset and sunrise—for Earth</blurb>
+
+<div effect="fade-in">
+<example result="1">
+<![CDATA[<?php
+$sun = date_sun_info(time(), 51.50, -0.127);
+var_dump( $sun );
+?>]]></example>
+</div>
+
+</slide>
diff --git a/slides/space/kerbin-system.png b/slides/space/kerbin-system.png
new file mode 100644
index 0000000..cce54e7
Binary files /dev/null and b/slides/space/kerbin-system.png differ
diff --git a/slides/space/kerbin-system.xml b/slides/space/kerbin-system.xml
new file mode 100644
index 0000000..e0a1dd4
--- /dev/null
+++ b/slides/space/kerbin-system.xml
@@ -0,0 +1,7 @@
+<slide>
+<image filename="kerbin-system.png"/>
+<div class="float">
+<break lines="21"/>
+<blurb class="big-centre">|ffffff|Kerbin and its moons|</blurb>
+</div>
+</slide>
diff --git a/slides/space/kerbin.png b/slides/space/kerbin.png
new file mode 100644
index 0000000..70f8fcd
Binary files /dev/null and b/slides/space/kerbin.png differ
diff --git a/slides/space/kerbin.xml b/slides/space/kerbin.xml
new file mode 100644
index 0000000..7c36d77
--- /dev/null
+++ b/slides/space/kerbin.xml
@@ -0,0 +1,7 @@
+<slide>
+<image filename="kerbin.png"/>
+<div class="float">
+<break lines="21"/>
+<blurb class="big-centre">|ffffff|Kerbin|</blurb>
+</div>
+</slide>
diff --git a/slides/space/kerbol-inner.png b/slides/space/kerbol-inner.png
new file mode 100644
index 0000000..78436b8
Binary files /dev/null and b/slides/space/kerbol-inner.png differ
diff --git a/slides/space/kerbol-system.png b/slides/space/kerbol-system.png
new file mode 100644
index 0000000..823152d
Binary files /dev/null and b/slides/space/kerbol-system.png differ
diff --git a/slides/space/kerbol.png b/slides/space/kerbol.png
new file mode 100644
index 0000000..11135ca
Binary files /dev/null and b/slides/space/kerbol.png differ
diff --git a/slides/space/ksp.png b/slides/space/ksp.png
new file mode 100644
index 0000000..8038e78
Binary files /dev/null and b/slides/space/ksp.png differ
diff --git a/slides/space/launch.png b/slides/space/launch.png
new file mode 100644
index 0000000..27427ab
Binary files /dev/null and b/slides/space/launch.png differ
diff --git a/slides/space/launch1.png b/slides/space/launch1.png
new file mode 100644
index 0000000..617f40d
Binary files /dev/null and b/slides/space/launch1.png differ
diff --git a/slides/space/launch2.png b/slides/space/launch2.png
new file mode 100644
index 0000000..5515fd1
Binary files /dev/null and b/slides/space/launch2.png differ
diff --git a/slides/space/launch3.png b/slides/space/launch3.png
new file mode 100644
index 0000000..8445895
Binary files /dev/null and b/slides/space/launch3.png differ
diff --git a/slides/space/minmus-only.png b/slides/space/minmus-only.png
new file mode 100644
index 0000000..265be47
Binary files /dev/null and b/slides/space/minmus-only.png differ
diff --git a/slides/space/minmus.png b/slides/space/minmus.png
new file mode 100644
index 0000000..0a664a0
Binary files /dev/null and b/slides/space/minmus.png differ
diff --git a/slides/space/minmus.xml b/slides/space/minmus.xml
new file mode 100644
index 0000000..2c8811e
--- /dev/null
+++ b/slides/space/minmus.xml
@@ -0,0 +1,7 @@
+<slide>
+<image filename="minmus.png"/>
+<div class="float">
+<break lines="21"/>
+<blurb class="big-centre">|ffffff|Minmus|</blurb>
+</div>
+</slide>
diff --git a/slides/space/mun-rocket.png b/slides/space/mun-rocket.png
new file mode 100644
index 0000000..886a7db
Binary files /dev/null and b/slides/space/mun-rocket.png differ
diff --git a/slides/space/mun.png b/slides/space/mun.png
new file mode 100644
index 0000000..7070a99
Binary files /dev/null and b/slides/space/mun.png differ
diff --git a/slides/space/mun.xml b/slides/space/mun.xml
new file mode 100644
index 0000000..75c022d
--- /dev/null
+++ b/slides/space/mun.xml
@@ -0,0 +1,7 @@
+<slide>
+<image filename="mun.png"/>
+<div class="float">
+<break lines="21"/>
+<blurb class="big-centre">|ffffff|Mun|</blurb>
+</div>
+</slide>
diff --git a/slides/space/no-mun.png b/slides/space/no-mun.png
new file mode 100644
index 0000000..6a94f95
Binary files /dev/null and b/slides/space/no-mun.png differ
diff --git a/slides/space/orbit1.png b/slides/space/orbit1.png
new file mode 100644
index 0000000..2a3d874
Binary files /dev/null and b/slides/space/orbit1.png differ
diff --git a/slides/space/orbit1.xcf b/slides/space/orbit1.xcf
new file mode 100644
index 0000000..5489e1d
Binary files /dev/null and b/slides/space/orbit1.xcf differ
diff --git a/slides/space/orbit2.png b/slides/space/orbit2.png
new file mode 100644
index 0000000..e25ea58
Binary files /dev/null and b/slides/space/orbit2.png differ
diff --git a/slides/space/orbit3.png b/slides/space/orbit3.png
new file mode 100644
index 0000000..dff2dc4
Binary files /dev/null and b/slides/space/orbit3.png differ
diff --git a/slides/space/orbit4.png b/slides/space/orbit4.png
new file mode 100644
index 0000000..fbf0035
Binary files /dev/null and b/slides/space/orbit4.png differ
diff --git a/slides/space/orbital-transfers.xml b/slides/space/orbital-transfers.xml
new file mode 100644
index 0000000..e6793ee
--- /dev/null
+++ b/slides/space/orbital-transfers.xml
@@ -0,0 +1,34 @@
+<slide>
+<title>Velocity calculation</title>
+
+<image filename="orbit1.png" align="right"/>
+<list>
+<bullet>a = semi major axis:<br/>a = (r₁ + r₂) / 2</bullet>
+<bullet>r₁ = 300 + 60</bullet>
+<bullet>r₂ = 998 + 60</bullet>
+<bullet>what is the velocity at r₂?</bullet>
+</list>
+size = 47 000 000 m
+Mass 	2.6457897×10¹⁹ kg
+Gravitational parameter 	1.7658000×10⁹ m³/s²
+
+G = 6.67 x 10¯¹¹
+M = 2.64 x 10¹⁹ kg
+µ = GM = 1760880000 (1.76 x 10⁹)kg
+
+r = 60+998 = 1058000m
+
+a = (360 + 1058) / 2 = 709000m
+
+v² = µ(2/r - 1/a)
+v² = 845
+v  = 29
+
+
+CIRCLE:
+
+a = 1058000
+
+v² = µ(1/a) = 1664, 
+v  = 40.79
+</slide>
diff --git a/slides/space/point-rocket-to-space.png b/slides/space/point-rocket-to-space.png
new file mode 100644
index 0000000..de4d926
Binary files /dev/null and b/slides/space/point-rocket-to-space.png differ
diff --git a/slides/space/resources.xml b/slides/space/resources.xml
new file mode 100644
index 0000000..3fd20cf
--- /dev/null
+++ b/slides/space/resources.xml
@@ -0,0 +1,7 @@
+<slide type="thanks">
+<break/>
+<qrcode>http://derickrethans.nl/talks/:-:talk_id:-:</qrcode>
+<break/>
+<blurb align="center" class="pres-url-small">:-:joindin:-:</blurb>
+<blurb align="center" class="pres-url-small">:-:email:-:—@:-:twitter:-:</blurb>
+</slide>
diff --git a/slides/space/rocket-equation.png b/slides/space/rocket-equation.png
new file mode 100644
index 0000000..831e352
Binary files /dev/null and b/slides/space/rocket-equation.png differ
diff --git a/slides/space/rockomax-48-7s.png b/slides/space/rockomax-48-7s.png
new file mode 100644
index 0000000..64a4477
Binary files /dev/null and b/slides/space/rockomax-48-7s.png differ
diff --git a/slides/space/something-about-the-line.xml b/slides/space/something-about-the-line.xml
new file mode 100644
index 0000000..aaaf3b8
--- /dev/null
+++ b/slides/space/something-about-the-line.xml
@@ -0,0 +1,29 @@
+<slide>
+<title>Drawing the GC line</title>
+
+<iframe width="1000" height="250" filename='../map/examples/3angle/?l=gcl&amp;lon1=-74.575&amp;lat1=-0.1025&amp;lon2=45.74&amp;lat2=-47.11&amp;zoom=2&amp;lat=-30&amp;lon=75&amp;kb=yes&amp;gcl_segments=20'/>
+
+<div effect="fade-out">
+<example>fraction_along_gc_line(GeoJSONPoint from, GeoJSONPoint to, double fraction)</example>
+</div>
+
+<div effect="fade-in">
+<example><![CDATA[
+function getPoint( $n, $e, $s, $w, $f, &$lat, &$lon )
+{
+    $lat1 = deg2rad( $n ); $lon1 = deg2rad( $w );
+    $lat2 = deg2rad( $s ); $lon2 = deg2rad( $e );
+
+    distance( $n, $e, $s, $w, $d );
+
+    $A = sin( ( 1 - $f ) * $d ) / sin( $d );
+    $B = sin( $f * $d ) / sin( $d );
+    $x = $A * cos($lat1) * cos($lon1) + $B * cos($lat2) * cos($lon2);
+    $y = $A * cos($lat1) * sin($lon1) + $B * cos($lat2) * sin($lon2);
+    $z = $A * sin($lat1) + $B * sin($lat2);
+
+    $lat = rad2deg( atan2( $z, sqrt( $x * $x + $y * $y ) ) );
+    $lon = rad2deg( atan2( $y, $x ) );
+}]]></example>
+</div>
+</slide>
diff --git a/slides/space/specific-impulse.png b/slides/space/specific-impulse.png
new file mode 100644
index 0000000..45e0473
Binary files /dev/null and b/slides/space/specific-impulse.png differ
diff --git a/slides/space/still-to-do.xml b/slides/space/still-to-do.xml
new file mode 100644
index 0000000..ca3978f
--- /dev/null
+++ b/slides/space/still-to-do.xml
@@ -0,0 +1,17 @@
+<slide>
+<title>Still to do</title>
+
+<list>
+<bullet>Implement more things for "solarsystem": Sun/Moon position
+(topographic, geocentric), planets (heliocentry, geocentric, phase,
+magnitute)</bullet>
+<bullet>Spacy-stuff: Oberth effect, aerobreaking, Hoffman and bi-elliptic
+transfers (also needs to go into an extension)</bullet>
+<bullet>Put all the equations of this presentation into an extension too</bullet>
+</list>
+<div effect="fade-in">
+<list>
+<bullet>Rescue Bill from Duna</bullet>
+</list>
+</div>
+</slide>
diff --git a/slides/space/sun-position.xml b/slides/space/sun-position.xml
new file mode 100644
index 0000000..a4e53e6
--- /dev/null
+++ b/slides/space/sun-position.xml
@@ -0,0 +1,18 @@
+<slide>
+<title>Calculating the position of the Sun in the sky</title>
+
+<image align="right" filename="kerbol.png"/>
+<example result="3"><![CDATA[<?php
+$pos = earth_sunpos( time(), 51.50, -0.127 );
+echo $pos, "\n";
+?>]]></example>
+
+<div effect="fade-in">
+<blurb>Actually, this only calculates the height over the horizon ☹.</blurb>
+</div>
+
+<div effect="fade-in">
+<image filename="no-mun.png" align="left"/>
+<blurb>I am working on the full position, and the moon as well. (Not the Mün).</blurb>
+</div>
+</slide>
diff --git a/slides/space/thrust-to-weight-max-weight.xml b/slides/space/thrust-to-weight-max-weight.xml
new file mode 100644
index 0000000..5bd47f7
--- /dev/null
+++ b/slides/space/thrust-to-weight-max-weight.xml
@@ -0,0 +1,17 @@
+<slide>
+<title>Thrust to Weight Ratio (TWR)</title>
+
+<image filename="point-rocket-to-space.png" align="right"/>
+
+<blurb>Max weight to satisfy TWR > 1:</blurb>
+<blurb>~thrust~ / ~surface_gravity~ =</blurb>
+<example result="1"><![CDATA[<?php
+function max_weight($thrust, $surface_gravity)
+{
+	return $thrust / $surface_gravity;
+}
+
+echo max_weight( 30000, 9.81 ), "\n";
+?>]]></example>
+
+</slide>
diff --git a/slides/space/thrust-to-weight-ratio-calculation.xml b/slides/space/thrust-to-weight-ratio-calculation.xml
new file mode 100644
index 0000000..5bd47f7
--- /dev/null
+++ b/slides/space/thrust-to-weight-ratio-calculation.xml
@@ -0,0 +1,17 @@
+<slide>
+<title>Thrust to Weight Ratio (TWR)</title>
+
+<image filename="point-rocket-to-space.png" align="right"/>
+
+<blurb>Max weight to satisfy TWR > 1:</blurb>
+<blurb>~thrust~ / ~surface_gravity~ =</blurb>
+<example result="1"><![CDATA[<?php
+function max_weight($thrust, $surface_gravity)
+{
+	return $thrust / $surface_gravity;
+}
+
+echo max_weight( 30000, 9.81 ), "\n";
+?>]]></example>
+
+</slide>
diff --git a/slides/space/thrust-to-weight-ratio.xml b/slides/space/thrust-to-weight-ratio.xml
new file mode 100644
index 0000000..1dada3c
--- /dev/null
+++ b/slides/space/thrust-to-weight-ratio.xml
@@ -0,0 +1,20 @@
+<slide>
+<title>Thrust to Weight Ratio (TWR)</title>
+
+<div effect="fade-out">
+<blurb>If it is > 1 one, you will take off. If it is &lt; 1, you will not:</blurb>
+
+<video width="640" height="480" filename="twr-demo.webm" autoplay="0" align="center"/>
+</div>
+
+<div effect="fade-in-out">
+<image filename="launch2.png" align="center"/>
+<blurb align="center">Mass: 3 500 kg<br/>Engine thrust: 30kN<br/>Max acceleration: 8.751m/s²<br/>Surface TWR: 0.88</blurb>
+<break lines="7"/>
+</div>
+
+<div effect="fade-in">
+<image filename="launch3.png" align="center"/>
+<blurb align="center">Mass: 3 050 kg<br/>Engine thrust: 30kN<br/>Max acceleration: 9.851m/s²<br/>Surface TWR: 1.00</blurb>
+</div>
+</slide>
diff --git a/slides/space/to-duna.xml b/slides/space/to-duna.xml
new file mode 100644
index 0000000..65fbdc3
--- /dev/null
+++ b/slides/space/to-duna.xml
@@ -0,0 +1,5 @@
+<slide>
+<title>Getting to Duna</title>
+
+<video filename="duna.webm"/>
+</slide>
diff --git a/slides/space/twr-demo.webm b/slides/space/twr-demo.webm
new file mode 100644
index 0000000..5307cb2
Binary files /dev/null and b/slides/space/twr-demo.webm differ
diff --git a/slides/space/twr.png b/slides/space/twr.png
new file mode 100644
index 0000000..8ec95fe
Binary files /dev/null and b/slides/space/twr.png differ
diff --git a/slides/space/vis-viva-circle.png b/slides/space/vis-viva-circle.png
new file mode 100644
index 0000000..531e7f0
Binary files /dev/null and b/slides/space/vis-viva-circle.png differ
diff --git a/slides/space/vis-viva-circle2.png b/slides/space/vis-viva-circle2.png
new file mode 100644
index 0000000..80df593
Binary files /dev/null and b/slides/space/vis-viva-circle2.png differ
diff --git a/slides/space/vis-viva-equation-circle.xml b/slides/space/vis-viva-equation-circle.xml
new file mode 100644
index 0000000..4c30b95
--- /dev/null
+++ b/slides/space/vis-viva-equation-circle.xml
@@ -0,0 +1,42 @@
+<slide>
+<title>Vis-viva equation (circle)</title>
+
+<div effect="fade-out">
+<list>
+<bullet><image filename="vis-viva-circle.png"/></bullet>
+<bullet>*G* = 6.67 x 10¯¹¹</bullet>
+<bullet>*M* = 2.6457897×10¹⁹ kg</bullet>
+<!--<bullet>~µ~ = ~GM~: 1.76×10⁹ kg</bullet>-->
+<bullet>*a* = *r* = 1058 km</bullet>
+<bullet><image filename="vis-viva-circle2.png"/></bullet>
+</list>
+</div>
+<div effect="fade-in">
+<image filename="orbit3.png"/>
+</div>
+Size = 47 000 000 m
+Mass 	2.6457897×10¹⁹ kg
+G
+Gravitational parameter
+1.7658000×10⁹ m³/s²
+
+G = 6.67 x 10¯¹¹
+M = 2.64 x 10¹⁹ kg
+µ = GM = 1760880000 (1.76 x 10⁹)kg
+
+r = 60+998 = 1058000m
+
+a = (360 + 1058) / 2 = 709000m
+
+v² = µ(2/r - 1/a)
+v² = 845
+v  = 29
+
+
+CIRCLE:
+
+a = 1058000
+
+v² = µ(1/a) = 1664, 
+v  = 40.79
+</slide>
diff --git a/slides/space/vis-viva-equation.xml b/slides/space/vis-viva-equation.xml
new file mode 100644
index 0000000..0ffe2e6
--- /dev/null
+++ b/slides/space/vis-viva-equation.xml
@@ -0,0 +1,45 @@
+<slide>
+<title>Vis-viva equation</title>
+
+<div effect="fade-out">
+<image filename="minmus-only.png" align="right"/>
+<list>
+<bullet><image filename="vis-viva.png"/></bullet>
+<!-- <bullet>~v²~ = GM(2/r - 1/a)</bullet> -->
+<bullet>*G* = 6.67 x 10¯¹¹</bullet>
+<bullet>*M* = 2.6457897×10¹⁹ kg</bullet>
+<!--<bullet>~µ~ = ~GM~: 1.76×10⁹ kg</bullet>-->
+<bullet>*a* = (360 + 1058) / 2 = 709 km</bullet>
+<bullet>*r* = 998+60 = 1058 km</bullet>
+<bullet><image filename="vis-viva2.png"/></bullet>
+</list>
+</div>
+<div effect="fade-in">
+<image filename="orbit2.png"/>
+</div>
+Size = 47 000 000 m
+Mass 	2.6457897×10¹⁹ kg
+G
+Gravitational parameter
+1.7658000×10⁹ m³/s²
+
+G = 6.67 x 10¯¹¹
+M = 2.64 x 10¹⁹ kg
+µ = GM = 1760880000 (1.76 x 10⁹)kg
+
+r = 60+998 = 1058000m
+
+a = (360 + 1058) / 2 = 709000m
+
+v² = µ(2/r - 1/a)
+v² = 845
+v  = 29
+
+
+CIRCLE:
+
+a = 1058000
+
+v² = µ(1/a) = 1664, 
+v  = 40.79
+</slide>
diff --git a/slides/space/vis-viva.png b/slides/space/vis-viva.png
new file mode 100644
index 0000000..c672701
Binary files /dev/null and b/slides/space/vis-viva.png differ
diff --git a/slides/space/vis-viva2.png b/slides/space/vis-viva2.png
new file mode 100644
index 0000000..3e7506d
Binary files /dev/null and b/slides/space/vis-viva2.png differ
diff --git a/space-phpuk14.xml b/space-phpuk14.xml
new file mode 100644
index 0000000..c3514de
--- /dev/null
+++ b/space-phpuk14.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="utf-8"?>
+<presentation css="10gen-strict.css">
+<topic>PHP</topic>
+<title>PHP in Space</title>
+<event>PHP UK Conference</event>
+<location>London, UK</location>
+<lat>45.49938</lat><lon>-73.56787</lon>
+<date>February 22nd, 2014</date>
+<speaker>Derick Rethans</speaker>
+<email>[email protected]</email>
+<twitter>derickr</twitter>
+<joindin>http://joind.in/10709</joindin>
+
+<slide>slides/map/title.xml</slide>
+<!-- 
+Jebediah is an astronaut, who wants to go from his house to Eve.
+He lives a while from the space station so he needs to walk there first.
+- Calculate d.x from dms
+- Figure out the distance
+- Calculate initial bearing
+- At the half way point
+- Only in daylight, so we need to know when the sun is up
+- When it rises, is the sun up? earth_sunpos()
+- The first trip is to the Mun, so we need to calculate when it rises
+- Then we need to rocket into the sky. Thrust/Weight
+- Explain delta-v
+- Atmospheric drag
+- Three body system?
+- Mun landing
+- Minmus - plane change
+- Orbit to orbit - hoffman transfer
+- Eve landing
+- Not enough fuel to get off :-(
+-->
+<slide>slides/space/jebediah.xml</slide>
+<slide>slides/space/kerbin.xml</slide>
+<slide>slides/space/kerbin-system.xml</slide>
+<slide>slides/space/mun.xml</slide>
+<slide>slides/space/minmus.xml</slide>
+<slide>slides/space/eve.xml</slide>
+<slide>slides/space/duna.xml</slide>
+
+<slide>slides/space/getting-to-ksp.xml</slide>
+<slide>slides/space/extensions.xml</slide>
+<slide>slides/space/dms_to_decimal.xml</slide>
+<slide>slides/space/decimal_to_dms.xml</slide>
+<slide>slides/space/distance.xml</slide>
+<slide>slides/space/distance-vincenty.xml</slide>
+<slide>slides/space/kerbin.xml</slide>
+<slide>slides/space/distance-on-kerbin.xml</slide>
+<slide>slides/space/direction.xml</slide>
+<slide>slides/space/something-about-the-line.xml</slide>
+
+<slide>slides/space/kerbals-like-flight-at-day.xml</slide>
+<slide>slides/space/sun-position.xml</slide>
+<slide>slides/space/thrust-to-weight-ratio.xml</slide>
+<slide>slides/space/thrust-to-weight-ratio-calculation.xml</slide>
+<slide>slides/space/thrust-to-weight-max-weight.xml</slide>
+<slide>slides/space/get-it-right.xml</slide>
+
+<slide>slides/space/delta-v.xml</slide>
+<slide>slides/space/delta-v-specific-impulse.xml</slide>
+<slide>slides/space/delta-v-specific-calculation.xml</slide>
+
+<slide>slides/space/orbital-transfers.xml</slide>
+<slide>slides/space/vis-viva-equation.xml</slide>
+<slide>slides/space/vis-viva-equation-circle.xml</slide>
+
+<slide>slides/space/to-duna.xml</slide>
+<slide>slides/space/still-to-do.xml</slide>
+<slide>slides/space/bill-explosion.xml</slide>
+<slide>slides/space/resources.xml</slide>
+
+</presentation>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.