  Cross field generation is often used as the basis for the construction of
block-structured quadrangular meshes, and the field singularities have a key
impact on the structure of the resulting meshes. In this paper, we extend
Ginzburg-Landau cross field generation methods with a new formulation that
allows a user to impose inner singularities. The cross field is computed via
the optimization of a linear objective function with localized quadratic
constraints. This method consists in fixing singularities in small holes
drilled in the computational domain with specific degree conditions on their
boundaries, which leads to non-singular cross fields on the drilled domain. We
also propose a way to calculate the Ginzburg-Landau energy of these cross
fields on the perforated domain by solving a Neumann linear problem. This
energy converges to the energy of the Ginzburg-Landau functional as epsilon and
the radius of the holes tend to zero. To obtain insights concerning the sum of
the inner singularity degrees, we give: (i) an extension of the Ginzburg-Landau
energy to the piecewise smooth domain allowing to identify the positions and
degrees of the boundary singularities, and (ii) an interpretation of the
Poincar\'e-Hopf theorem focusing on internal singularities.
