Definitely something I'll have a play with to at least understand the issues better ...
Very interesting information / thoughts / comments. I'm just quoting a tiny part, but very much with you on much of the rest. Needs much more than just a thread to sort it out and there are people there with the knowledge - just that they are constrained in all sorts of ways - financial, practical, administrative and political as well as there probably not being enough of them.
The head can end up hurting around some of the connectional issues on and off the TransWilts, and so much of the time it comes down to compromises and, yes, pathing of freight ... and of mainline trains on the tracks, and of crossover movements too where trains from Westbury onto and off the single line have to make that movement in a gap between main line trains coming the other way.
Starting with the 15:14 off Swindon. That train (or its near-equivalent) in the early days of the improved TransWilts services from 2014 was a "lemon" - a poor performer - and has been tweaked to make it, now, a good performer. In particular, it calls at Chippenham at a time that it can pick up educational traffic from there and it now arrives at Westbury making a perfect (when running to timetable) connection into the Portsmouth service. I am aware that it misses the timetabled service to Paignton by an irritatingly few minutes at Westbury - but running it 10 minutes earlier to make that connection would ...
* Miss the Chippenham education traffic
* Irritate the people heading on to Warminster and beyond due to extended connection
* Give a very tight turn around at Swindon off the incoming train
* Send the Swindon departure out very close (too close?) ahead of a Cardiff train
* Platforming changes at
WSB» needed as it arrives at the platform just vacated by PGN
* Tighten a connection from Cheltenham at Swindon and make it less reliable
* Cause an issue with 2 freight paths over the single line (not avail until 15:30)
... and I think it's probably a "do not touch" service, in spite of missing the train westwards at Westbury by an irritatingly short margin.
I have "majored" on the 15:14 simply because it's a case I know well. I could look at each other service. And we could do the same sort of thing on the Westbury to Weymouth service too. Noting that passengers from Chippenham and Melksham flow mainly towards Salisbury (at Westbury) and towards Bristol (from Melksham, at Trowbridge), the randomness of connections to Weymouth is to be regretted, but not prioritised in general (though they might be for day trip services) connections to the Heart of Wessex. Similarly passengers from Weymouth, Yeovil and Frome typically carry on to Bath and Bristol rather than to Chippenham and Swindon.
Now - those irritating service gaps of over 2 hours. The single train tootling up and down arrives in Swindon at 08:15 and on a 2 hour cycle would set off back at 08:30 ... later return trains at times like 14:30, 16:30 and 18:30 - so you would loose the 15:14 and the traffic that generates and the 17:36 for "9 to 5" folks returning home. I appreciate that post-pandemic "9 to 5" is especially reduced, but I don't like the idea of going 2 hour clockface on Monday to Friday. Add a second train into the cycle, a loop on the single line section, and we'll go clockface please - from Westbury at :16 into Swindon at :01, and from Swindon at :13 into Westbury at :58 ... that's a dynamic loop from just north of Melksham Station to Lacock or just short of Thingley Junction.