Monday, April 18, 2022

Wargame Simulating the Sinking of the Moskva

On 14 April, 2022, a pair of Ukrainian Neptune ASM missiles struck the Moskva, fatally wounding the flagship of the Russian Black Sea Fleet and leading to her demise hours later.* How is it that a warship fitted with an able and capable SAM system, CIWS (close in weapons system), in a war zone, can be knocked out with so little difficulty? Lets model this in CMO and see what it looks like.

“*” – Actual details murky, we’ll try to address that.

So how did we go from that?

To this?

First off some basics, the Moskva is old. 40 years old. In ship terms this is a life time. Most of her sensors are 70’s and 80’s era. The VLS system, visible between the super structure billowing smoke above, and the secondary structure with the radar, contains the potent S-300 SAM system. We’ve seen Ukraine use this to good effect as well as the Russians on land.

The specific details of this engagement are fuzzy. Was there only 2 Neptune’s? Or did only 2 strike? Was there a drone providing target information? Did the Russians even use the fire control radar or did these missiles strike without warning? Was there Grisha escorts that also fired on the incoming Neptune’s?

The Neptune is a Ukrainian upgrade/clone of the SSC-6 Bal, or KH-35. A max range of about 80 nautical miles delivers 145 kg of explosive and incendiary package just 30 ft above the sea.

Simulation Basics

First off, this is all in Command Modern Operations, check it out at Matrix Games. I’ve placed the Moskva barely within range of the Neptune as well as a Bayraktar TB2 drone nearby. Sea state is a 3, close to what the weather is supposed to have been. It’s night, and for our first run we’ll assume max technical competence.

So lets get the elephant in the room up front. Russia has been like an 800 lb Offensive Lineman who tied his shoelaces together and shit his pants. In the war game community we’ve assumed a certain threshold of competence. You have to assume your opponent is a threat, and a deadly one at that. Not until an event like this comes along would you think otherwise.

Really, go back a year ago, and if someone told you that the Russian Black Sea Flagship would get sunk by two untested ASM’s you’d call me nuts. But here we are.

For the first run I’m turning on all the radars, assuming base competence, and we’ll work backwards from there. The yellow ring is the surface sensor range, and the light blue circle is our detection range for a target coming in at 30 ft ASL.

Right as predicted we detect the incoming vampire. In this case the Top Dome (Fire Control Radar), Top Pair (Search Radar), and Top Steer (Search Radar) sensors.

At about 14nm the S-300 fires.

One Neptune is intercepted at 12nm out, the second at 5nm out. Even if a giant fireball erupted from the interception I’d say there’s almost no chance that any debris could strike the outboard missile tubes on the Moskva. I’ll call that one survival.

The OODA Loop

Now let’s simulate some incompetence!

The OODA loop is Observe, Orient, Decide, and Act. First we need to see the threat. Then we orient to it. Then we decide how to respond. Lastly we respond.


local a = ScenEdit_SelectedUnits()
print(a)
for k, v in pairs(a) do
    unitMoskva = (v[1].guid)
end
local unit = ScenEdit_GetUnit({guid=unitMoskva})
print(unit.OODA)


There’s a bit going on here, first I select the Moskva and run this. That’s the first line, it gets me the info on the selected unit. Then I pull out the ID from a table and get all the info. It spits out the OODA values, which gives us :


{ detection = 15, targeting = 8, evasion = 2 }


Targeting has the biggest impact in this test, as that’s the delay in how long it takes for our system to actually engage. Detection makes less difference as the radars or sensors do the work. Lastly evasion is not much of an issue as this is a boat. It’s slow.

So lets bump this up a bit. How about we double everything? All other variables remain the same. Radar is on. The radars detect the Neptune at about the same point, 18nm. This time the Neptune’s make it to within 4 nautical miles before being splashed.

Now we double it again, detection = 60, targeting = 32, and evasion = 8. Detection is at the same distance, 18 nm. But this time the SAM’s don’t respond until the Neptune’s are 6nm out. Both incoming missiles are splashed within 3 nm. Things are getting closer…

And now we double again.

At this point both Neptune’s hit without even a response from the Moskva. Based on our OODA values it took more than 64 seconds for the Moskva to orient, decide, and act. Interestingly at a 45 second targeting time the SA-N-4B Gecko was able to engage and destroy both missiles at roughly 1 mile out.

Unfortunately I can’t cripple the damage control response time like I can with the OODA loop, though you can spawn fires in specific systems should you so desire.

It’s worth mentioning that the Moskva could not detect the TB2 drone operating 20 nm away from the ship.

Competence is Overrated

But what if the radar was off? Or broken? Or maybe someone drank the coolant? Who knows what sort of shenanigans occur. If the radar is off, and the OODA loop is strong, can the Moskva survive?

Oof. Detection isn’t until the SIGINT package receives active radar warnings from the Neptune strike.

At 1800 meters the CIWS opens up.

A single Gecko strikes one of the missiles while the other dodges the antiquated CIWS to strike the Moskva.

Lastly I turn off the radar and increase the reaction time by 10 seconds. The Moskva gets the same active radar alert at 3 nm out.

This time there is no response from the Moskva. 10 seconds was the difference between a Gecko and the CIWS striking the targets. Was the radar operator pre-occupied hunting for a TB2 in the shadows? Did the command team lose focus and divert resources to a minor threat?

If you don’t disable radar sensors at a minimum, or even just change the OODA loop, the Moskva looks much more survivable. This base level of competence is our starting point, being able to granulate the details accordingly makes it interesting.

Summary Sinking

What we do know is it sunk.

Interesting point, forty years ago the Belgerano sunk. These are lessons that the US Navy paid in blood to learn. Just the journey from untested navy ’41 to damage control experts ’45 is amazing and still pays dividends today. Several US ships from the Stark to the Cole have suffered strikes in recent time and managed to survive through professionalism and hard core damage control.

The above is a great Twitter thread where they look at the probable strike locations. Of particular interest is the hit on what could be the Damage Control center.

Could this have been a poor response? The Neptune’s just flopped into the sea, and some Russian seaman dropped a cigarette down a hatch which landed on some oily rags, which ignited a wire, which… you get the idea. It could totally be a bad version of “give a mouse a cookie…” except it’s “give a Moskva a Neptune…”

On the front end to assume competence you’d have needed many more Neptune’s to saturate the Moskva. (Multiple launchers. 28+ missiles total)

Now knowing the end result we can work backwards, using the best info we have, and realize that the difference between survival and sinking is a matter of less than a minute with all systems operational or seconds if incompetence through kleptocracy, training failures, or maintenance faults renders your best warning tools inoperative.



from Hacker News https://ift.tt/BdkD0MF

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.