Q,G,H,R are alternative ways to specify boundary conditions for assempde() (static & linear case). Typically you would use them along with the matrix representations of the PDE coefficients such as: K,M,F.
pdenonlin doesn't read the matrix form. As to why one would use the matrix form even for linear cases, they are useful in some cases. I've used them for efficiently solving 4th order PDEs, applying periodic and other global BCs and also creating state space models.
for info on how to specify "b", check out http://www.mathworks.com/help/pde/ug/boundary-conditions-for-scalar-pde.html
Deepak