In example 8 :
if (fabs(curr_node(2)-z_coo) < TOLERANCE)
      // The global number of the respective degree of freedom.
      unsigned int dn = curr_node.dof_number(0,0,0);

      // The penalty parameter.
      const Real penalty = 1.e10;

the function dof_number(0,0,0) is unsigned int DofObject::dof_number(const unsigned int s, const unsigned int var, const unsigned int comp).  What is comp? Is it for parallel?
For example in 2D , the first defined variable is u, the second defined variable is v. If I want to set the boundary of v. Is it right that dof_number(0,1,0)?
Can libMesh read boundary information from input file? What is the format ? Is there some examples about it?
Can libMesh read all information from input file. Don't set the node boundary condition like in Example 8 manually.