If you had a train every 15 minutes, you'd really need a way to have the semi fasts overtake without going out on to the fasts. I have no idea how many loops might be needed, or the best location, but it might be just one?
If adding two loops at one station was too hard to fit, what about putting the loops in different locations?
In the off-peak periods, running the WGC 'stoppers' at 20min intervals (i.e. 3tph), and semi-fasts at 30min intervals (2tph) is, in my opinion, really dumb.
Given that a stopping train takes 21min from Finsbury Park to Potters Bar, and a semi-fast takes only 10mins on the same stretch, you will always have the problem of at least one of the semi-fasts 'catching up' a slower service if you do not use the fast line to overtake.
For example, if you do the logical thing and have your 1st semi-fast depart just ahead of your 1st stopper (to give it a clear path), you would have departures from FP at, say,
xx00 Semi-Fast1
xx05 Stopper1
xx25 Stopper2
xx30 Semi-Fast2
xx45 Stopper3
Whichever way you crunch the numbers, it is clear that it is the 2tph/3tph pattern itself that creates the need for use of the
fast line.
I'm assuming that the Welwyn Viaduct and lack of paths over it prevents the semi-fasts being increased to 3tph (which would remove the need to use the fast line between FP and PB).
Increasing the semi-fasts to 3tph and running one of them only as far as WGC (returning to KX on a similar semi-fast calling pattern) is also clearly undesirable, as Welwyn North and Knebworth would then have 2tph but spaced at intervals of 20min and then a wait of 40mins for the next one!
So my solution is this:
Increase the ex-Moorgate services on the WGC branch (and on the Hertford loop) to
4tph, but accelerate two of them by omitting calls at more lightly-used stations. My candidates for this would be Harringey, Hornsey, and Hadley Wood in the key FP-PB section, then Brookmans Park and Welham Green beyond there. Controversial, yes, but then again four of these stations have only 2tph at weekends and that seems to be sufficient.
I would envisage a pattern at Finsbury Park, once the Hertford Loop services are running on the 'ex-goods lines, to be something like:
xx06 stations on the Hertford loop, departing Platform 6 and using ex-goods line
xx11 Semi-fast to Cambridge, departing Platform 5
xx14 all-stations to WGC, departing Platform 6
xx21 stations on the Hertford loop, departing Platform 6 and using ex-goods line
xx29 limited-stops to WGC, departing Platform 6
xx36 stations on the Hertford loop, departing Platform 6 and using ex-goods line
xx41 Semi-fast to Peterborough, departing Platform 5
xx44 all-stations to WGC, departing Platform 6
xx51 limited-stops to WGC, departing Platform 6
stations on the Hertford loop, departing Platform 6 and using ex-goods line
xx59 limited-stops to WGC, departing Platform 6
Now, assuming omitting Harringey, Hornsey, and Hadley Wood accelerates those 2 stoppers by 3mins, trains would call at Potters Bar in the down direction thus:
xx21 Hatfield, WGC and stations to Cambridge
xx35 all stations to WGC
xx47 Hatfield and WGC only
xx51 Hatfield, WGC and stations to Peterborough
xx05 all stations to WGC
xx17 Hatfield and WGC only
No need to use down fast.
No semi-fasts crawling behind slows to WGC (due to 4min headway)
(Similar patterns would apply in the up direction)
Simples!