Let $\mathcal M$ be a moduli space of sheaves on a nice variety $X$, with fixed rank $r$ and Chern classes $c_i$, semi-stable with respect to an ample bundle $H$. Let $E$ be a "functorial" vector bundle on $\mathcal M$, for example, the tangent bundle or a bundle whose fiber over a point corresponding to a sheaf $F$ is $H^1(F)^{\oplus k}$. If the rank of $E$ is equal to the dimension of $\mathcal M$, then the top Chern class of $E$ is an integer, and I know three methods how to calculate it: rudely, they are to replace $\mathcal M$ by something larger, to replace it by something smaller or to vary it.

- A first method is to embed $\mathcal M$ into a large variety $\mathcal N$ whose cohomology ring is known. If $\mathcal M$ is the vanishing set of a section of a vector bundle $V$ on $\mathcal N$, and $E$ can be extended to $\mathcal N$, then the definition of Chern classes via degeneracy loci gives $$\int_{\mathcal M} c_{top}(\mathcal M, E)=\int_{\mathcal N} c_{top}(\mathcal N, E \oplus V).$$

For example, in my problem $X=\mathbb{CP^2}$, and one can embed $\mathcal M$ into the moduli space $\mathcal N$ of representations of a certain quiver, whose cohomology ring is computed in Franzen *Chow Rings of Fine Quiver Moduli are Tautologically Presented*, but is very difficult.

- A better method is to use Bott residue formula: on $X=\mathbb{CP}^2$ acts a torus $T=(\mathbb C^*)^2$, and its action descends to an action on $\mathcal M$. Then the top Chern class of $E$ may be calculated by restricting $E$ to the torus fixed points: $$\int_{\mathcal M} c_{top}(\mathcal M, E)=\sum_{\mathcal M_i \subset \mathcal M^T} \int_{\mathcal M_i} \frac{c_{top}^T (\mathcal M_i, E)}{c_{top}^T (\mathcal M_i, N_{\mathcal M_i} \mathcal M)},$$ where the sum on the right is taken over all components $\mathcal M_i$ of the torus fixed points, the Chern classes are computed in the equivariant cohomology $H^*_T(\mathcal M_i)$, and $N_{\mathcal M_i} \mathcal M$ is the normal bundle.

This method in the case when the torus fixed points are isolated is nicely explained in Ellingsrud, Strømme *Bott's formula and enumerative geometry*. It actually allows to calculate the top Chern class $a_{c_2}$ of a vector bundle with a fiber $H^1(F)^{\oplus 2r}$ on $\mathcal M=\mathcal M(\mathbb{CP}^2; r, c_1, c_2; \mathcal O_{\mathbb{CP}^2}(1))$, but the combinatorics which enumerates the components of the torus fixed points is quite complicated, so one can not find the generating function $\sum_{c_2 \in \mathbb Z} a_{c_2} t^{c_2}$.

- The last method is to change $X$ and to vary an ample bundle $H$. For example, one can consider a blow-up $\pi: \hat X \to X$ and find some connections between the moduli spaces $$\mathcal M(X; r, c_1, c_2; H) \text{ and } \mathcal M(\hat X; r, \pi^* c_1-mE, c_2; \pi^* H-mE),$$ where $X$ is a surface, $E$ is the exceptional divisor, and $m$ is an integer. If $X=\mathbb{CP}^2$, then $\hat X=\mathbb P(\mathcal O_{\mathbb{CP}^1} \oplus \mathcal O_{\mathbb{CP}^1}(1))$ is the first Hirzebruch surface. Similarly, one can make use of the fact that $\hat X$ is a ruled surface deforming $H'=\pi^*H-mE$ to a divisor of a fiber and replacing a moduli space again.

This is done in the case $E=T\mathcal M$, so that the top Chern class is the Euler characteristic, in Mozgovoy *Invariants of moduli spaces of stable sheaves on ruled surfaces*. A big advantage of this reduction is that it naturally deals with a generating function $\sum_{c_2 \in \mathbb Z} a_{c_2} t^{c_2}$ instead of its terms by themselves. Unfortunately, the formulas are quite difficult and I do not understand them yet, so I would not repeat them here.

Maybe, there is another interesting method how to calculate the top Chern class of a "functorial" vector bundle on a moduli space of sheaves?