Skip to content

Support broadcast of multiple WGS84 observers against a single time and target #1036

Open
@andibarg

Description

@andibarg

Hi,

First of all, thanks for the great work on this repo!

I would like to observe multiple geographic positions in WGS84 from the moon. Similar to the example for observing multiple stars from earth I expect the observe function to take all positions at once (e.g. as a list). However, I get an error with the following MWE:

from skyfield.api import load, wgs84

ts = load.timescale()
t = ts.now()

planets = load('de440.bsp')
earth = planets['earth']
moon = planets['moon']

geopos = wgs84.latlon(latitude_degrees = [0,0],
                      longitude_degrees = [0,10])

moon.at(t).observe(geopos+earth)

While wgs84.latlon allows lists as inputs, the last line does not and raises the following error in "vectorlib.py" (line 219):

ValueError: operands could not be broadcast together with shapes (3,) (3,2)

Is this a bug? I cannot find an easy fix but it seems that the shapes should be compatible somehow.

Cheers

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions