I was looking at the Python code and thinking about how to implement currents. I came to realize that it's not really necessary to implement the ocean currents themselves.
This map shows that the currents are clockwise in the northern hemisphere and counterclockwise in the southern hemisphere:
http://earth.usc.edu/~stott/Catalina/images/Oceanography/surface currents.jpg
But I figure the heat from the currents is transmitted by the winds as shown here:
http://www.atmosphere.mpg.de/media/archive/3352.gif
So it is transmitted by winds blowing from the southwest to the northeast in the northern hemisphere and from the northwest to the southeast in the southern hemisphere. This is for the latitudes between 30 and 60 where we see the effects of the gulf stream.
This results in the characteristic climate of northwestern Europe, the "pacific northwest" and southwestern Chile. But in the Pacific Northwest and Chile the effect is nerfed by the Rocky and Andes mountains respectively.
Thus we don't need to bother with currents. The effects of the currents can be implemented through the wind model. One just needs to make the winds blow from the southwest to the northeast between latitudes 45 and 65 north. But in reality, because of the distortions of the flat maps used by Civ we would need the winds blowing heat between around 55 and 75 north.
As I looked at the code of the tectonic map generator I noticed that this is already sort of included:
if (latitude > 65):
if (moisture < 15):
if (latitude <70):
if (self.dice.get(10,"Jagged tundra") > 7):
return self.terrainGrass
return self.terrainTundra
else:
return self.terrainGrass
This chunk is for latitudes 65-74. This is just what we need to move the effect to these latitudes because the maps in Civ are distorted due to the fact that they are flat. Anyhow, I figure this code uses the moisture placed by the winds. The moisture turns the tundra into grasslands, which is just what we are looking for at these latitudes.
The only matter is to ensure that the wind blows in the right direction and that the effect is weakened the farther inland the wind blows. The wind blowing from West to East may be a good enough approximation. From what I've been able to read, the wind in the tectonic generator alternates direction every 20 degrees of latitude. But I'm not sure which way its blowing between 50 and 70 degrees, nor between 70 and 90.
I'm also not sure if the winds add less and less moisture the farther inland that they go, as they should to simulate the correct effect. For instance, we want the effect in Southern Sweden but not in Moscow.
In any case, I just wanted to point out that it appears to me that the map generator is already very close to being able to generate the effect of the gulf stream and other such currents. It may only need very minor tweaking, unless I am missing something.