preconditioning for adjoint works