By explicit description I mean a description by explicit algebraic equations. What is the general method to find this in a situation in which you already know that the variety is projective by some other method, for instance by some major theorem whose internals you don't know, but took for granted?


I have two situations in mind:


$1$. The Grassmannian.


We have the Plucker embbedding:


$ \iota : \mathrm{Gr}\_{k}(K^n) \rightarrow \mathbb{P}(\wedge^k K^n) $


$\mathrm{span}( v\_1, \ldots, v\_k ) \mapsto K( v\_1 \wedge \cdots \wedge v\_k )$ 


By this we know that the Grassmannian is a closed analytic subspace of the projective space. Therefore we know that it is actually algebraic, by Chow's lemma. But how to explicitly describe the Grassmannian by equations?


$2$. Compact Riemann surfaces


We have some Riemann surface of arbitrary genus, for example given as a quotient of the upper half plane by some group. By some abstract theorem(Riemann-Roch??), we know that a Riemann surface can be embedded in the projective space as a closed subspace. And then again by Chow's lemma, it is actually algebraic. But the question remains how to compute explicit equations for this. Fortunately for elliptic curves we know the answer from Weierstrass theory. But what to do in the more general case?



How to determine explicit description for a projective variety?
Your two questions are actually very different. If you already have a map to projective space, all you want is to find the relations among the functions giving the map. If the functions are given in some explicit way, e.g. power series, then you can turn finding all relations of a given degree into a linear algebra problem and from there find all relations by, e.g. dimension considerations.


The hard question is to exhibit functions on your variety. For Riemann surfaces, we know they are there by the Riemann existence theorem (and Riemann-Roch). Exhibiting them is not automatic. For the case of quotients of the upper-half plane, there is a huge classical literature for example for constructing a Hauptmodul (when the surface has genus zero). So, e.g. writing down the j-function from scratch is not obvious. There are other techniques (Poincare series, ...). Maybe somebody who knows more about this will give a better answer.


Finally, there is no magic bullet to constructing functions, unless you specify how you are given the variety in the first place. You need to make your question more precise. 


