There is a function which computes solution of adjoint problem: http://www.dolfin-adjoint.org/en/latest/documentation/api.html#dolfin_adjoint.compute_adjoint
J = Functional(inner(u, u)*dx*dt[FINISH_TIME])
for (variable, solution) in compute_adjoint(J):
But I need not only solution, but also its residual. So, I need adjoint equations. I thought it should be somewhere in adjointer class, but I grepped the source code and it seems there is no way to get it. I think I'm missing something, because how could dolfin adjoint find solution without forming the equations first? Or is those steps are hidden inside C library libadjoint?