I only know that it depends on amount of units, equipment and kills.
Usually I get around 300-400k per hour with medium gear. Often more, double with a bigger fight and siege. In towns probably more.
In one siege I easily went above 1million xp in less than an hour.
I however don't exactly know if you can check how much xp you gain by maths or whatever. It probably always depends on the situation.