nunosempere.com/.secret/nuclear-2022-10.squiggle

46 lines
1.6 KiB
Plaintext
Raw Normal View History

2022-10-30 21:23:26 +00:00
// Helpers
ss(arr) = SampleSet.fromList(arr)
// Nuclear ukraine
rusiaUsesNuclearWeaponsInUkraine = ss([0.27, 0.04, 0.02, 0.001, 0.09, 0.08, 0.07])// <- fill-in
// Note that the period of time is left unspecified
// Nuclear NATO
escalationOutsideUkraineGivenUkraineWasNuked = ss([0.15, 0.09, 0.0013, 10^(-5), 0.01, 0.3, 0.05])// <- fill-in
escalationToNATOUnconditional = rusiaUsesNuclearWeaponsInUkraine *
escalationOutsideUkraineGivenUkraineWasNuked
// Nuclear NATO to nuclear London/Washington
bigUKUSCityNukedGivenEscalationOutsideUkraine = ss([0.4, 0.15, 0.9985, 0.05, 0.02, 0.002, 0.5])// <- fill-in
bigUKUSCityUnconditional = escalationToNATOUnconditional *
bigUKUSCityNukedGivenEscalationOutsideUkraine
// Impact in lost hours
remainlingLifeExpectancyInYears = 40 to 60 // <- change
daysInYear= 365
productiveHoursInDay = 6 to 18 // <- change
ableToEscapeBefore = 0.5// <- fill-in
proportionOfPeopleInLondonWhoDie = 0.7
expectedLostHours = bigUKUSCityUnconditional *
(1 - ableToEscapeBefore) *
proportionOfPeopleInLondonWhoDie *
remainlingLifeExpectancyInYears *
daysInYear *
productiveHoursInDay
// Probably good to also estimate idiosyncratic factors such as
// - Increased or decreased productivity in a city
// - Increased or decreased impact in a city
// - Value assigned to surviving in a world after a nuclear winter
// - ...
// Display
{
rusiaUsesNuclearWeaponsInUkraine: rusiaUsesNuclearWeaponsInUkraine,
escalationToNATOUnconditional: escalationToNATOUnconditional,
bigUKUSCityUnconditional: bigUKUSCityUnconditional,
expectedLostHours: expectedLostHours
}