Per Python ad Astra
Formal Metadata
Title 
Per Python ad Astra

Title of Series  
Part Number 
48

Number of Parts 
169

Author 

License 
CC Attribution  NonCommercial  ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and noncommercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this license. 
Identifiers 

Publisher 

Release Date 
2016

Language 
English

Content Metadata
Subject Area  
Abstract 
Juan Luis Cano  Per Python ad Astra In the intersection of mechanics, mathematics and "cool stuff that travels through space" lies Astrodynamics, a beautiful branch of physics that studies the motion of spacecraft. In this talk we will describe poliastro, a pure Python library we can use to compute orbital maneuvers, plot trajectories and much more. The role of JIT compiling (using numba) to drop the previously used FORTRAN algorithms will also be discussed, as well as the importance of open source in scientific discoveries.  In the intersection of mechanics, mathematics and "cool stuff that travels through space" lies Astrodynamics, a beautiful branch of physics that studies the motion of spacecraft. Rocket launches have never been so popular thanks to companies like Space X, more and more investors pay attention to aerospace startups and amazing missions explore our planet and our Solar System every day. In this talk we will describe poliastro, a pure Python library we can use to compute orbital maneuvers, plot trajectories and much more. The role of JIT compiling (using numba) to drop the previously used FORTRAN algorithms will also be discussed, as well as the importance of open source in scientific discoveries.

00:00
Computer animation
Term (mathematics)
Multiplication sign
Software developer
Surface
Universe (mathematics)
Library (computing)
00:38
Covering space
Algorithm
Programmer (hardware)
Computer animation
Open source
Software developer
Endliche Modelltheorie
Event horizon
Number
Power (physics)
01:10
Computer animation
Multiplication sign
Videoconferencing
Video game
Instance (computer science)
Demoscene
Field (computer science)
Spacetime
02:25
Point (geometry)
Area
Randomization
Dialect
Focus (optics)
Latin square
Multiplication sign
Branch (computer science)
Distance
Orbit
Arithmetic mean
Roundness (object)
Computer animation
Velocity
Analogy
Right angle
Species
04:02
Satellite
Observational study
Classical electromagnetism
Observational study
Branch (computer science)
Perturbation theory
Auto mechanic
Computer animation
Different (Kate Ryan album)
Velocity
Object (grammar)
Physics
Spacetime
Object (grammar)
Spacetime
04:37
Computer animation
Twobody problem
05:01
Satellite
Point (geometry)
Trajectory
Kepler conjecture
Conic section
State of matter
Multiplication sign
1 (number)
Mathematics
Propagator
Phase transition
Gravitation
Nichtlineares Gleichungssystem
Monster group
Initial value problem
Position operator
Theory of relativity
Cellular automaton
Point (geometry)
Sound effect
Orbit
Computer animation
Personal digital assistant
Gravitation
Mathematician
Arithmetic progression
Spacetime
07:12
Metre
Multiplication sign
Building
Block (periodic table)
Multiplication sign
Software developer
Coroutine
Instance (computer science)
Arm
Type theory
Fluid statics
Frequency
Arithmetic mean
Fluid statics
Computer animation
Vector graphics
Data conversion
Library (computing)
Position operator
Maß <Mathematik>
Library (computing)
Physical system
08:30
Observational study
Software developer
Range (statistics)
File format
Sound effect
Binary file
Mereology
Binary file
Bookmark (World Wide Web)
Arithmetic mean
Computer animation
Velocity
Kernel (computing)
Position operator
Library (computing)
09:02
Algorithm
Code
State of matter
Multiplication sign
Numerical analysis
Code
Compiler
Formal language
Power (physics)
Number
Neuroinformatik
Subset
Formal language
Subset
Array data structure
Numeral (linguistics)
Computer animation
Befehlsprozessor
Set (mathematics)
Energy level
Numerical analysis
Software testing
Endliche Modelltheorie
10:34
Intel
Table (information)
Confidence interval
Code
Maxima and minima
Bit
Line (geometry)
Measurement
Order of magnitude
Theory
Compiler
Number
Wave packet
Revision control
Computer animation
Revision control
Resultant
11:31
Computer animation
Personal digital assistant
Weight
Line (geometry)
11:55
Distribution (mathematics)
Computer animation
Link (knot theory)
Food energy
Library (computing)
Compiler
12:40
Point (geometry)
Trajectory
Computer animation
Network topology
Planning
Gravitation
Metropolitan area network
Position operator
Orbit
14:26
Metre
Functional (mathematics)
Personal identification number
State of matter
Line (geometry)
Multiplication sign
Execution unit
Cellular automaton
1 (number)
Maxima and minima
Plot (narrative)
Tangent
Neuroinformatik
Inference
Frequency
Propagator
Radiofrequency identification
Flipflop (electronics)
Velocity
Internetworking
Kernel (computing)
Addressing mode
Conditionalaccess module
Fiber (mathematics)
Position operator
Module (mathematics)
Area
Link (knot theory)
View (database)
State of matter
Open source
Physicalism
Variable (mathematics)
Orbit
Inclusion map
Word
Wiki
Frequency
Computer animation
Vector space
Lie group
Order (biology)
Right angle
Object (grammar)
16:39
Point (geometry)
Noise (electronics)
12 (number)
Functional (mathematics)
Cone penetration test
View (database)
State of matter
Cellular automaton
3 (number)
Code
Bit
Instance (computer science)
Mereology
Limit (category theory)
Orbit
Orbit
Category of being
Computer animation
Insertion loss
Vector graphics
17:29
Area
Collaborationism
Presentation of a group
Open source
Multiplication sign
Power (physics)
Formal language
Bit rate
Different (Kate Ryan album)
Spacetime
Right angle
Endliche Modelltheorie
Physical system
Library (computing)
Spacetime
18:50
Point (geometry)
Dependent and independent variables
Point (geometry)
Decimal
Source code
Mathematical analysis
Approximation
Flow separation
Goodness of fit
Computer animation
Different (Kate Ryan album)
Phase transition
Universe (mathematics)
Gravitation
Circle
20:34
Mixture model
Trail
Standard deviation
Computer animation
Phase transition
Multiplication sign
Conservation law
Realtime operating system
Mereology
Number
21:55
Satellite
Point (geometry)
Trajectory
Randomization
Open source
Multiplication sign
Combinational logic
Mereology
Perspective (visual)
Neuroinformatik
Goodness of fit
Propagator
Term (mathematics)
Endliche Modelltheorie
Area
Algorithm
Key (cryptography)
Weight
Electronic mailing list
Instance (computer science)
Sphere
Orbit
Computer animation
Personal digital assistant
Calculation
Video game
Object (grammar)
Pressure
Library (computing)
00:01
but I believe the quite and term and these welcome 1 Louisa County so well as the previous speaker said this up from library for everything like you for rocket science will let me introduce myself for as many From this kind of time and almost surface engineering nearest studying in Madrid and right now working in finance from developer for the year and was the absence of Americans in university we to about a foot
00:40
ineligible of model and when we ran all of our algorithms in itself so it was not a great background to start with a number of questions and if you about open source of and power of
00:53
science and its relevance in the world that we now I was the chair that they can't Spain nonprofit analyzing many events like buy from Spain conference buy from agreed meet up and I remind you that the cover this is still open
01:10
engaging in I and make it clear yesterday my quick lightning talk and was space proceedings a what I found you something very amusing about space and is that almost nobody knows how it works and what's going on out there and yet it's like the only field adults are willing to accept their ignorance and Haskell kind of questions and as the other to you because you have this some instance superpower of asking almost everything in the vehicle UCB at all it's starts the scene with time was wait a minute before explaining why it's exactly these astrodynamics understanding in any Wikipedia definitions this that we go the video are you may recognize
02:02
here that came from the supermarket and and sporting life through he's been items and these ridiculous America and wondering what if I use my 2 best friends who would be the volume and so it goes bye bye then develops quickly runs to evolve and realizes this situation and turns his back to Great like seriously and then what about it's
02:28
some random dialing museum or something so what's happening here like what so bananas solvers superstrong so if he's slanting the baseball very very quick then is going to all our reach a very long distance and have the air rounds when they're not flat characters in this room right
02:49
because I'm going to disappoint you I look you can't do might leave now OK as the Europe's round and the ground started to go and the of the soul the heating some points on the other side of the world eventually it's going to reach like news the other the other side and you last baseball even weaker then at some point the ground is growing so fast that you never and this is what we call orbital velocity orbital motion in free fall because you don't actually need any propulsion or any means tools of increase your velocity and you're just falling all the time this example is not mine was divided by Newton in these masterpieces of the 17th century Principia Mathematica and is 1 of the areas examples of our focus experiments but of human use of money for the analogy the title of the draft of the of the species in Latin and we'll talk more about that at the end of keep this in mind well With this in mind what's astronomers 6 exactly with a branch of celestial mechanics
04:04
that studies the motion of humanmade objects through space and there is a very interesting show a couple of essential differences between studying the motion of the planets and emotional humanmade objects because the satellites rockets and stuff so a small that we have to take into account all the perturbations that might act to them in also we have
04:25
propulsion means so they can act on their own trajectories and correct their velocity and this complicates everything well this is where the
04:37
uh starting going to pull out of the of mouth but I'm going to try to keep the very simple and everybody in the audience to understand everything but is 1 you to keep in mind the EADS they're kind of this
04:50
kind of thing going to talk about the basic problem that we solve astronomy and later on and say how 1 so that impact the was the 1st 1 is the twobody problem which is
05:01
just 1 boarding orbiting around and 1 OK in relation to the case Our we're considering that these monsters have no radios OK so is there just like you might think points in space in where usually considering like motion of a spacecraft around the planet or moon or something then we can assume that the 2nd body is very small and doesn't have any effect on the orbit of the first one and the is equation that controls everything and this is going get the problem which is I'm having the initial value problem all the thing that I said before I have I have some states and some momentary appreciation of eliciting and after some things I want to know where my satellite and spacecraft whatever is going to be his causal propagation and are the which that for for the elliptical please that govern everything I want to put this here because that was you the 1st ones after the you remind you remember your your secondary school mathematics you cannot solve that equation for the for capital B and that is the case for some people this is that this equation is so difficult to solve done yeah you motivate the tool 100 years of mathematicians to develop many dear friend I know techniques to solve it and we made huge progress in mathematics things so the instructor of these equations and the last 1 is the lumber problem which is I believe the French mostly based on the same thing I have 1 position I want to reach another position in a given time so I want to know what is exactly the trajectory they have to be but I'm here late when we are designing a trajectory around us versus them because they have some nations and will say after this and we can assume that all the planets are like points and only consider the gravity of the cell
07:08
some to also understand on all this kind of problems like 3
07:12
people yesterday which is honest of an ancillary retained by reasoning optimistic license have physical units handling it solves all the problems that I said before they included some basic to the plotting as we will see that after the
07:31
and it it would be impossible without the work of many people I'm going to talk about a couple of dependencies because 1 of the genomic disaster by the kept basic and astronomy library reasoning by means of doing for off many many developers around the world it's mental half like this very building blocks of any astronomy period to mind for instance physical units which is like a static typing for engineers because think you makes meters we meiosis something that in very bad things that happen it has also handling of dates and times if you think that handling sometimes the something and then you would bear going to be astronomical times it's a real mess in the so changes the competition between preference system so I can express 1 position with this but the sound with specular prior the 2nd 1 is
08:34
JPL effect which is revised ran random roads
08:37
which is 1 of my favorite item developers and the thing is that the NASA and the giver part of our study I provide some planetary positions and velocities in a very broad range of Goals gobetween hundreds or thousands of years and they provide the meaning of binary format which is called this became and with these libraries I can take that data and know exactly where a planet is going to be seen the year
09:04
2000 OK so what happens with the very basic algorithm because this involves making that we sitting there waiting questions and stuff like that and when I is that they are working on these so then let's see what have other people done of these before me in of 4 try and model of the algorithms that were there were OK because the world and they had a very good performance but the goal was been only written there were no tests whatsoever and it was very difficult to distribute because they were in their works so my computer state leads to the internecine in wrapping that those algorithms in with importance to the level where from Python is possible that might be a times so I ended up with a theme that only was known to work on my computer and then some years after that they discovered a number of ways to provide and humanities and so free and it's meant to accelerate the cold the numerical Python code that uses lots our
10:13
numbercrunching numerical computations nonplayer race in the support set on a subset of the language and comprised 2 LLB and which is the compared to say that is all that is getting very famous now and so it supports the abuse sold I tried to rewrite all the algorithms that where
10:36
into the thousands of lines of Fortran only by phone and see what let's see how it goes and these are the results of paper that I
10:45
presented to the European Space Agency some months ago and you can see here the top line was the previous version compiling the entail Fortran compiler to theory is 1 of the best once there is the name like the reference for all the performance measures and we do for training was a bit slower like and lost 50 % of the performance and then you can see what the what online is that from code which is like are 2 orders of magnitude lower the portal which is the expected results and then you have here this from less number of resource that is these these lower confidence bounds moral within the same order of magnitude so I said well I'm going to throw to the to the
11:33
thousands of lines of sports on a lot of pain and In return I'm going to lose about 70 per cent performance that in many cases I can optimize the or weights for the thing to do it so all this is more or less what I believe these Fortran
11:53
yeah I was very happy to fold into away because now the
11:57
people that know Python which are much much more
12:00
than the people that know Fortran can easily contribute to my library and I can understand the cold dark 10 months later after writing in the distribution is much easier because I don't need to force everybody we of our Fortran compiler energies who knows what's that anyway so to be more example of these as discovered presented in the hot topics call for papers I wanted to bring something really really hot which is the same there are a lot of you know nation to to protect the effect and pursue this link thank you it was that the general
12:44
spacecraft was animation that NASA launched in 2011 appear as you can see here and here I have to be the 2 weeks ago so it's been on quite a long trip and the tree is was creating both as you can see that you you have the or read about there in August so there's a neuron and the 1st thing is launching this you must be careful not very wide or but it increases the orbit of Mars and you always fuel in these spots and was going to do next is going to perform on over here in the point that is most and far away from the Sun to correct the trajectory and try to encounter the in different point so exactly at that point we felt losing any fuel it's are using the gravity of the the Earth to change the trajectory and goal to the orbit of Jupiter the goal of overlap and when we're right to the end and I remind you that it was launched in 2011 and you like 216 these are right to do it and this is like government every year because it was the planning of this trajectory involves a lot of man hours and you have to take into account the positions of all the planets and for me
14:10
it's so beautiful and so on what we can do now is to reproduce exactly these orbits with polyester so I think wonderful right let's do it every quickly we secure what out
14:28
of modules from polyester which includes make this region of the the planets of the solar system sound sound objects to provide an API and the inference that when doing is downloading these 5 from necessary to you before to compute all the positions of the plants where it happened in my computer and are some that a lot from the internet like the date of launch the velocity of the unaware that of the flavor of the years from the date of arrival so the 1st thing that I'm going to do is to recover the position and the velocity of the Earth In the date of the land and again this here a couple of vectors and as you can see this is handling considered units using a surprise so if I use these highlevel functions that providing with polyester no risk of mixing physical unity fiber right out of 20 meters and 1 meters that everything is going to be in order and if the bright some and correct going to toward so I create sound state which is going to all hold some variables that we need later and I do the same thing computing the position of the of the year the deal the flight booking so then I'm going to use these men were objects tools say OK now I'm on the of day of the launch and going to build the 1st impose you'll get into the 1st order so if I have over and I see the period of the ordering this means that the time that it takes so 1 can think of it to complete then we see that he's of all 2 years so the ability of the of the of the year is for obviously 1 year so knowledge been into if I plot this thing than a half of the course the human the orbit of the earth and the 1st with all these if I go on doing this propagating in computing some more velocities
16:24
and they can find they have not only the position of the area and the 1st orbit but also the following word and correcting the orbit when quantity of 1 year if I go
16:39
on using the these functions that
16:41
you can take on going to toward building materials and properties is against the the the API is pretty simple they have this complete on this complete book of all these segments of the current you can see here the orbit of the Earth the 1st 2nd and then the correction this is the point of the flyby and then this is the last part on the labeled to I wanted to stop here because there are some limitations in the API all polyester because for instance I'm plotting all the segments that gone on you that and travel through courses like this 1 so there's a little bit of noise in this and also the threedimensional API is not exist the sole I will go
17:30
many for requests so going back to my presentation and were conclusion of this is that I can only works as a language but can be fast enough using some tricks for purposes and we can optimize the later and improve the reliability and everything because system of libraries that we have the following this kind of conference is amazing and people is boring a lot of work into this and the powers of a lot of different areas there's things missing polyester signal before and the good thing is that Open Development Living everything on the power boring built with accommodation right Torrijos the sky for them encouraging collaboration and making these that's easy to belong to the middle as possible before feeding I wanted to explained the title because the rates are lacking
18:33
countries that use to the model of the Royal Air Force which was there and was about to struggle to to space this opensource thing it's many times a struggle maybe you have been in the past specially which need
18:50
to businesses and compliance so I wanted to alter the the reply from our last to reflect that fact and also I wanted to put again the feature of the international space station which is separation between the United States Russia China Europe and many other countries which for me means that even through political differences in historical differences we can collaborate to be great things soul thank you very much giving don't use your aggressively and think you if but you for a very nice talk that do you have any questions yes there was also a thank you the analysis as best as I would once again when the they we went to the moon they were using that if you look in the source code that they were using 6 decimal places for pi which was funny because usually we try to use like a lot and node the that many and you can put people in subsequent we use this thing to send people to the moon now I'm going to explain why it will present that contains all over everything need that many of the smokers for and you can use like 10 you can approximate the circle of the universe to the size of the human response is ridiculous the thing that we polyester I'm thinking about calling these problem that is that only
20:18
assuming that my body is very small and also with the good lumber problem that is that it accurately from point out from point a to point B and I'm only taking into account 1 mole of cyberinfrastructure and when you're going from the earth to the moon
20:34
and you cannot do that because the money's greatly is very close to the In in all of uh the trajectory of think you into account both bodies so for now we can use it to build tool the moon but we can go to master is a part of the moon is very boring this number you very well do we have other presidents yeah the your creative urge most demonstrated through with the solution tracking conservative if you regretted you should you start to resist interested about geometrical yes this is the I have here have a mixture but we don't know yeah the following comes from a standard
21:34
to the data to greater to read and understand how much time how how long it takes to be to recreate it gets to do the new ideas in real time right now that I this the the the idea of having anything what I have the the novel were before
21:56
but a list of so I'm computing everything on the flight they all the algorithms like going from point a to point B they're extremely fast enough and the complete like in real life is taking the fight source of perspectives other questions yes hi and talk on my question is is from point a to point B is superfast but to be a challenge on computing or where foreign keys a library yeah that's what I can say that thing but for many practical problems you have to compute the solutions thousands of times 4 is that when you want to optimize and for it and say OK I'm going to try to use for instance there was a contest some and all solutions and goal 1 Friday on the we in March and then you be there are there are many combinations as well so you can imagine that there are many combinations and you then you have to compute the solutions thousands of times so even if this is very fast to do it once then you start adding up and between these and other times then is critical to all of our good performance other questions and the question myself because I you didn't exactly know that what you were presenting but I that's s for abuse and doing the calculation we don't really but we satellites motor satellites outgoing area going to add the GA tool terms Sunday not black monitored because this is some this is going to be optimized for brain trajectories so for lower to have to take many things into account like the thing that this is not the sphere that something like year are very strange and also the pressure of the sun because the sun pushes you when you are in orbit and you can actually see the light like this place and you soul I don't think they're going to all of those but you know about part cholera creates we weights and hopefully we will try to are be more more suitable for for near f objects to those do you know the anybody library that can be used for a lot of it would you have for example the library from random roles yes says that at least you can compute the is before propagation models which take this into account the orbit of driving and stuff like that so it's pretty accurate for most things like for calculating when some piece of space debris is going to eat us not other questions OK it is not the case of the use of