Jekyll2018-02-18T13:51:31+00:00http://tomkimpson.com/Tom KimpsonA personal academic blogTom Kimpsontom.kimpson.16@ucl.ac.ukGR Resources2017-12-20T00:00:00+00:002017-12-20T00:00:00+00:00http://tomkimpson.com/GRResources<p>There is a vast collection of available resources for learning GR. These are some that I have found the most helpful.</p>
<ul>
<li><a href="https://www.preposterousuniverse.com/spacetimeandgeometry/">Spacetime and Geometry, Sean Carrol</a></li>
</ul>
<p>This, in my opinion, is the best textbook for learning GR. I know others love MTW, but I find it slightly dated and tough going. The Carrol textbook, conversely, is clear, intuitive and all the other positive adjectives. Free notes are also available, but the book is well worth buying. Carrol takes a ‘maths first’ approach, starting by outlining tensor algebra, manifolds etc. and not getting to ‘actual GR’ until Chapter 4. Whilst this can feel frustrating for those wanting to dive straight in, developing the mathematical machinery early is a worthwhile investment.</p>
<ul>
<li><a href="https://www.amazon.co.uk/Relativity-Demystified-David-Mcmahon/dp/0071455450">Relativity Demystified, David McMahon</a></li>
</ul>
<p>All though the title and front cover speak to the contrary, this is actually a serious book that does a good job at explaining things in a more condensed form than Carrol. Think of as ‘Carrol Lite’.</p>
<ul>
<li><a href="https://www.amazon.co.uk/Relativity-Demystified-David-Mcmahon/dp/0071455450">General Relativity, Robert Wald</a></li>
</ul>
<p>You can’t go wrong with this book, although the more modern Carrol is better IMO.</p>
<ul>
<li><a href="https://www.amazon.co.uk/Gravitation-Physics-Charles-W-Misner/dp/0716703440">Gravitation (aka MTW), Misner, Thorne, Wheeler</a></li>
</ul>
<p>The classic GR bible. For learning GR, Carrol is better, but this is still a great resource and by virtue of being such a massive text, contains some topics excluded from Carrol (e.g. geometric optics in curved spacetime).</p>
<p>In addition to the above books, there are also some very good GR notes freely availbale on the web, easily found with Google. Some of the best are,</p>
<ul>
<li>
<p><a href="http://tomkimpson.com/pdfs/Pope_gravphysics.pdf">Christoper Pope’s GR Notes</a></p>
</li>
<li>
<p><a href="http://tomkimpson.com/pdfs/pope_grouptheory.pdf">Christopher Popes Geometry + Group Theory Notes</a></p>
</li>
<li>
<p><a href="http://tomkimpson.com/pdfs/Hamilton_GR.pdf">Alexander Hamilton’s GR Notes</a></p>
</li>
</ul>
<h2 id="other">Other</h2>
<h3 id="numerical-gr">Numerical GR</h3>
<ul>
<li>
<p><a href="http://www.springer.com/gp/book/9783642011634">Elements of Numerical Relativity and Relativistic Hydrodynamics</a></p>
</li>
<li>
<p><a href="https://www.amazon.co.uk/Numerical-Relativity-Einsteins-Equations-Computer/dp/052151407X">Numerical Relativity: Solving Einstein’s Equations on the Computer</a></p>
</li>
</ul>Tom Kimpsontom.kimpson.16@ucl.ac.ukRecommended books, texts, etc.What is Inertia?2017-11-03T00:00:00+00:002017-11-03T00:00:00+00:00http://tomkimpson.com/inertia<h3 id="introduction">Introduction</h3>
<p>TEST In the collection of his adventures, “<a href="https://www.goodreads.com/book/show/5544.Surely_You_re_Joking_Mr_Feynman_">Surely You’re Joking Mr Feynman</a>”, Nobel laureate Richard Feynman <a href="https://haveabit.com/feynman/knowing-the-name-of-something/">recounts an anecdote</a> regarding his father illustrating the difference between knowing the name of something and actually understanding something. After an example on knowing the different name of birds in different languages, he says,</p>
<blockquote>
<p>One day, I was playing with an “express wagon,” a little wagon with a railing around it. It had a ball in it, and when I pulled the wagon, I noticed something about the way the ball moved. I went to my father and said, “Say, Pop, I noticed something. When I pull the wagon, the ball rolls to the back of the wagon. And when I’m pulling it along and I suddenly stop, the ball rolls to the front of the wagon. Why is that?” “That, nobody knows,” he said. “The general principle is that things which are moving tend to keep on moving, and things which are standing still tend to stand still, unless you push them hard. This tendency is called ‘inertia,’ but nobody knows why it’s true.”</p>
</blockquote>
<p>Perhaps he was being a touch facetious in order to illustrate his point, but in fact we <strong>do</strong> understand inertia. Surprisingly, for such an apparently simple phenomenon, the explanation is a deep one and takes us to a fundamental understanding of space and time.</p>
<p><img src="https://erdosbaconsabbath.com/images/richard-feynman/640x360.jpg" align="centre" /></p>
<h3 id="inertia-and-newtons-laws">Inertia and Newton’s Laws</h3>
<p><a href="https://en.wikipedia.org/wiki/Inertia">Inertia is defined</a> as the resistance of a physical object to any change in the state of its motion i.e. objects tend to keep moving in a straight line at a constant speed. This behaviour is described by Newton’s First Law:</p>
<ol>
<li>An object will remain at rest or continue with uniform motion unless acted on by an external force</li>
</ol>
<p>A key insight here is that a particle moving by inertia offers no resistance to its motion. In contrast, if a particle is forced to deviate from inertial motion - i.e. it is accelerated - then the particle offers a resistance to this acceleration. So if a particle travelling inertially is subject to some force, it offers a reaction against that force. This gives us Newton’s 2nd and 3rd Laws:</p>
<ol>
<li>
<p><script type="math/tex">F = m a</script>. The force is proportional to the acceleration, through the inertial mass.</p>
</li>
<li>
<p>For every force exerted on an object, the object exerts back an equal and opposite force.</p>
</li>
</ol>
<h3 id="the-einsteinian-view">The Einsteinian View</h3>
<p>In GR, the motion of an object subject to no external forces (i.e. resistance, friction, etc.) is described by the geodesic equation.</p>
<script type="math/tex; mode=display">\frac{d^2 x^{\alpha}}{d \lambda^2} = - \Gamma^{\alpha}_{\beta \gamma} \frac{dx^{\beta}}{d \lambda} \frac{dx^{\gamma}}{d \lambda}</script>
<p>We can read this equation simply as acceleration (LHS) = curvature (RHS), where the degree of curvature is quantified by the <a href="https://en.wikipedia.org/wiki/Christoffel_symbols">Christoffel Symbol</a> <script type="math/tex">\Gamma</script>. A particle following a geodesic is in free-fall. It moves only by inertia, that is once it is moving, it keeps moving, on a path determined by this equation.</p>
<p>In flat Minkowski spacetime inertial motion is a straight timelike wordline. In a curved spacetime, a free particle follows a curved timelike worldline.</p>
<p><img src="https://www.redletterchristians.org/wp-content/uploads/2014/04/Beautiful-Minds.jpg" align="centre" /></p>
<h3 id="but-what-about-acceleration">But what about acceleration?</h3>
<p>Someone might now furrow their brow and say <em>“But wait - isn’t inertial motion associated with zero acceleration? A particle in free fall is obviously accelerating, so how can you describe its motion as inertial?”</em></p>
<p>This is a seismic shift from Newtonian to Einsteinian thinking. In Newtonian physics, a ball sitting on a table surface is not accelerating. If this ball then falls off the edge of the table, it accelerates.</p>
<p>Conversely, the Einsteinian view is that a ball sitting on the table surface is being accelerated, since its motion is being prevented from following a free-fall geodesic due to the external force exerted on it by the table. When dropped the ball is in free-fall and the acceleration is zero. To see that the acceleration is zero is illuminated by the fact that a falling observer does not feel his own weight - Einstein’s supposed <a href="http://physics.ucr.edu/~wudka/Physics7/Notes_www/node85.html">‘happiest thought’</a>.</p>
<p><em>“Okay…but clearly the ball when dropped IS accelerating! It’s speed is increasing! What gives?”</em></p>
<p>The acceleration of a dropped ball is only an <strong>apparent</strong> acceleration as distinct from an <strong>absolute</strong> acceleration.</p>
<p>The absolute acceleration is the acceleration experienced when a particle is prevented from travelling on its geodesic due to deformation of its worldline. A body undergoing an absolute acceleration will ‘feel’ the force acting on it. Conversely, the apparent acceleration results just from the curvature of spacetime. The classical example of this is two people on the surface of the Earth, standing at the equator. To them, the surface of the Earth appears flat and they don’t know that they are standing on a curved surface. If they both then walk due north they will observe that they come closer together, in contrast to what would be expected where they on a flat surface where parallel lines never meet. IF they don’t know about the curvature of the surface they’re on, they might attribute their convergent motion to some invisible force acting on them. The same is identically true of our dropped ball, except that the acceleration is due to the curvature of a 4D spacetime. Such a phenomenon is known as <a href="https://en.wikipedia.org/wiki/Geodesic_deviation">geodesic deviation</a>. We can further illustrate this through the geodesic equation. Were the ball on a flat spacetime then the curvature is zero, i.e. <script type="math/tex">\Gamma = 0</script>, and so,</p>
<script type="math/tex; mode=display">\frac{d^2 x^{\alpha}}{d \lambda^2} = 0</script>
<p>i.e. zero acceleration.</p>Tom Kimpsontom.kimpson.16@ucl.ac.ukAn explanation from General RelativityPlanck Stars2017-08-10T00:00:00+00:002017-08-10T00:00:00+00:00http://tomkimpson.com/PlanckStars<blockquote>
<p>Tl;dr: “A black hole is essentially a collapsing and bouncing star that appears frozen because it is seen in slow motion.”</p>
</blockquote>
<h2 id="problems-of-current-black-hole-theory">Problems of current black hole theory</h2>
<p>In the standard theory of black hole formation, a massive star (greater than ~ 30 solar masses) collapses to a point or <a href="https://en.wikipedia.org/wiki/Gravitational_singularity">singularity</a>. At this point the equations of general relativity become singular, nothing really works, and everything goes to infinity. At a certain radius outside this singular point is the <strong>event horizon</strong> - the region within which the escape velocity is greater than the speed of light, and is given for a non-spinning (<a href="https://en.wikipedia.org/wiki/Schwarzschild_metric">Schwarzchild</a>) black hole of mass <script type="math/tex">M</script> by,</p>
<script type="math/tex; mode=display">r_s = 2M</script>
<p>The existence of singular points in general relativity is problematic. At the moment we think that all singularities are hidden behind the event horizon and can have no causal impact on the wider universe. This is the <a href="https://en.wikipedia.org/wiki/Cosmic_censorship_hypothesis">Cosmic Censorship Conjecture</a>; that all singularities in Nature exist behind the black hole event horizon. Should the conjecture be untrue, and naked singularities exist, this would throw up issues relating to causality, determinism and the break down of physical laws. This inspired Stephen Hawkins pronouncement that <em>“Nature abhors a naked singularity”</em></p>
<p>A further problem comes from trying to mesh quantum mechanics (QM) with GR. A quantum theory of gravity is expected to quantize spacetime itself. As such, the smallest unit of space is the Planck length <script type="math/tex">l_p</script>, given by,</p>
<script type="math/tex; mode=display">l_p =\sqrt{\frac{\hbar G}{c^3}} \approx 10^{-35} \text{m}</script>
<p>Now, over time black holes evaporate due to <a href="https://en.wikipedia.org/wiki/Hawking_radiation">Hawking radiation</a> and their radius <script type="math/tex">r_s</script> (i.e. the event horizon) shrinks. The restriction of unitarity in QM means that information must be conserved in a system, whilst the <a href="https://en.wikipedia.org/wiki/No-hair_theorem">No Hair Theorem</a> implies that information must remain trapped inside the black hole. Consequently, at the end of the evaporation, when the radius is very small, the black hole would have to store a large quantity of information that is incompatible with the expected Planckian lengthscale.</p>
<p><img src="https://cdn1.img.sputniknews.com/images/102341/10/1023411037.jpg" alt="QM" /></p>
<h2 id="the-solution-planck-stars">The Solution: Planck Stars?</h2>
<p>A possible solution to both the <script type="math/tex">r=0</script> singularities and the information storage problems was proposed by <a href="https://arxiv.org/pdf/1401.6562.pdf">Rovelli & Vidotto, 2014</a>. The concept is that during the final collapse of a large star, the core could compress into a small but finite, highly dense core, with a density of the order of the Planck density:</p>
<script type="math/tex; mode=display">\rho_P = \frac{m_P}{l_P^3}</script>
<p>The key insight here is that the density can be of Planck order, before the lengthscale becomes Planckian. The size of a Planck star can be estimated as,</p>
<script type="math/tex; mode=display">r \sim \left( \frac{m}{m_P}\right)^{1/3} l_P</script>
<p>Therefore a stellar mass black hole would collapse to a Planck star with radius <script type="math/tex">\sim 10^{-10}</script> cm, much larger than the Planckian lengthscale.</p>
<p>The collapse then does not result in a singularity but instead a quantum gravitational phase where the inwards gravitational forces are balanced by the outwards quantum pressure. A star in this phase is known as a <strong>Planck Star</strong>. Such a Plank Star would exist behind the event horizon of a black hole.</p>
<p>The question then becomes: <em>can a Planck Star could exist for the typical lifetime of a black hole?</em>. The answer proposed by Rovelli & Vidotto is very cool; as measured by an observer riding the collapse, the lifetime (proper time) is very short - essentially a bounce. However, to some distant observer the lifetime is very long owing to the <strong>extreme gravitational time dilation</strong>. That is, a distant observer sees the expansion of the Planck Star after the bounce in such slow motion that it appears stationary (of course, the observer doesn’t actually ‘see’ anything at all as the Planck Star is hidden behind the event horizon).</p>
<p>Therefore we have two radii: the event horizon radius which is shrinking due to Hawking radiation and the Plank star radius which after the initial collapse bounces back and begins to grow. Once the event horizon becomes less than the Planck horizon then the information that fell beneath the event horizon is then available to the universe and the unitarity of QM is preserved.</p>
<p><img src="https://assets.fastcompany.com/image/upload/w_1280,f_auto,q_auto,fl_lossy/wp-cms/uploads/2017/06/p-1-super-massive-black-holes-crashing.jpg" alt="BH" /></p>Tom Kimpsontom.kimpson.16@ucl.ac.ukIs a black hole a collapsing star, frozen in time?LISA - Gravitational Wave Detection in Space2017-06-28T00:00:00+00:002017-06-28T00:00:00+00:00http://tomkimpson.com/LISA<blockquote>
<p>This post was inspired by the <a href="https://www.elisascience.org/news/top-news/gravitational-wave-mission-selected">recent selection</a> of LISA as ESA’s third large class mission, L3. This is fantastic news for gravitational astrophysics, and means that construction of the LISA mission can now commence.</p>
</blockquote>
<h2 id="ligo-and-ground-based-detectors">LIGO and ground based detectors</h2>
<p>With the <a href="http://earthsky.org/space/astronomers-detect-gravitational-waves">recent news of another detection</a> of gravitational waves (GWs) by LIGO, it seems that GW astronomy is starting to take its place alongside the classical electromagnetic observations that have been used since the dawn of astronomy. This is especially exciting since the same theory that predicts GWs - general relativity - is a fundamental theory of space and time, and in many ways is much deeper than classical electromagnetism. These gravitational wave observations may then help us to probe fundamental physics in very extreme regimes.</p>
<p>Now, GWs, like all waves, have an associated frequency. The radiation detected by LIGO has a frequency of ~ 100 Hz. This is the typical frequency range of extreme events like the merger of two black holes of similar mass (20 - 30 solar masses). However there are also other events in the universe that produce GWs at lower frequencies. Being a ground based detector, the lowest frequency LIGO can reach is limited by noise to ~ 10 Hz. These noise sources are primarily due to tectonic/seismic activity and general thermal noise. LIGO employs both passive and active methods to correct for this noise; passive methods prevent vibrations reaching mirrors and active methods measure vibrations. Nevertheless the remaining noise ultimately limits the frequencies that can be measured to greater than 10 Hz. An upcoming Japanese GW detector <a href="https://en.wikipedia.org/wiki/KAGRA">KAGRA</a> looks to overcome these noise sources by being underground and being very cold, but is still likely to be limited to frequencies greater than ~1 Hz.</p>
<p><img src="http://cdn.media.astronomy.com/~/media/images/bonus/gravity/redshiftSpectrum.jpg?mw=2000" alt="LISA image: http://astronomy.com/bonus/gravity" /></p>
<h2 id="lisa-and-space-based-detectors">LISA and space based detectors</h2>
<p>So, we need a detector that is capable of examining these very low frequencies. To do this we need longer baselines, allowing for the detection of longer wavelengths, and also a way to avoid all the noise on Earth. The obvious solution is to go to space, and this is what is being proposed with the <a href="https://www.elisascience.org/">LISA mission</a></p>
<p>The concept of LISA is entirely analogous to that of LIGO. It is simply a very large <a href="https://www.ligo.caltech.edu/page/what-is-interferometer">interferometer</a> in space. It will be composed of 3 spacecraft in a V-formation. At the apex of the V sits the ‘mother’ craft, whilst 2 ‘daughter’ craft rest at the ends of the arms. Within each of these craft is housed a test mass. These test masses follow a certain path around the Sun. In the absence of any non-gravitational forces (e.g. drag, dust, radiation), we say they are in ‘free-fall’ and their trajectory is specified by general relativity. Consequently, for an appropriate initial configuration the distances between these masses remains unchanged and forms a baseline with which gravitational waves can be detected.</p>
<p><img src="https://www.elisascience.org/files/imagecache/fullview/images/eLISA__2.jpg" alt="LISA image2" /></p>
<p>In order to ensure that these masses are indeed free-falling (i.e. only gravitational forces are acting), the craft housing the mass acts as a drag-free casing. This works by continually measuring the distance between the shell of the craft and the test mass and correcting for any change in this distance. This correction is applied via micro-newtonian thrusters on the spacecraft, which adjust the craft’s position by forces equivalent to the weight of a fly.</p>
<p>Measuring the distances between the craft using interferometry is more difficult than the standard method used in an interferometer on Earth. On Earth, interferometers work by the direct reflection of light. With LISA, this is not possible since the distances involved are so much greater; the typical LISA baseline will be ~1 million km. Over such distances, the power from a laser beam would be attenuated by a factor of ~<script type="math/tex">10^{-20}</script>, equivalent to the detection of one photon every 3 days. To remedy this, the lasers on LISA act as transponders; the mother spacecraft sends out a laser signal to the two daughter craft. This incoming laser is phase locked and a beam is returned. By comparing any changes in the laser beam phase, the distances can be measured.</p>
<h2 id="science-with-lisa">Science with LISA</h2>
<p>Science goals with LISA are broad, covering astrophysics, cosmology and fundamental physics. Of particular personal interest is the use of LISA for gaining a greater understanding of fundamental physics. This would be an entire blog post in itself, but LISA will be able to perform precision tests of general relativity in the strong field regime by observing gravitational radiation emitted as some small object (e.g. a pulsar or stellar mass black hole) orbits a much larger <a href="https://en.wikipedia.org/wiki/Supermassive_black_hole">supermassive black hole</a>. Such systems are called Extreme Mass Ratio Inspirals (EMRIs). For more information on using EMRIs for precision tests of GR see <a href="https://arxiv.org/abs/1201.3621">Amaro-Seoane et al., 2012</a>.</p>Tom Kimpsontom.kimpson.16@ucl.ac.ukNote on LISA craft, following ESA selectionGBT Visit2017-05-18T00:00:00+00:002017-05-18T00:00:00+00:00http://tomkimpson.com/observation/GBT<p>I recently visited the Green Bank Telescope for an observer training workshop. Although my research is entirely theoretical, ultimately it has implications for use of radio telescopes like GBT. This post collects some very brief notes.</p>
<h3 id="general">General</h3>
<p>GBT is a 100m radio telescope. It is composed of a 100m parabolic dish and focus. Its characteristic feature is the offset focus. Typically radio telescopes have the focus in the centre of the dish. By having the focus offset this results in less scattering and better sensitivity and pointing down to 2’’.</p>
<p>Because the GBT is so sensitive, probing down to milli or even micro Jansky levels, radio frequency interference (RFI) is a key consideration. The entire GBT is set in a radio quiet zone, i.e. no phone signals, wifi etc. Closer to the GBT no microwaves, digital cameras or even petrol cars owing to the RFI given off by the spark plugs!</p>
<p><img src="http://tomkimpson.com/images/GBT3.jpg" align="right" /></p>
<h3 id="pipeline">Pipeline</h3>
<p>GBT pipeline is broken down into 2 primary sections:</p>
<ol>
<li>Pick ‘frontend’ - i.e. choose a receiver for specific observation frequency.</li>
<li>Pick ‘backend’ - i.e. how the data is taken and processed, which depends on the observation type i.e. pulsars will have a different backend to spectral line studies.</li>
</ol>
<h3 id="pulsar-specifics">Pulsar specifics</h3>
<p>Within the pulsar backed, there are 3 main observation modes,</p>
<ul>
<li>Fold</li>
<li>Search</li>
<li>Calibrate</li>
</ul>
<p>Folding is used in the situation when we know something about the pulsar. Since most pulsar signals are very weak it can be impossible to detect a single pulse against the background noise. To detect the pulse it is necessary to ‘fold’ the signal every period.</p>
<p><img src="http://tomkimpson.com/images/psrfolding.png" alt="PSR image" /></p>
<p>If we don’t have any prior information on the pulsar we instead use a search mode. In this case we Fourier transform the pulsar signal into the frequency domain to inspect for periodic signals e.g. if in Fourier space we see a signal at 100 Hz we would then fold the data at 0.01 seconds. From this we can see how RFI can be especially problematic for pulsar studies; many anthropogenic RFI sources are also periodic. If we know the frequency we expect the RFI at (e.g. AC current at 60 Hz) we can ignore that frequency.</p>
<p>The calibration mode is simply used to try and calibrate for noise.</p>
<h3 id="dispersion-measure">Dispersion Measure</h3>
<p>Pulsar signals are subject to dispersion by the ISM. We want to correct the signal for the dispersive effects - in order to do this the dispersion measure must be known. In a fold mode, a reduced chi-squared fit can be done to tell us the most likely dispersion measure. In search mode we must correct at multiple trial DMs. The DM can also be used to identify RFI - since RFI has a local origin is will not be dispersed by the ISM and have zero DM.</p>
<p>This DM correction is described as either ‘incoherent’ or ‘coherent’.
With incoherent corrections, the signal is detected and split into channels across the bandwidth. Each channel is then corrected by an appropriate amount. Conversely, coherent corrections are applied directly to the voltage signal. Typically, for the same bandwidth, coherent corrections give better time resolutions (1/bandwidth vs Bandwidth/num_channels)</p>
<p><img src="http://tomkimpson.com/images/prepfold.png" alt="Prep image" /></p>
<h3 id="useful-references">Useful references</h3>
<p><a href="https://science.nrao.edu/facilities/gbt/observing/GBTog.pdf">Official GBT Guide</a></p>
<p><a href="http://pulsarsearchcollaboratory.com/wp-content/uploads/2016/01/PSC_search_guide.pdf">Ryan Lynch’s Pulsar Guide</a></p>
<p><img src="http://tomkimpson.com/images/GBT1.jpg" align="left" />
<img src="http://tomkimpson.com/images/GBT2.jpg" align="right" /></p>Tom Kimpsontom.kimpson.16@ucl.ac.ukSome notes, pictures, etc.Using HDF5 for Fortran/Python data exchange2017-04-26T00:00:00+00:002017-04-26T00:00:00+00:00http://tomkimpson.com/computing/HDF5<p>When dealing with large datasets, for all sorts of reasons relating to <a href="http://stackoverflow.com/questions/24395686/best-way-to-write-a-large-array-to-file-in-fortran-text-vs-other">accuracy/performance/datasize</a> we want to do any I/O in binary format.</p>
<p>Two languages I commonly use are Python and Fortran. Getting these two languages to be able to exchange information and talk to each other can be difficult. Binary saved data in Fortran depends on the compiler, whilst the <code class="highlighter-rouge">np.save</code> function in Python saves in a defined format, but extracting this data in Fortran is a pain.</p>
<p>A useful solution to this problem is to use a hierarchical data format, <a href="https://support.hdfgroup.org/HDF5/">HDF</a>.</p>
<p>HDF is especially useful as it allows one to save different types of data in a ‘folders and files’ format, within one file that can then be read in a platform-independent way. <a href="http://neondataskills.org/HDF5/About">See here</a> for summary of HDF advantages.</p>
<p><strong>Installation</strong></p>
<p>Download the tarball from <a href="https://support.hdfgroup.org/HDF5/release/obtainsrc5110.html">HDF</a> and unpack it in some directory, which we will refer to as <code class="highlighter-rouge">HDF5_Dir</code>.</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>cd HDF5_Dir
./configure --prefix = HDF5_Dir --enable-fortran
make
make check
make install
</code></pre></div></div>
<p>for complete details see full <a href="https://support.hdfgroup.org/HDF5/release/obtainsrc5110.html">INSTALL_file</a></p>
<p>If this is all OK, you should be able to navigate to HDF5_Dir/bin and see a executable called h5fc (amongst others). This is the gfortran compiler that we will use when compiling with a view to use HDF5.</p>
<p>The final step is to add the path <code class="highlighter-rouge">HDF5_Dir/bin</code> to your <a href="https://superuser.com/questions/789448/choosing-between-bashrc-profile-bash-profile-etc">bashrc</a> file. To do this, simply open bashrc and add</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>export PATH = "path/to/dir/HDF5_Dir/bin:$PATH"
</code></pre></div></div>
<p>Save and reboot terminal.</p>
<p>Now the command</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>echo $PATH
</code></pre></div></div>
<p>should now show <code class="highlighter-rouge">HDF5_Dir/bin</code> in your <code class="highlighter-rouge">PATH</code> whilst the command</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>h5fc
</code></pre></div></div>
<p>should bring up a bunch of compilation options.</p>
<p>For example usage in Fortran + Python see <a href="https://github.com/tomkimpson/Intersection">my github repository</a></p>Tom Kimpsontom.kimpson.16@ucl.ac.ukInstallation, Usage, Need etc.The Detectability of Gravitons2017-02-13T00:00:00+00:002017-02-13T00:00:00+00:00http://tomkimpson.com/gr/gravitons<blockquote>
<p><strong>tl;dr</strong> An ideal detector the mass of Jupiter in a close orbit around a strong source of gravitons like a neutron star would result in only 1 detection every 100 years. This makes gravitons effectively undetectable, but their existence maybe be able to be inferred from CMB measurements.</p>
</blockquote>
<p><img src="http://tomkimpson.com/images/quantum_spacetime2.png" align="right" /></p>
<p>In the expected quantum theory of gravity, the gravitational force will be quantized into particles called gravitons. In the same way that a photon mediates the electromagnetic force, so will a graviton mediate the gravitational force. I recently came across a paper, <a href="https://arxiv.org/pdf/gr-qc/0601043v3.pdf">Rothman, T. and Boughn, S. 2006</a>, which is now over a decade old, discussing the feasibility of graviton detection. It was produced in response to a comment made by Freeman Dyson questioning whether it would ever be possible to actually detect a graviton. Below is summarized the trail of thought and conclusions from what is an interesting, yet perhaps ultimately depressing paper.</p>
<h3 id="condition-for-detection">Condition for detection</h3>
<p>Imagine some detector of mass <script type="math/tex">M_d</script> a distance <script type="math/tex">R</script> from a source - mass <script type="math/tex">M_s</script>-of gravitons which have energy <script type="math/tex">\epsilon_{\gamma}</script> The criterion for detecting a single graviton with a high probability is that the path length <script type="math/tex">\lambda</script> should be greater than the mean-free-path,</p>
<script type="math/tex; mode=display">\lambda > l</script>
<script type="math/tex; mode=display">n \sigma \lambda > 1</script>
<p>for density of particles in the detector, <script type="math/tex">n</script>, and interaction cross section, <script type="math/tex">\sigma</script>, which quantifies the likelihood of a scattering event.</p>
<p>It can be shown (pg. 3) that this criterion approximately reduces to,</p>
<script type="math/tex; mode=display">f_{\gamma} \sigma M_d \frac{M_s}{R^2} \frac{1}{\epsilon_{\gamma}} >1</script>
<p>for graviton flux fraction <script type="math/tex">f_{\gamma} = L_{\gamma}/L</script>. This seems to make intuitive sense - we want the flux/cross-section and masses of the detector and source to be as large as possible, and also want to minimize the distance between the source and detector. We then want to determine <script type="math/tex">f_{\gamma}</script> and <script type="math/tex">\sigma</script> for a given process.</p>
<h3 id="cross-section-sigma">Cross section, <script type="math/tex">\sigma</script></h3>
<p>The cross section is an effective area that sets how likely it is that a scattering event will take place when a beam is incident on an object composed of particles. It can also be thought of as the <em>rate</em> of an event; high cross section, high rate of scattering. Typically in physics we talk of the differential cross section <script type="math/tex">d \sigma /d\Omega</script>, which tells us the rate of scattering at a given angle (<script type="math/tex">\Omega</script> here is the <a href="https://en.wikipedia.org/wiki/Solid_angle">solid angle</a> ). We can define this basically as,</p>
<script type="math/tex; mode=display">d \sigma = \frac{dP}{dI}</script>
<p>for power absorbed by detector <script type="math/tex">P</script> and flux <script type="math/tex">I</script>. Now, it can be seen that,</p>
<script type="math/tex; mode=display">P = \hbar \omega \Gamma</script>
<p>where <script type="math/tex">\Gamma</script> is the transition rate given by <a href="https://en.wikipedia.org/wiki/Fermi's_golden_rule">Fermi’s golden rule</a></p>
<script type="math/tex; mode=display">% <![CDATA[
\Gamma = \frac{2\pi}{\hbar} |<a|H|b>|^2 \rho %]]></script>
<p>From here it is possible to show (pg 7 - 10) that for gravitons,</p>
<script type="math/tex; mode=display">\sigma \sim \hbar G</script>
<p>i.e. <strong>some very small quantity</strong>.</p>
<p>With this cross section we are now in a position to determine how likely we are to detect a graviton in different physical situations. We take our detector mass <script type="math/tex">M_d</script> detector to be equal to that of Jupiter, <script type="math/tex">\sim 10^{27}</script> kg, and composed entirely of atomic hydrogen.</p>
<h3 id="graviton-luminosity">Graviton luminosity</h3>
<p>There are few feasible sources of gravitons. We consider each mechanism and the likelihood of graviton detection via this mechanism (see pg 11 onwards.),</p>
<p><strong>i) Spontaneous Emission</strong></p>
<p>There are two sub-mechanisms to consider here. One is direct spontaneous emission, where a graviton is emitted spontaneously in the decay of a hydrogen atom from the <em>3d</em> to the <em>1s</em> state. In this case the emitted graviton would have insufficient energy to ionize any of the hydrogen in our Jupiter-mass detector. The second is a gravitational analogue of the <a href="https://en.wikipedia.org/wiki/Compton_scattering">Compton effect</a>, where a graviton is scattered off an electron and we use our detector to detect the electrons recoil energy. In this case, even if we take the source mass to be equal to the mass of the galaxy (<script type="math/tex">\sim 10^{42}</script> kg) and assume that the source - detector separation <script type="math/tex">R \sim 30</script> kpc, the detection criterion is not satisfied. Consequently it is concluded that the detection of gravitons from spontaneous emission is impossible.</p>
<p><strong>ii) Gravitons from BH decay</strong></p>
<p>It is thought that black holes evaporate via <a href="https://en.wikipedia.org/wiki/Hawking_radiation">Hawking radiation</a>. Since the Hawking temperature is</p>
<script type="math/tex; mode=display">T \sim \frac{\hbar}{k_B G} \frac{1}{M}</script>
<p>and particle energy <script type="math/tex">E = k_b T</script>, there is an inverse relationship between graviton energy and BH mass. In order to produce gravitons with energies <script type="math/tex">> 10 eV</script> requires BH with masses much less than a stellar mass and so such BHs must be <a href="https://en.wikipedia.org/wiki/Primordial_black_hole">primordial</a>. It can be shown that the number of gravitons detected over the lifetime of the BH source is of the order,</p>
<script type="math/tex; mode=display">N_{\gamma} \sim 10^{-5}</script>
<p>i.e. non-detectable</p>
<p><strong>iii) Gravitational Bremsstrahlung</strong></p>
<p>Electromagnetic Bremsstrahlung radiation occurs when charged particles are decelerated. In the electromagnetic case, the power radiated is,</p>
<script type="math/tex; mode=display">P \sim (m \ddot{x})^2</script>
<p>However, <a href="http://tomkimpson.com/gr/GW_for_maths_types/">gravitational dipole radiation does not exist</a>. Instead, gravitational radiation is quadrupolar. In this case, if we assume that the detector is in a close orbit around a neutron star, the number of expected detections per year is,</p>
<script type="math/tex; mode=display">N_{\gamma} = 10^{-2}</script>
<p>i.e. 1 detection every 100 years</p>
<h3 id="further-complications">Further complications</h3>
<p>The above numbers were determined in ideal conditions with a Jupiter-mass detector of 100% efficiency. If we take a more ‘realistic’ (!) detector of mass <script type="math/tex">0.01 M_{Earth}</script>, the detection of gravtions is not possible in any of the above discussed cases.</p>
<p>Further issues arise relating to noise. A neutron star would also emit neutrinos. The cross section for the interaction of neutrinos with matter is <script type="math/tex">\sim 10^{-45} cm^2</script>, which is 20 orders of magnitude greater than the gravito-electric cross section. Furthermore, it is estimated that <script type="math/tex">\sim 10^{13}</script> neutrinos would be emitted for every graviton. Consequently, we might expect <script type="math/tex">\sim 10^{33}</script> neutrinos to be detected for every graviton. One might therefore want to construct some shield to prevent neutrinos striking our detector. Such a shield should have a thickness greater than the mean free path for neutrinos. However, since the neutrino cross section is so small, and the mean free path <script type="math/tex">l = 1/n \sigma</script> for ordinary materials of standard density, this thickness is of the order of light-years. A shield of such size would quickly collapse into a BH.</p>
<h3 id="final-words">Final Words</h3>
<p>With the above analysis, the authors feel quite safe in predicting that no one will ever detect a graviton in our universe. However, it is possible that gravitons can be detected indirectly. For example, <a href="https://arxiv.org/abs/1309.5343">Krauss, L. and Wilczek, F. (2013)</a> have suggested that gravitons may leave a detectable imprint on the polarization of the Cosmic Microwave Background.</p>Tom Kimpsontom.kimpson.16@ucl.ac.ukShort note re gravitons - too long for a tweetEchoes of Gravitational Waves2017-01-26T00:00:00+00:002017-01-26T00:00:00+00:00http://tomkimpson.com/gr/GW_echoes<p>Recently a <a href="https://arxiv.org/abs/1612.00266">paper was published</a> that reported on the tentative (<script type="math/tex">3 \sigma</script>) detection of ‘echoes’ in the gravitational wave signal detected by LIGO. If true, this detection has far-reaching implications for our theories of gravity and the search for a quantum theory of gravity. This post will outline the proposed theoretical cause of these echoes, and the problem in causes for general relativity</p>
<h3 id="introductory-quantum-mechanics">Introductory quantum mechanics</h3>
<p>A key principle of quantum mechanics is that of unitarity - the conservation of information, i.e. given a bunch of quantum systems each with a particular probability, all the probabilities must sum to 1.</p>
<p>If we smash together two particles (e.g. in the LHC at CERN) then gather all the possible information on the particles that result (trajectories, charge, baryon number etc.) we should be able to recreate all the information about the original 2 smashed particles. This is because information is conserved in quantum mechanics. However we run into a problem when we try to apply this principle to black holes.</p>
<h3 id="cause-of-the-echoes---a-firewall">Cause of the echoes - a firewall</h3>
<p>Stephen Hawking’s famous result is that black holes radiate. This is <a href="https://en.wikipedia.org/wiki/Hawking_radiation">Hawking radiation</a>. A pair of virtual particles pop into existence near the event horizon. One with negative energy is taken into the black hole, whilst the other escapes. The black hole gains a particle with negative energy and so loses mass. Consequently over time black holes slowly evaporate. Another famous theorem about black holes is the No-hair theorem which says that all properties of a black hole - including the radiation it emits - are determined by just 3 parameters, the mass, charge and angular momentum. This is a problem because it means that Hawking radiation is independent of the sort of material entering the black hole. There is no way to find out all the information about what was thrown into the black hole by getting all the possible information contained in the Hawking radiation. This is known as the <strong>black hole information paradox</strong>.</p>
<p>A proposed solution to this information paradox is known as a black-hole firewall. The ideas is that when one virtual particle is absorbed by the black hole, the entanglement between the particle pair is broken. This releases huge amounts of energy and results in a firewall around the black hole, just outside the event horizon, that would incinerate any matter that attempts to pass through it. Correlations between emitted particles would then carry the information about the particles that fell into the black hole (note this is quite a heuristic explanation - see <a href="http://link.springer.com/article/10.1007%2FJHEP02%282013%29062">the original ‘AMPS’ paper</a> for a more involved discussion).</p>
<p>The (potentially) detected echoes in the LIGO signal occur as a direct result of this firewall. The model considers the event horizon as a mirror and the firewall as a partially permeable surface. Gravitational waves would oscillate between these two boundaries, with some gravitational radiation being released each time the wave strikes the firewall, which we then detect as echoes.</p>
<h3 id="the-problem-for-gr">The Problem for GR</h3>
<p>The problem with this firewall solution is that it violates the equivalence principle, which we can state in this case as ‘the event horizon is not a special place’. According to classical GR, an infalling observer would notice nothing different as she passed the event horizon. However, the firewall solution defies this principle - she would notice something different as she is thermalised into dust by the firewall! The reason this is a problem is that the equivalence principle is the key foundation stone in our General Relativity.</p>
<p>If the report of these echoes is true (Note they are still far off the required <script type="math/tex">5 \sigma</script> significance), then it would mean that a firewall exists, and consequently the equivalence principle does not hold globally. That is, clearly the equivalence principle is somewhat right - it has been used to form GR which has passed a plethora of tests in the weak field regime - but perhaps it does not apply to every corner of the universe. Perhaps close to the surface of black holes, where we expect quantum effects to play a more significant role, the equivalence principle does not hold.</p>
<p>The solution will require the development of a full quantum theory of gravity, the two main strands of which are string theory and loop quantum gravity. For discussion on either of these two theories, see: <a href="http://physics.stackexchange.com/questions/2407/give-a-description-of-loop-quantum-gravity-your-grandmother-could-understand">Give a description of Loop Quantum Gravity your grandmother could understand</a></p>Tom Kimpsontom.kimpson.16@ucl.ac.ukDiscussion on the implications of the recent potential detections of echoes in the LIGO GW signalUpdating a MacBook Pro2016-12-30T00:00:00+00:002016-12-30T00:00:00+00:00http://tomkimpson.com/howto/MacUpdate<p>I have had my current MacBook pro since mid-2012. It has a 2.5 GHz i5 processor and is the last model to have a HDD rather than a solid state drive, and so over time as my drive has become more full with old apps and cached files, the computer has become slower and more sluggish. This is coupled with the fact that the puny 4 GB of RAM results in the computer crashing when I try to run too many tabs or have too many apps (for ‘too many’ read, ‘2’) open simultaneously.</p>
<p>I was craving a new machine, but the 2016 MacBook Pro prices are astronomically and prohibitively high for a poor grad student.</p>
<iframe src="//giphy.com/embed/CTkWFZ1IDvsfS" width="240" height="375" frameborder="0" class="giphy-embed" allowfullscreen=""></iframe>
<p><a href="http://giphy.com/gifs/apple-steve-jobs-CTkWFZ1IDvsfS">via GIPHY</a></p>
<p>Instead I decided to attempt to upgrade the RAM and hard drive on my existing machine. I was expecting it to be difficult and thought it would make a good blog post, but it was so easy and the online tutorials so simple to follow, I’ll do nothing more here than point you in the right direction.</p>
<p>First step is to run the <a href="http://www.crucial.com/usa/en/systemscanner">Crucial System Scanner</a>. this will tell you what RAM/SSD updates are compatible with your current machine. It obviously lists only Crucial products, but once you know the maximum RAM or compatible SSD you can then shop around. However I also found Crucial to be the best value.</p>
<p><strong>Upgrade the RAM</strong></p>
<ul>
<li>
<p>Buy some RAM from wherever. I got the 16 GB DDR3L set from <a href="https://www.amazon.co.uk/Crucial-8GBx2-PC3L-12800-SODIMM-204-Pin/dp/B007B5S52C/ref=sr_1_1?s=computers&ie=UTF8&qid=1483105845&sr=1-1&keywords=Crucial+16+GB+Kit+%288+GB+x+2%29+DDR3L+1600+MT%2Fs+%28PC3L-12800%29+SODIMM+204-Pin+Memory">Crucial</a>. DDR4 RAM is now also available, which runs at a lower voltage than DDR3. However it is currently drastically more expensive and the benefits minimal, unless you are doing a lot of video encoding. See here for a full discussion and comparison of <a href="http://www.anandtech.com/show/9483/intel-skylake-review-6700k-6600k-ddr4-ddr3-ipc-6th-generation/7">DDR3 vs DDR4</a></p>
</li>
<li>
<p>Follow the very simple steps from the <a href="https://www.cnet.com/uk/how-to/how-to-add-more-ram-to-your-macbook-pro/">CNET Tutorial</a></p>
</li>
</ul>
<p><strong>Upgrade the HDD to SSD</strong></p>
<p><a href="http://www.pcworld.com/article/2048120/benchmarks-dont-lie-ssd-upgrades-deliver-huge-performance-gains.html">SSD upgrades deliver huge performance gains</a>. They are still more expensive per GB than a HDD drive, but that price has been dropping steadily since SDD drives were first introduced.</p>
<ul>
<li>
<p>Buy an SSD from wherever. I got the 525 GB SSD from <a href="https://www.amazon.co.uk/gp/product/B01IAGSD68/ref=oh_aui_detailpage_o01_s00?ie=UTF8&psc=1">Crucial</a>. Most standard drives should work.</p>
</li>
<li>
<p>Follow the equally simple steps, again from a <a href="https://www.cnet.com/how-to/upgrade-your-macbook-install-ssd-hard-drive/">CNET Tutorial</a></p>
</li>
</ul>
<p>That’s it! The difference this has made to my MacBook has been night and day. Apps open and run quickly and smoothly, I can run multiple programs without the laptop crashing and a basic ‘app-opening-speed’ test vs a modern MacBook shows zero difference. I paid ~ £115 for the SSD and ~ £80 for the RAM, putting the total costs at ~ £200. Currently a non-TouchBar Macbook Pro with 2.0 GHz i5 processor (i.e. slower than my current processor), 512 GB SSD and 16GB RAM goes for ~ £1800.</p>
<p><strong>Everyone should do this</strong></p>Tom Kimpsontom.kimpson.16@ucl.ac.ukHow to upgrade RAM and hard drive on a MacBookNotes on use of OpenMP2016-12-03T00:00:00+00:002016-12-03T00:00:00+00:00http://tomkimpson.com/howto/OpenMP<p><a href="http://tomkimpson.com/gnuparallel/">GNU parallel</a> is useful if you have <script type="math/tex">X</script> .sh scripts that need to be run in parallel across multiple cores. If instead we want to run the components of a single (Fortran) script in parallel, we can use <a href="http://www.openmp.org">OpenMP</a>.</p>
<p>Use is fairly straightforward - it is just important to define the variables used correctly. An example is presented below:</p>
<div class="language-fortran highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="k">PROGRAM</span><span class="w"> </span><span class="n">demo</span><span class="w">
</span><span class="kt">INTEGER</span><span class="w"> </span><span class="n">I</span><span class="p">,</span><span class="n">J</span><span class="p">,</span><span class="w">
</span><span class="kt">REAL</span><span class="w"> </span><span class="n">r</span><span class="p">,</span><span class="n">theta</span><span class="p">,</span><span class="n">phi</span><span class="w">
</span><span class="kt">character</span><span class="p">(</span><span class="nb">len</span><span class="o">=</span><span class="mi">100</span><span class="p">)</span><span class="w"> </span><span class="p">::</span><span class="w"> </span><span class="n">xstr</span><span class="p">,</span><span class="w"> </span><span class="n">ystr</span><span class="p">,</span><span class="n">loadfile</span><span class="w">
</span><span class="n">r</span><span class="o">=</span><span class="mi">8</span><span class="w">
</span><span class="n">theta</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">1.57</span><span class="w">
</span><span class="n">phi</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">3.14</span><span class="w">
</span><span class="c1">!$OMP PARALLEL DO PRIVATE(I,J,xstr,ystr,loadfile) SHARED(r,theta,phi)</span><span class="w">
</span><span class="k">do</span><span class="w"> </span><span class="n">I</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">-5</span><span class="p">,</span><span class="mi">5</span><span class="w">
</span><span class="k">do</span><span class="w"> </span><span class="n">J</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">-5</span><span class="p">,</span><span class="mi">5</span><span class="w">
</span><span class="k">write</span><span class="p">(</span><span class="n">xstr</span><span class="p">,</span><span class="w"> </span><span class="s1">'(F8.2)'</span><span class="p">)</span><span class="w"> </span><span class="kt">REAL</span><span class="p">(</span><span class="n">I</span><span class="p">)</span><span class="w">
</span><span class="k">write</span><span class="p">(</span><span class="n">ystr</span><span class="p">,</span><span class="w"> </span><span class="s1">'(F8.2)'</span><span class="p">)</span><span class="w"> </span><span class="kt">REAL</span><span class="p">(</span><span class="n">J</span><span class="p">)</span><span class="w">
</span><span class="n">loadfile</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s1">'/path/to/some/file/file='</span><span class="p">//</span><span class="nb">trim</span><span class="p">(</span><span class="nb">adjustl</span><span class="p">(</span><span class="n">xstr</span><span class="p">))//</span><span class="s1">'_y='</span><span class="p">//</span><span class="nb">trim</span><span class="p">(</span><span class="nb">adjustl</span><span class="p">(</span><span class="n">ystr</span><span class="p">))//</span><span class="s1">'.txt'</span><span class="w">
</span><span class="k">call</span><span class="w"> </span><span class="n">some_subroutine</span><span class="p">(</span><span class="n">loadfile</span><span class="p">,</span><span class="n">r</span><span class="p">,</span><span class="n">theta</span><span class="p">,</span><span class="n">phi</span><span class="p">)</span><span class="w">
</span><span class="k">enddo</span><span class="w">
</span><span class="k">enddo</span><span class="w">
</span><span class="c1">!$OMP END PARALLEL DO</span><span class="w">
</span><span class="k">END</span><span class="w">
</span></code></pre></div></div>
<p>So all the stuff thats run in parallel is contained within the two <code class="highlighter-rouge">!$OMP</code> statements. WE must also declare which variables are ‘private’ - i.e. used by only one strand - and which are ‘shared’. In the example case, the values of <script type="math/tex">r, \theta, \phi</script> are the same for each strand. What is different is the load file and so the parameters related to the loadfile are declared as private.</p>
<p>Compilation is of the form,</p>
<div class="language-fortran highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">gfortran</span><span class="w"> </span><span class="o">-</span><span class="n">fopenmp</span><span class="w"> </span><span class="n">script</span><span class="err">.</span><span class="n">f</span><span class="w">
</span></code></pre></div></div>
<p>The number of strands to run is set externally as,</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>export OMP_NUM_THREADS=8
</code></pre></div></div>
<p>for setting e.g. 8 threads running in parallel.</p>
<p>Calling <code class="highlighter-rouge">nproc</code> will confirm the number of threads that will be run, whilst <code class="highlighter-rouge">nproc --all</code> will show you the total number of cores available to you.</p>Tom Kimpsontom.kimpson.16@ucl.ac.ukHow to run computation in parallel in FORTRAN