Pas de bug...
Si tu as conservé le paramétrage d'origine des règles du trajet (libération au marqueur d'arrêt du canton suivant), c'est le comportement normal...
En effet, TC maintient la vitesse limitée tant que le canton qui porte la limitation n'est pas libéré, cela pour se conformer à la réalité...
Si le train ralenti dans C, c'est que tu as du mettre la limitation à 40 dans D... en effet, TC fait en sorte que la limitation de vitesse soit respectée dès l'entrée dans le canton limité, d'où le ralentissement dans le canton C pour attaqué D à 40.
Dans ce cas, il faut que la tête du train aie atteint le marqueur d'arrêt du canton E pour que la limitation de vitesse cesse, d'où la reprise de vitesse au début du canton F...
Avec des trains entièrement détectés, on peut choisir la "libération par occupation", ce qui permet une reprise plus rapide de la vitesse.
Autre solution avec les versions récentes de TC, constituer des rames en indiquant les longueurs du matériel remorqué
et en choisissant comme libération "après entrée complète du train", ainsi, même sans wagon détecté, la libération du canton précédent interviendra selon le calcul effectué par le logiciel en fonction des longueurs renseignées
et de la vitesse du train... il est bien sûr, impératif d'avoir fait le profil de vitesse avancé des locos pour avoir un résultat correct.