Message Boards Message Boards

GROUPS:

From Ukraine: photo and map of the solar eclipse Mar 20, 2015

Posted 4 years ago
13872 Views
|
13 Replies
|
30 Total Likes
|

I was in the region of partial visibility of the solar eclipse in Odessa Ukraine. We had maximum coverage of 43% very close to

enter image description here

-- that's local time. The image you see below is unedited original captured by a small Olympus Tough camera. I also posted edited version on Instagram. It was a bit hard to get because of quite dense cloud cover:

WolframAlpha["odessa ukraine cloudiness March 20 2015",  IncludePods -> "CloudCoverChart:WeatherData", 
 AppearanceElements -> {"Pods"}, TimeConstraint -> {30, Automatic, Automatic, Automatic}]

enter image description here

Here is the photo:

enter image description here

I took a few more images. I place them in Mathematica default directory, then cropped right around the sun and auto-adjusted images:

imgs = Import["*.JPG"];
Multicolumn[ImageAdjust[ImageCrop[#, {500, 500}]] & /@ imgs, 4]

enter image description here

This was really simple - hold camera in your hand and shoot, - short exposure times due to high sky brightness guarantee very little sensitivity to hand shake. My Olympus Tough 1 has GPS tagger, but it is glitchy after many trips and camera falls. It worked only on few images, for example:

GeoPosition[imgs[[-1]]]

GeoPosition[{46.448, 30.7484}]

so this would simply work:

GeoGraphics[GeoMarker[GeoPosition[imgs[[-1]]]]]

enter image description here

The best image I posted above in full size unfortunately does not have geotag. But we know where it was taken anyway ;-)

GeoNearest[#, GeoPosition[imgs[[-1]]]] & /@ {"Country", "City"}

enter image description here

The map below shows from where the photo was taken and highlights the nearest regions of total and partial eclipse visibility.

GeoGraphics[{
  GeoMarker[Entity["City", {"Odesa", "Odesa", "Ukraine"}]],
  GeoStyling[None], Opacity[.7], Red,
  SolarEclipse[DateObject[{2015, 3, 20}], "TotalPhasePolygon",   EclipseType -> "Total"],
  Opacity[.3], Orange,
  SolarEclipse[DateObject[{2015, 3, 20}], "PartialPhasePolygon",  EclipseType -> "Total"]}, 
 GeoProjection -> "Equirectangular", GeoRange -> 4 10^6, ImageSize -> 1000]

enter image description here

And with Orthographic instead of Equirectangular to better grasp the span of the partial region:

GeoGraphics[{
  GeoMarker[Entity["City", {"Odesa", "Odesa", "Ukraine"}]],
  GeoStyling[None], Opacity[.7], Red,
  SolarEclipse[DateObject[{2015, 3, 20}], "TotalPhasePolygon",   EclipseType -> "Total"],
  Opacity[.3], Orange,
  SolarEclipse[DateObject[{2015, 3, 20}], "PartialPhasePolygon",  EclipseType -> "Total"]}, 
 GeoProjection -> "Orthographic", GeoRange -> 4 10^6, ImageSize -> 1000, , GeoGridLines -> Automatic]

enter image description here

And finally a cute detail. This exactly the Ukrainian candy that kids in my neighborhood used to observe the eclipse. It is cheap and the wrapper is transparent but tough enough not to hurt the eyes when sun was becoming visible in the sky patches between the clouds.

enter image description here

13 Replies

Indeed, the line is the central path. And the polygon is the area with 100% coverage. If you go outside that you will 90%, 80%, 70%. But note that these polygons is not for a single time, it is the 'sum' for the entire event. For a specific moment the 100% coverage will be something like a disk, and 90% a slightly larger disk, et cetera....

I'm pretty sure Wolfram has these algorithms in house to calculate these polygons. But, as of know, I don't think we have access to them...

the red line is where there is total eclipse

I thought the region of total eclipse visibility is a polygon, according to these definitions:

  • "TotalPhaseCenterLine" - line representing the central path of the eclipse
  • "TotalPhasePolygon" - polygon representing the total phase of the eclipse

Am I wrong?

GeoGraphics[{GeoStyling[None],

  Opacity[.3], Orange, EdgeForm[Gray],
  SolarEclipse[DateObject[{2015, 1, 1, 0, 0}],
   "TotalPhasePolygon", EclipseType -> "Total"],

  Red, Thick,
  SolarEclipse[DateObject[{2015, 1, 1, 0, 0}],
   "TotalPhaseCenterLine", EclipseType -> "Total"]},

 ImageSize -> 800, GeoProjection -> "Orthographic",
 GeoZoomLevel -> 5]

enter image description here

Hi Vitaliy,

In general: YES. But with multiple photos you can guess. Let me explain:

The path of the total solar eclipse can be obtained by:

GeoGraphics[{GeoStyling[None], 
  SolarEclipse[DateObject[{2017, 1, 1, 0, 0}], "GraphicsData", 
   EclipseType -> "Total"]}, GeoProjection -> "Equirectangular", 
 GeoRange -> "World"]

enter image description here

Now the red line is where there is total eclipse. So for any given moment in time it is a 'point'. Now 90% coverage (at the same moment) will be seen by all the people a 'circle' around that point, and the same for 80%, 70% ....10%....

So for any given moment in time during the eclipse you will have people with 100%, and the further you go away from that point the coverage decreases.

Now from your photos we have different times, and different coverages. So for each time we can find the center of the eclipses, and plot those circles with the different coverages. Where these intersect, there should be your location.

If I knew the exact orientation of your camera I would only need 1 photo.

It is by no means an easy calculation, but we can do many simplifications and maybe somethings comes out of it.

Cheers,

Sander!

It gives me an impression as being a quite hard problem. Doesn't orientation of the chipped-off part of the Sun also matter?

It's quite tricky, the coverage is the easy bit, but i need the moon-earth and sun-earth distance at the time around the event... It should be in the PlanetaryMoonData / StarData, but I can't get it to work... You'll hear from me...

Thanks Vitaliy, let me try some magic ;-)

Here is the link: ZIP-Archive

Vitaliy, can you post the Original full-resolution photos (as a zip?) so I can get the time-stamps, and a little bit more resolution on the images.

Interesting idea. I wish I would know enough celestial mechanics to compute something like this.

We can calculate the coverage (of the sun) for each of your photo. And inside the photo we can also find the time when it is taken. Using those 2 pieces of information we should be able to identify the location(s?) of your photo right? I.e. not using GPS, but using the coverage, and the times taken...

Sander, do you mean without embedded in the image geotag? Because if the geotag is embedded then Wolfram Language extracts automatically. So what do you mean "coverage (image analysis)" - how the sun looks?

Wouldn't it be cool if you could find your location just from the photos? I think this would be possible right? If you know the time and the coverage (image analysis), it should be possible right?

Very nice pictures!!!

By the way, you can also compute how far is Odesa from the partial eclipse border:

GeoDistance[Entity["City", {"Odesa", "Odesa", "Ukraine"}], 
 SolarEclipse[DateObject[{2015, 3, 20}], "PartialPhasePolygon", 
  EclipseType -> "Total"], "DistanceFunction" -> "SignedBoundary"]

Quantity[-2005.09, "Kilometers"]

Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract