Derived categories of partial flag varieties are interesting, and if you are not yet convinced of this claim, I refer you to Kuznetsov–Polishchuk, Exceptional collections on isotropic Grassmannians, which is what inspired me to make this statement.

In this paper they discuss partial flag varieties with respect to a maximal parabolic subgroup, as these are the cases necessary to understand the derived category of any partial flag variety. One of things I wondered about when I first looked at that paper is: how big are these partial flag varieties? This is just an easy exercise in the representation theory of algebraic groups, but I couldn't find them explicitly written up.

Maximal parabolic subgroups

We can specify a parabolic subgroup, by specifying a number of simple roots in the Dynkin diagram that we are adding to the Borel subgroup. In order to make it a maximal parabolic, we need to add all but 1 simple root. So take your favourite crayon, and fill all but one vertex of your favourite Dynkin diagram. You have now specified a maximal parabolic subgroup, which is well-defined up to conjugacy.

Dimension of partial flag varieties

We wish to determine ${\dim G}/{\dim P_i}$ for all $i$, where $i$ runs over the vertices in the Dynkin diagram. All this can be done by counting the roots in the root system. We have that $\dim G$ is the number of roots in the root system plus the rank (which accounts for the center). These numbers can be found in any table discussing properties of irreducible root systems, e.g. Wikipedia's table.

Next thing is we need to compute the dimension of the parabolic subgroup $P_i$. Again we need to count roots. We have that $B\subset P_i$. And $\dim B$ is the number of positive roots plus the rank. So we only need to count the number of negative roots which are added to construct $P_i$. Luckily, SAGE can easily do this for us.

def dimGB(D):
  dimG = len(D.root_system().root_poset()) * 2 + D.rank()
  dimB = len(D.root_system().root_poset()) + D.rank()
  return (dimG, dimB)

def dimension(D, T):
  return dimGB(D)[0] - dimGB(D)[1] - (dimGB(D.subtype(T))[0] - dimGB(D.subtype(T))[1])

To use this in the case of the Dynkin quiver of type $\mathrm{F}_4$, one does the following.

D = DynkinDiagram("F4")
for k in range(1, 4 + 1):
  print dimension(D, [r for r in D.vertices() if r != k])


If we apply this code to compute the dimensions of the partial flag varieties with respect to maximal parabolic subgroups, and take into account symmetries of the Dynkin diagram to remove some redundancy, we get the following result.

$P_1$ $P_2$ $P_3$ $P_4$ $P_5$ $P_6$ $P_7$ $P_8$
$\mathrm{A}_1$ 1
$\mathrm{A}_2$ 2
$\mathrm{A}_3$ 3 4
$\mathrm{A}_4$ 4 6
$\mathrm{A}_5$ 5 8 9
$\mathrm{A}_6$ 6 10 12
$\mathrm{A}_7$ 7 12 15 16
$\mathrm{B}_2=\mathrm{C}_2$ 3 3
$\mathrm{B}_3=\mathrm{C}_3$ 5 7 6
$\mathrm{B}_4=\mathrm{C}_4$ 7 11 12 10
$\mathrm{B}_5=\mathrm{C}_5$ 9 15 18 18 15
$\mathrm{B}_6=\mathrm{C}_6$ 11 19 24 26 25 15
$\mathrm{B}_7=\mathrm{C}_7$ 13 23 30 34 35 33 28
$\mathrm{D}_4$ 6 9
$\mathrm{D}_5$ 8 13 15 10
$\mathrm{D}_6$ 10 17 21 22 15
$\mathrm{D}_7$ 12 21 27 30 30 21
$\mathrm{E}_6$ 16 21 25 29
$\mathrm{E}_7$ 33 42 47 53 50 42 27
$\mathrm{E}_8$ 78 92 98 106 104 97 83 57
$\mathrm{F}_4$ 15 20 20 15
$\mathrm{G}_2$ 5 5