Topology on the space of compatible almost complex structures in symplectic geometry I have a few fairly generic questions, with a specific application to symplectic geometry in mind. Let me pose the specific problem first:
Let a symplectic manifold $(M,\omega)$ be given. One is naturally led to consider the "space" $\mathcal{J}$ of almost complex structures compatible with $\omega.$ One then shows that this space is non-empty and contractible. Of course, this is really just a set until one equips it with a topology. My basic question is: what is this topology? I can think of one possibility, which rests on the apparent fact (stated without proof in Audin-Lafontaine) that one has a bundle $\mathcal{J}(\omega) \to M$ of compatible almost complex structures, with fiber $\mathcal{J}_p = \{ \text{complex structures of } T_pM \text{ compatible with } \omega_p \}.$ Our space $\mathcal{J}$ is then the space of sections of said bundle.
Working fiberwise, we can see that we have a bijection $\mathcal{J}_p \cong Sp_{2n}/U(n),$ so we could let $\mathcal{J}_p$ inherit the topology of that homogeneous space. Is there a natural way, then, to construct a topology on $\mathcal{J}$ using the topologies on the fibers $\mathcal{J}_p?$
More generally, is there a natural way to topologize the space of sections of a vector bundle that applies to this scenario?
Finally, how would one construct the bundle $\mathcal{J}(\omega)$ from the fibers and the base space? I suppose one could use the fiber bundle construction theorem, but then one would need specific transition maps.
 A: The space of smooth sections of a bundle is a subspace of the space of smooth maps from the base to the total space. The natural topology is then the subspace topology once we know how topologize the space of smooth maps between two smooth manifolds. There are many natural topologies on such a space, depending on how many derivatives you want to keep track of. The coarsest topology is the compact-open topology, on the space of continuous maps. The next trick is to embed the target manifold in some Euclidean space. Then you also have $C^k$-topology for each $k$ where you require uniform convergence on compacts of (all) the first $k$ partial derivatives. Lastly, you can also use the $C^\infty$-topology. 
A: The Darboux theorem allows us to choose a covering $\{(U_{\alpha},\phi_{\alpha})\}_{\alpha\in A}$ of $M$ by coordinate charts such that $\omega$ restricted to $U_{\alpha}$ is $\sum_{i=1}^{n} dx_{\alpha}^{i}\wedge dy_{\alpha}^{i}$ for local coordinates $(x_{\alpha}^{1},\dots,x_{\alpha}^{n},y_{\alpha}^{1},\dots,y_{\alpha}^{n})$ on $U_{\alpha}$ given by $\phi_{\alpha}$.
The idea is that instead of defining the topology on ${\cal J}$ in terms of the topologies on the fibers ${\cal J}_{p}$ for $p\in M$, we define the topology on ${\cal J}$ in terms of the topologies on the restriction of the bundle ${\cal J}$ to the various $U_{\alpha}$'s.
The restriction of ${\cal J}$ to $U_{\alpha}$ is, as a set, in bijection (via $\phi_{\alpha}$) with the set of all almost complex structures compatible with the standard symplectic form on $\mathbb{R}^n$. Now, assuming we have a suitable topology on the set of all almost complex structures compatible with the standard symplectic form on $\mathbb{R}^n$, we can define a unique topology on the restriction of the bundle ${\cal J}$ to $U_{\alpha}$ such that the bijection of the previous sentence is a homeomorphism. Finally, we can define $U\subseteq {\cal J}$ to be open (where ${\cal J}$ is the bundle of all almost complex structures on $M$) if the intersection of $U$ with the restriction of ${\cal J}$ to $U_{\alpha}$ is open for all $\alpha\in A$.
I leave it as an exercise to determine a suitable topology on the set of almost complex structures on $\mathbb{R}^n$ compatible with the standard symplectic form.
Note that the way I have defined the topology on ${\cal J}$ in this case is not at all dissimilar to the way topologies are defined on fiber (and vector bundles) in general. For example, take a look at "Vector Bundles and K-theory" by Allen Hatcher where he defines many constructions on vector bundles (such as the direct sum, tensor product etc.) - locally, this can be done just as above using suitable trivializations, and then one can pass to the global case also as I have done above.
Hope this helps!
