You are seeing poliastro blog. If you want to see documentation, the latest version can be found in docs.poliastro.space.

This is an end of an era

By Meuge

Contributing to Poliastro has been an incredible experience for me. Since it was the first time, I've participated in GSOC. And the first time I've ever approached to package dedicated to problems arising in Astrodynamics and Orbital Mechanics. Being part of Poliastro was an exciting challenge that I had to surmount and also an unbelievable opportunity to learn about Space, Math and Physics.

era

With the thorough knowledge learned, and the feedback from JuanLu and Jorge, I was able to overcome every challenge in my Poliastro's journey. As I had said when I had the opportunity, I am grateful to both of my mentors who accepted me to be part of this exceptional community. :)

wall-e

Git-log

What we have achieved in the past three months:

Looking for the answers!

By Meuge

Hey, folks! The last weeks were really exciting getting done an algorithm for ground-track orbit. After long days trying to find the perfect approach for Poliastro, we decided to give it a go bringing to life this paper

wow

But everything it's not what it seems

Well, we thought it will be quite straightforward but much too learn still I have , right Master Yoda?

do-or-do-not

So I am not gonna lie to you folks, it wasn't that easy, but as Rocky says, "Every champion was once a contender who refused to give up". So now you are gonna know how we solve it. Game on! First things first, we needed to apply numerical analysis in order to obtain the roots of the equation, because given the complexity of the function, there was no other way around.

oh-no

So we had to come up …

On the move!

By Meuge

Hey, folks! Here's Meuge, your usual host from the last few months.

Johnny

In the last few weeks, we got a little bit of everything, analyzing, coding, and searching for feasible solutions to reach the best result. Therefore, we came up with a new feature in Poliastro's Earth module. The API may change in the future, so be aware by the time you read this. Hence, I bet you might be wondering, what's all the fuzz?

Really?

Well, now you can experiment with the new API to compute the visibility of sensors that are on board of the satellites. The FOV, field of view, the question is about meeting mission goals within the limit of a satellite sensor. Given some parameters about the viewing satellite, the fundamental problem related to calculating the field of view is estimating how much of Earth we …

What we've been working on these days!

By Meuge

Hey, folks! I hope everyone is okay out there. Today, I am going to explain a little bit about Repeat ground track orbits, and the value that lies behind. Orbits with repeating ground tracks play a significant role in space engineering. Ground tracks that repeat according to any pattern have meaningful applications in remote sensing missions, reconnaissance missions, and numerous rendezvous and docking opportunities with an orbiting spacecraft. Since they overfly the same points on the planet’s surface every repeat cycle, such as those studying gravity, the atmosphere, or the movement of the polar ice cap.

mind-blown

So as you might imagine, this is amazing. In one way, the data we consume relies on these orbits. As mentioned before, Repeat ground track (RGT) orbits allows a satellite to reobserve the same area after a repeat cycle.

repeat-ground-track

So how do we …

To Infinity and Beyond!

By Meuge

Hey folks! It's been a while, but here I am to keep you posted about what we've been up to these last days.

news

What have we been up to?

We began the coding period with a video call with the mentors, as you might already know, JuanLu and Jorge. We got to know each other a little better, and we started to design what was ahead of our path.

future

But, before dropping any line of code, we first had to think about what would be the best way to integrate the new features to Poliastro community in order to capture the desired requirements from an end-user perspective. After some deliberation, we came up with the idea of adding two new objects.

Spock

By now, I hope to have your attention as well as Spock's. So we created EarthSatellite and Spacecraft. Both …

GSoC 2020, I am going to an adventure!

By Meuge

Hi, you all! Let me tell you something, this is going to be the beginning of our journey together, we are going on to a spatial adventure! Sit tight, and wait for the countdown!

countdown

But first, let me introduce myself, my name is María Eugenia, though everybody knows me as Meuge.

First things first, SPACE? How did we get here?

All began with the big bang, no wait, that's a story for another time. All began in 2019, when JuanLu reached out to the The Fellowship of ~~the ring~~ Python Científico community to informed us that Poliastro would be part of GSoC 2019. To be honest with you, I had just a slight idea of astrodynamics, so I took a big leap of faith and asked JuanLu where I could make myself useful.

Yoda's way

The truth is that JuanLu wasn't that …

New features after GSOC19

GSOC 2019 Edition has almost finished. All along this last three months lots of issues where solved, poliastro 0.13 was raised, new features were applied and of course, new issues and bugs appeared.

The objective of this post is just to collect all the implementations that have been merged during this GSOC and also those that are still required to be done.

ALREADY IMPLEMENTED

  • [x] Lambert minor issues were fixed.
  • [x] Lambert as Maneuver instances.
  • [x] Docs and notebook on previous implementations.
  • [x] Trail plotting option.
  • [x] Fix minor issues on CI and tests.
  • [x] New twobody propagators.
  • [x] Maneuver fixes: Hohmann time to pericenter and units bug.
  • [x] Atmospheric models: COESA62 and COESA76.

A detailed description and link to the code can be found in the following lines.

Izzo Algorithm minor errors

Some errors appeared in the minimum …

CZML Extractor: An overview

As the proverb says "all good things must come to an end". Unfortunately, it's time to bid adieu to the summer and have a look on what has been accomplished so far.

The CZML Extractor

This was undoubtedly the main and most time-consuming part of the project. The extractor allows users to easily convert orbital data to CZML. You can find an overview of the extractor's usage in the User Guide or take a look in the more in-depth Jupyter notebook tutorial

The Cesium Application

Since we need more parameters to accurately represent the data, we also need a specific application to parse said parameters. For this reason, I worked on a Cesium application that allows you to easily visualize the data. At this moment, there are two separate applications: one that runs remotely and one you can copy-paste directly …

Hard reformat week

Reformat on poliastro.atmosphere

After implementing the COESA62 and COESA76 models in #738 I was not completly happy because of lots of data and coefficients at the beginning of each script. Therefore and after asking Juanlu, it was finally decided to move all those numbers to text files under the *.dat extension.

Furthermore, I decided not only to do that but also to completely reformat the poliastro.atmosphere module:

  • base.py: holds different mother classes for atmospheric models.
  • coesa62.py: U.S Standard Atmosphere 1962 model.
  • coesa76.py: U.S Standard Atmosphere 1976 model.
  • util.py: contains atmospheric utilities.

Documentation was also added together with a notebook to better see not only how these objects work but their differences in output results. In the following image properties for COESA76 against geometrical altitude are plotted:

COESA76

Reformat on poliastro.bodies

While working …

Atmospheric models and more!

Tasks for this last period...

While checking the stability of the 0.13, GSOC continues and new bugs, implementations, and others need to be solved for the 0.14. Most of them are related to:

  • New frame modeling, implementation, and testing.
  • New plotting capabilities, such us two attractors in the same plot.
  • New orbit creation methods.
  • Start using non-dimensional units.
  • Different bug solving.

Issues related to frames are the most tricky ones since working with them is not so intuitive. Plotting capabilities are directly related to frames and therefore no major improvements are done in this field without solving something in the previous one.

New atmospheric models

I have been trying to model and implement some famous atmospheric models for poliastro. Drag is one of the main perturbations for LEO orbits. By making use of Cowell's formulation we can integrate …