top of page

Flower Constellations in Sedaro

Updated: Jul 25, 2023

Building Flower Constellations in the cloud with the Sedaro Python API.

Sedaro strives to push the limits of system simulation by leveraging distributed compute environments, and we're always looking for unique ways to exercise our tech. Flower Constellations are a particularly interesting concept which highlights the benefits of cloud-scalable simulation.

Flower Constellations are a special class of multi-satellite formations designed to take advantage of the repeating behavior of each constituent satellite orbit. Individually, each satellite follows a simple elliptical orbit, as is typical for most Earth orbits. But synchronization of the size, shape, and orientation of a large number of these orbits can lead to some pretty spectacular repeating patterns. Flower Constellations can be specifically optimized to meet certain needs, like communications or imaging for certain regions on Earth, and the repeating nature of these constellations can provide unique revisit and resiliency benefits.

Flower Constellations are generally defined by a sequence of eight parameters: three integer values describing the size and shape of the flower constellation, two integers defining where specific spacecraft will be placed in the shape, and three values defining the template orbit that all the satellites share. The references at the bottom of this page provide more detail on how to define these constellations.

All simulation results shown here were generated using the Sedaro Python API to rapidly create a large number of space objects with a single API call. Each scenario was simulated and visualized on the live, multi-tenant instance at

Let’s start with a basic, five-satellite Flower Constellation and see what it looks like. We’ll run through one orbit to see the overall shape.

A Basic Flower Constellation.

Each satellite in the constellation is on a separate but very similar orbit, rotated slightly around Earth. The resulting pattern looks, as the name suggests, like a flower. By tweaking the parameters defining the constellation we can vary the number of petals (orbits) and change the number of satellites traveling along each one.

The really exciting property of these constellations is in what is called a "Secondary Closed Path." These paths can be drawn by creatively selecting the starting locations of each satellite. Let's look at a different constellation that produces an intentional Secondary Closed Path.

A repeated circle constellation.

In this constellation of 90 space objects, groups of nine objects each appear to be rotating as a unit around a common central axis. Of course the satellites are not actually following unusual, non-physical paths -- each still lives on an identical elliptical orbit focused on Earth with a slight rotation offset from each other. In aggregate, though, the motion of each individual combines to mimic motion that would otherwise be impossible by a single orbiting spacecraft.

An infinite number of secondary paths are possible. For example, a figure eight:

A figure eight constellation.

Or this helical shape:

A helical constellation.

These constellations are pretty strange, but if you follow the motion of any one object for long enough it is clear that it moves along an ellipse as you would expect. What about this one?

A five-pointed star constellation.

This one really made me question if I had somehow corrupted our underlying dynamic model. How can we possibly maintain all these straight edges using points moving on elliptical paths? No matter how long I stare at it, it just does not make sense. But, if we begin to draw the orbital paths of each satellite, the behavior becomes a little more intuitive.

The star constellation with orbit trails visible.
The star constellation with orbit trails visible.

Each satellite is clearly following an elliptical path, but as a whole they are synchronized and offset in precisely the right way to preserve the straight lines with only a gradual rotation of the overall shape.

These examples of Flower Constellations are really just the tip of the iceberg. There are an infinite number of possible constellations, each with unique properties. Though most choices of parameters do not produce constellations with any discernible pattern, there are still many more interesting combinations waiting to be discovered.


Check out these scenarios in our live site right now, no account required:

Of course, Sedaro is not just for drawing fancy orbits. Any (or all) of the satellites in these constellations can be full-fledged digital twins with detailed operational logic, GN&C, power, and thermal models. Let's look back at one of our scenarios, but now swap in 90 spacecraft with all subsystems enabled. This view shows the breakdown of power flowing through one of the spacecraft.

A constellation of 90 full-model Sedaro digital twins.

The Jupyter notebook used to create these scenarios is also available on our Github! Check out our modsim-notebook repository here. The ‘flower_constellation’ notebook contains everything needed to generate a new flower constellation in one click and it delivers all of the constellations shown in this post to your Sedaro account.


[1] Wilkins, M., "The Flower Constellations - Theory, Design Process, and Applications", Doctoral Dissertation, Texas A&M University, 2004.

[2] Mortari, D., "Flower Constellations as Rigid Objects in Space", First Workshop on Innovative System Concepts, 2006.

[3] Ruggieri, M., et al. "The Flower Constellation Set and its Possible Applications", ACT Final Report, 2006.

548 views0 comments

Recent Posts

See All


bottom of page