Influx of cold air into middle or lower latitudes.


Weather phenomenon that is distinguished by a rapid fall in temperature within a 24-hour period requiring substantially increased protection to agriculture, industry, commerce, and social activities.


Prerequisites


Atmosphere Present - No Trace Atmosphere


Hydrosphere: Any Than No Hydro


No Extreme Climate Present in Any Region


At Least one Polar Region with Climate Cold Arid, Periarctic, or Arctic


Triggering Probability (TP)


cT = departure pole region surface temperature modified by seasonal changes

sT = seasonal departure pole region surface temperature (not modified by seasonal changes, BUT calculated at the current day)


cT(deg) = cT - 273.15

sT(deg) = sT - 273.15

                 

If cT(deg) = 0 and sT(deg) = 0 then x = 0

else if cT(deg) = 0 and cT(deg) < sT(deg) then x = 1

else if sT(deg) < cT(deg) then x = 0

else x = ABS( ct(deg) / sT(deg) ) - 1


Departure Pole Region's Climate

ClimateCoef (cc)

VII: Cold Arid

0.7

VIII: Periarctic

0.9

IX: Arctic

1


y = x * cc * equinox


equinox: =0.65 if winter equinox   = 1 if winter solstice


If cT(deg) = 0 and sT(deg) = 0 then TP = 0

else if cT(deg) = 0 and cT(deg) < sT(deg) then TP = 100

else  TP = y * 100   rounded()


cc is stored into the region's RWE data structure and stay effective for the whole duration of the event.


Duration


d = time left in days until the next season


a = atmospheric pressure (in mb)


x = SQRT( d ) * cc


y = [ x * SQRT( a ) ] / 100



duration = round( y )


if duration = 0, then duration = 1


Scope


Requirements:


- current season must be winter equinox or winter solstice


- any Polar region only


- selected region surface temperature modified by seasonal changes must be <= 273.15K


- must have one of the following climates: VII Cold Arid, VIII Periarctic or IX Arctic (test this condition since it can be one pole of the two)


These requirements are only tested one time during the generation of the effects but aren't tested afterward.

All the affected region have their effect processed to the end.


Root Target Region Determination:


Determine which of the two poles are eligible.


If more than one; random selection ( 1 - 10 ) + round[ SQRT( current windspeed cW ) ]   the higher wins

If equals, take the colder cT

If equals ( 1 - 10 )  1..5  North Pole   6..10  South Pole


THE COLD WAVE DOESN'T AFFECT THE STARTING POLE, but will affect any region it passes on


The chosen region that pass the requirements above is submitted to a TP test.


No delay is set, in fact there is no generation since the root region isn't affected. But the Behavior and Spreading rules are immediately processed.


Behavior and Spreading:


1/ MaxLevel:


Total # Regions

MaxLevel

4 - 6 - 8 - 10

1

14 - 18 - 22 - 26 - 30

2



3/ NbLevels = 1 or if 2: rand( 1-10 ); 1-5 = 1  6-10 = 2


2/ Determination of first level affected region (flar):


MaxLatitudes:


Total # Regions

MaxLatitudes

4 - 6

2

8

3

10 - 14 - 18

4

22

5

26

6

30

7


From North Pole: flarIdx = rand( 1 - MaxLatitudes ) + 1


From South Pole: flarsIdx = SouthPoleIndex - ( MaxLatitudes - rand( 1 - MaxLatitudes ) +1 )


3/ No TP is made for the affected region, Cold Wave is applied automatically, as long the Compatibility is OK

Effects and Duration are applied for the region.


No delay is calculated for the first affected region since it is effective on the spot.


4/ If there is a second level here are the steps, only apply it if the max number of regions > 10. If not, there is only one region affected


a/ determination of the direction of the Cold Wave and determination of the second level affected region (slar):


West to East if the Rotation Period is positive:

slarIdx = Index At Relative Position from flarIdx( From South/North Pole North/South-East region )


East to West if the Rotation Period is negative:

slarIdx = Index At Relative Position from flarIdx( From South/North Pole North/South-West region )


b/ apply 3/ for the slar + Delay = duration of flar * 1/3 rounded   min 1


c/ determination of the direction of the Cold Wave and determination of the final affected region (finar):


finarIdx = Index At Relative Position from slarIdx( From South/North Pole South/North region )


d/ apply 3/ for the finar + Delay = duration of flar * 1/3 + delay of slar + duration of slar * 1/3   rounded min 1


Effects Rules


The effect is a more or less dramatic decrease of the surface temperature for the whole duration of the event:


when triggered, the intensity of the event is calculated as below:


cT(deg) = cT - 273.15

sT(deg) = sT - 273.15


If cT(deg) = 0 then delta = ( cT(deg) - sT(deg) ) * 0.1

else if sT(deg) = 0 then delta = cT(deg) * 0.1

else delta = cT(deg) / sT(deg)


If sT(deg) < 0 then v = cT(deg) - sT(deg)

else if cT(deg) < 0 then v = - (cT(deg) ) * 0.1

else v = - sT(deg)


x = delta * ( cc * 1.99992 ) * v


if x > 0

then maxIntensity = - ( x )

else maxIntensity = x


intensityByRand = maxIntensity * 0.1


w = random( 1-10 )


intensity = intensityByRand * w    rto - 2


base cold wave (bcw) = ( cT(deg) - sT(deg) ) + intensity


cW = current departure pole region windspeed modified by seasonal changes


aW = current affected region windspeed modified by seasonal changes


acT = current affected region surface temperature modified by seasonal changes


aminsT = current affected region minimum surface temperature (not modified by seasonal changes, raw data)


aminsT(deg) = aminsT - 273.15


cold wave cT = [ ( SQRT( aW ) * bcw ) / SQRT( cW ) ] + acT   rto -2


w  is stored into the region's RWE data structure and stay effective for the whole duration of the event.

aminsT is stored into the region's RWE data structure and stay effective for the whole duration of the event.


when the effect is updated, the whole trigger process described above is processed, since cT varies with seasonal changes and so cT and sT change after each day.

only the saved w  and aminsT data are reused.


Compatibility List


RWEs:


- Heat Wave


Effect Cancellation


RWE/Heat Wave


Cooldown [Local]


Max Cooldown = ( w / 20 ) * ( d - RWE duration )


if Max Cooldown > d, Max Cooldown = d


if Max Cooldown < 1, Max Cooldown = 1



if Max Cooldown = 1, Cooldown = 1

else:


CooldownByRandom = MaxCooldown / 100


Cooldown = random( 1 - 100 ) * CooldownByRandom    min always 1   rounded


The cooldown is applied only to the polar region and automatically once the affected regions are generated. The data used to calculate it comes from the last affected region.

Created with the Personal Edition of HelpNDoc: Full-featured Kindle eBooks generator