Where is the oldest known (2400 years) intact shipwreck?

Open in Cloud | Download to Desktop via Attachments Below

NOTE: Click on the image to zoom in. Click back browser button to return to reading. All omitted or hidden computations, data, and definitions are available in the attached notebooks.


Deep-sea treasure hunt… with a research team… discovering a time capsule from 400BC… it hardly gets better than this. Past week the media was abuzz about an extraordinary discovery made by the team of Black Sea Maritime Archaeology Project (Black Sea MAP). They found the oldest known intact shipwreck estimating its age as 2,400 years via radiocarbon dating. Remarkable preservation of the ship is due to unique feature of the Black Sea with 90% of water lacking oxygen below ~150 meters that makes up huge up to ~2km deep anoxic water layer. There are almost no life and no chemical or biological corrosion of the ships’ materials and shipwrecks are often preserved very well, which is invaluable for archeology and history. All live creatures dwell in the top thin layer of oxygenated water fed from rivers. Anoxic layer is fed by the Mediterranean Sea via the Bosphorus Strait with two layers hardly mixing. Good summaries can be found at ArsTechnica, BBC, NPR, The Guardian, and many other sources. So far we know from the media:

  • Shipwreck is more than 2 km deep under water
  • Shipwreck is more than 80 km away from Burgas, Bulgaria

This piqued my curiosity. Can the seabed drop so fast to 2 km depth just 80 km off shore? Can I visualize it? Being a creature of the Black Sea shores myself, born and raised in gorgeous Odessa, Ukraine, I could not let the idea go. As you can see my computed chart above is pretty close to the vague one below reported by The Guardian (I could not find neither more precise location data nor maps, let me know if you did). This work is no more than an educated guess based on a few numbers and some fun data science ramble. The key is the GeoElevationData and Geometric Computation. I still struggle with a few inconsistencies, for instance, perhaps the units for the distance “80 off shore” mentioned by media are miles and not kilometers; or perhaps there are other blinders or/and my estimates are off. Let’s just dive into it.

To get a better picture of where globally is the shipwreck, compute countries surrounding the Black Sea ({All, 0} means all countries at the zero distance from the sea):

ScreenShot2018-10-30at3.25.31AM.png

I usually like to see two geo-scales - global and zoomed in - combined for better comprehension:

ScreenShot2018-10-30at3.28.23AM.png

The quality of the very first visualization is achieved by assembling 3 main parts: geo-objects (points, circles) relief map obvious to an eye, and a fine contour map of GeoElevationData that looks separately like this (click to zoom):

The red contour marks the depth of 2 km and everything inside can mostly be flat or deeper, but not by much for the Black Sea with the maximum depth ~2.2 km. First of all we need location of the shipwreck, whose latitude and longitude I compute (quite roughly) at the very end of this post and now assign to variable WRECK:

ScreenShot2018-10-31at10.05.47AM.png

The following definitions formulates the objects of interest in terms of geo- data and computations:

ScreenShot2018-10-31at12.36.57AM.png

where //sW etc. are small style operators found in the attached notebook. The following creates high quality relief plot serving as the background:

ScreenShot2018-10-30at10.32.33.png

The next interesting part is building fine contour lines of geo elevation or topographic map. From the relief map let’s extract the projection, which Wolfram Language selects the best for a given geo-data automatically:

ScreenShot2018-10-30at10.33.38.png

and projected ranges:

ScreenShot2018-10-31at12.40.53AM.png

GeoGridRange above and GeoElevationData taking a GeoProjection option are available only in Wolfram Language version 12 that will be coming soon. Request geo elevation data for that exact same projection, projected region and units and resolution of interest (metric in this case):

Now we can define some sensible elevation levels for the contours and visualize quite stunning topography of the Black Sea region (see the contour map above):

ScreenShot2018-10-31at12.47.05AM.png

To finally make the very first visual we merge the relief plot with the contour plot:

ScreenShot2018-10-30at12.40.58.png

see the result at the top image at very beginning of this article. But, so, how did I estimate the location of the shipwreck, a.k.a. the yellow dot? I simply assumed that the expedition seeking deeper waters would move towards the nearest place where the seabed descends to much deeper levels. The point on 2km-depth contour nearest to the expedition’s port of origin might serve as a good guess. As some media mentioned Burgas, Bulgaria as the city within ~80km from shipwreck I assumed Burgas, having a port, was the origin of the expedition. One can extract the 2km-depth contour and turn it into a geometric region to perform RegionNearest computation. But there are a subtleties to watch out. Let’s first get our 200km-depth contour:

ScreenShot2018-10-31at12.53.07AM.png

DiscretizeGraphics transformed a Graphics object into a geometric region. RegionNearest finds a point in the region (contour) nearest to a given point (city location). The thing is to perform the RegionNearest computation in projected space, and then go back to GeoPosition:

ScreenShot2018-10-31at12.59.43AM.png

“GridXY” is also version 12 feature. Now we can compute the distance from Burgas to the shipwreck. Interestingly, the distance in miles is much closer to media-stated “80” than the distance in kilometers. So maybe the units are where confused in the interviews.

code_shipwreck400BC.nb (18.5 KB)
full_shipwreck400BC.nb (3.7 MB)

27 Likes

Great post! Thanks for sharing. I was curious about the existence of other shipwrecks in the Black Sea and in order to answer this question I started a little computational excursion. Using GeoEntities we can discover shipwrecks:

ScreenShot2018-10-31at16.01.14.png

We can retrieve the “DateSank” and “Position” properties using EntityValue:

We can observe that half of them sank during the second World War:

Using their GeoPosition we can find their Wikipedia articles via WikipediaSearch:

One of the wreck articles can not be retrieved via its “GeoPosition”. So, we need to search it using its name instead:

Now lets map the locations of the shipwrecks with GeoGraphics:

Using the property “ArticlePlaintext” we can create a quick summary with WordCloud:

ScreenShot2018-10-31at16.11.49.png

Another interesting property of WikipediaData is “ImageList”, but it retrieves all kinds of images from the article. So, we can try to filter the images using ImageIdentify:

Amazingly ImageIdentify successfully identifies even the type of ship in this particular case. And we can tweak ImageIdenty for our particular problem and remove the non-ship images:

Feel free to play with the attached notebook.

Black_Sea_Shipwrecks.nb (9.76 MB)

6 Likes

Love your post. All this talk of GeoProjection made me wonder - will MMA 12 support using EPSG codes or similar for different projections? It would really help me in GIS work to be able to specify projections that way. GeoProjectionData in 11.3 isn’t as useful as being able to directly input the SRID.

3 Likes

We are working on adding support for EPSG codes, both for projections and datums, and also for their combined CRSs. We expect it to be included in one of the 12.x releases of the Wolfram Language, soon after version 12 itself.

2 Likes

Thanks a lot Jose, I look forward to it. Thanks for all your hard work on the Geo* functions!

2 Likes

Cool post Vitaliy!
I thought I would leave here a fun speculation about the oldest unknown shipwreck. I would be willing to bet that there are many ships several meters or so underground, near the Richat Structure in Mauritania.

GeoGraphics[GeoPosition[{21.135, -11.4016}], 
 GeoBackground -> "Satellite", GeoRange -> Quantity[15, "Miles"]]

The landscape shows signs of large-scale flooding, or something washing/dragging across it.

GeoGraphics[GeoPosition[{21.135, -11.4016}], 
 GeoBackground -> "Satellite", GeoProjection -> "Mercator", 
 GeoRange -> Quantity[300, "Miles"]]
GeoGraphics[GeoPosition[{21.135, -11.4016}], 
 GeoBackground -> "ReliefMap", GeoProjection -> "Mercator", 
 GeoRange -> Quantity[100, "Miles"]]

There are three good videos on this guy’s youtube channel explaining. Here is the first: https://youtu.be/oDoM4BmoDQM

4 Likes

The reason for the formation of hydrogen sulfide in the Black Sea.

The wind waves enrich the water with oxygen only to a depth of several tens of meters of the seas and oceans surface, while the whirlpools deliver the water enriched with oxygen to a depth of more than 10 km. (Mariana Trench)
How does this happen:

The waters of the lakes, seas and oceans of the northern hemisphere rotate counterclockwise, and the waters of the southern hemisphere rotate clockwise, forming giant whirlpools. Ocean gyre - Wikipedia

As is known, everything that rotates, including whirlpools, has the property of a gyroscope (whirligig) to maintain the vertical position of the axis in space, regardless of the rotation of the Earth.

If you look at the Earth from the side of the Sun, the whirlpools, rotating with the Earth, overturn, due to which the whirlpools precess, resulting in a vertical movement of ocean water. http://goo.gl/AM5g1s

The presented theory can easily be verified by relation between the oxygen content and the whirlpools rotation speed.
Based on the map of the depths and currents of the seas and oceans.
The higher the current velocity, the greater the oxygen content and the lower the hydrogen sulfide content. https://youtu.be/ihM1I5r_MUg https://youtu.be/X6PavdKXIE8

List of seas with low oxygen content:
Black Sea. East of the Mediterranean. Gulf of Mexico. Norway fjords.
As we see, whirlpools are involved not only in the horizontal circulation of the sea and ocean waters, but also in the vertical. Dead zone (ecology) - Wikipedia What Causes Ocean "Dead Zones"? | Scientific American

The coefficient of oxygen content can be expressed mathematically by the following formula O = V / G
V - whirlpool rotation speed, km / h.
G - depth of the reservoir, km.
Black Sea 0.2 / 1200 = 0.00016
Sea of Okhotsk 1/800 = 0.0012

Vertical movement of ocean waters can be convincingly modeled using simple experience.
For this, a half-filled vessel with a rotating liquid (bucket, tumbler, mixer) must be rotated around itself (in orbit).
If the liquid in the bucket rotates to the right, the bucket around itself (in orbit) must be rotated to the left.

Continued. Forum. National Research Nuclear University MEPhI https://mephi.ru/communication/forum/talk/forum13/topic5498/messages/
Forum Federal Target Program “World Ocean” okeany.com for sale
Cambridge University Forum Login | Naked Science Forum